非 OTLP 日志格式中的 Trace Context
状态: 稳定
概述
OTLP 日志记录包含表示跟踪上下文的顶级字段。本文档定义了在非 OTLP 日志格式中应如何记录跟踪上下文。总而言之,以下字段名称应在旧格式中使用:
- “trace_id”对应TraceId,小写并进行十六进制编码。
- “span_id”对应SpanId,小写并进行十六进制编码。
- “trace_flags”对应跟踪标志,根据 W3C traceflags 格式进行格式化。
所有 3 个字段都是可选的(有关字段组合被视为有效的信息,请参阅数据模型)。
Syslog RFC5424
Trace id、span id 和 traceflags 应通过 SD-ID “opentelemetry”进行记录。
例如
[opentelemetry trace_id="102981abcd2901" span_id="abcdef1010" trace_flags="01"]
纯文本格式
字段应按照特定格式的惯用方法进行记录(例如,LTSV 的 field:value 格式)。例如:
host:192.168.0.1<TAB>trace_id:102981abcd2901<TAB>span_id:abcdef1010<TAB>time:[01/Jan/2010:10:11:23 -0400]<TAB>req:GET /health HTTP/1.0<TAB>status:200
JSON 格式
字段应作为 JSON 结构中的顶级字段进行记录。例如:
{
"timestamp":1581385157.14429,
"body":"Incoming request",
"trace_id":"102981abcd2901",
"span_id":"abcdef1010"
}
其他结构化格式
字段应作为日志记录的顶级结构化属性进行记录,这对于特定格式来说是惯用的。