OTel
OTel 属性
为 OpenTelemetry 保留的属性
Attributes
| 键 | Stability | Value Type | 描述 | Example Values |
|---|---|---|---|---|
otel.span.parent.origin | 字符串 | 确定 span 是否有父 span,如果有,则确定 是否为远程父 span | none;local;remote | |
otel.span.sampling_result | 字符串 | 此 span 的采样器返回的结果值 | DROP;RECORD_ONLY;RECORD_AND_SAMPLE | |
otel.status_code | 字符串 | 代码名称,“OK”或“ERROR”。如果状态码为 UNSET,则 MUST NOT 设置。 | OK;ERROR | |
otel.status_description | 字符串 | 状态的描述,如果存在则显示,否则不设置。 | 未找到资源 |
otel.span.parent.origin 具有以下已知值列表。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
local | span 具有父 span,并且父 span 的 span context isRemote() 返回 false | |
无 | span 没有父 span,它是根 span | |
remote | span 具有父 span,并且父 span 的 span context isRemote() 返回 true |
otel.span.sampling_result 具有以下已知值列表。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
DROP | span 未采样且不记录 | |
RECORD_AND_SAMPLE | span 已采样且正在记录 | |
RECORD_ONLY | span 未采样,但正在记录 |
otel.status_code 具有以下已知值列表。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
ERROR | 操作包含错误。 | |
OK | 应用程序开发人员或操作员已验证操作成功完成。 |
OTel 组件属性
用于 OpenTelemetry 组件自我监控的属性
Attributes
| 键 | Stability | Value Type | 描述 | Example Values |
|---|---|---|---|---|
otel.component.name | 字符串 | 唯一标识 OpenTelemetry 组件实例在其包含的 SDK 实例内的名称。[1] | otlp_grpc_span_exporter/0;custom-name | |
otel.component.type | 字符串 | 标识 OpenTelemetry 组件类型的名称。[2] | batching_span_processor;com.example.MySpanExporter |
[1] otel.component.name: 实现应确保此属性的基数较低,即使在应用程序或 SDK 重启时也是如此。例如,实现不能使用 UUID 作为此属性的值。
实现可以通过遵循 <otel.component.type>/<instance-counter> 模式来实现这些目标,例如 batching_span_processor/0。其中 otel.component.type 指的是组件的相应属性值。
instance-counter 的值可以由组件自动分配,并且必须保证在包含的 SDK 实例内具有唯一性。例如,<instance-counter> 可以通过使用单调递增的计数器(从 0 开始)来实现,该计数器在给定组件类型的实例启动时递增。
通过这种实现,例如第一个 Batching Span Processor 的 otel.component.name 将是 batching_span_processor/0,第二个是 batching_span_processor/1,依此类推。因此,在应用程序重启时,这些值将得以重用。
[2] otel.component.type: 如果没有标准值适用,实现应使用该类型的语言定义的名称。例如,对于 Java,在这种情况下应使用完全限定的类名。
otel.component.type 具有以下已知值列表。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
batching_log_processor | 内置 SDK 批处理日志记录处理器 | |
batching_span_processor | 内置 SDK 批处理 span 处理器 | |
otlp_grpc_log_exporter | 通过 gRPC 进行 OTLP 日志记录导出,使用 protobuf 序列化 | |
otlp_grpc_metric_exporter | 通过 gRPC 进行 OTLP 指标导出,使用 protobuf 序列化 | |
otlp_grpc_span_exporter | 通过 gRPC 进行 OTLP span 导出,使用 protobuf 序列化 | |
otlp_http_json_log_exporter | 通过 HTTP 进行 OTLP 日志记录导出,使用 JSON 序列化 | |
otlp_http_json_metric_exporter | 通过 HTTP 进行 OTLP 指标导出,使用 JSON 序列化 | |
otlp_http_json_span_exporter | 通过 HTTP 进行 OTLP span 导出,使用 JSON 序列化 | |
otlp_http_log_exporter | 通过 HTTP 进行 OTLP 日志记录导出,使用 protobuf 序列化 | |
otlp_http_metric_exporter | 通过 HTTP 进行 OTLP 指标导出,使用 protobuf 序列化 | |
otlp_http_span_exporter | 通过 HTTP 进行 OTLP span 导出,使用 protobuf 序列化 | |
periodic_metric_reader | 内置 SDK 定期导出指标的读取器 | |
prometheus_http_text_metric_exporter | 通过 HTTP 进行 Prometheus 指标导出,使用默认的文本格式 | |
simple_log_processor | 内置 SDK 简单日志记录处理器 | |
simple_span_processor | 内置 SDK 简单 span 处理器 | |
zipkin_http_span_exporter | 通过 HTTP 进行 Zipkin span 导出 |
OTel 作用域属性
非 OTLP 导出器用于表示 OpenTelemetry 作用域概念的属性。
Attributes
| 键 | Stability | Value Type | 描述 | Example Values |
|---|---|---|---|---|
otel.scope.name | 字符串 | Instrumentation Scope 的名称 - (OTLP 中的 InstrumentationScope.Name)。 | io.opentelemetry.contrib.mongodb | |
otel.scope.schema_url | 字符串 | Instrumentation Scope 的模式 URL。 | /schemas/1.31.0 | |
otel.scope.version | 字符串 | Instrumentation Scope 的版本 - (OTLP 中的 InstrumentationScope.Version)。 | 1.0.0 |
已弃用的 OTel 库属性
描述已弃用的 otel.library 属性。
Attributes
| 键 | Stability | Value Type | 描述 | Example Values |
|---|---|---|---|---|
otel.library.name | 已替换为 otel.scope.name。 | 字符串 | 已弃用。请使用 otel.scope.name 属性 | io.opentelemetry.contrib.mongodb |
otel.library.version | 已替换为 otel.scope.version。 | 字符串 | 已弃用。请使用 otel.scope.version 属性。 | 1.0.0 |