OTel
OTel Attributes
Attributes reserved for OpenTelemetry
| Attribute | Type | Description | Examples | Stability |
|---|---|---|---|---|
otel.span.parent.origin | string | Determines whether the span has a parent span, and if so, whether it is a remote parent | none; local; remote | |
otel.span.sampling_result | string | The result value of the sampler for this span | DROP; RECORD_ONLY; RECORD_AND_SAMPLE | |
otel.status_code | string | Name of the code, either “OK” or “ERROR”. MUST NOT be set if the status code is UNSET. | OK; ERROR | |
otel.status_description | string | Description of the Status if it has a value, otherwise not set. | resource not found |
otel.span.parent.origin has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used.
| Value | Description | Stability |
|---|---|---|
local | The span has a parent and the parent’s span context isRemote() is false | |
none | The span does not have a parent, it is a root span | |
remote | The span has a parent and the parent’s span context isRemote() is true |
otel.span.sampling_result has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used.
| Value | Description | Stability |
|---|---|---|
DROP | The span is not sampled and not recording | |
RECORD_AND_SAMPLE | The span is sampled and recording | |
RECORD_ONLY | The span is not sampled, but recording |
otel.status_code has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used.
| Value | Description | Stability |
|---|---|---|
ERROR | The operation contains an error. | |
OK | The operation has been validated by an Application developer or Operator to have completed successfully. |
OTel Component Attributes
Attributes used for OpenTelemetry component self-monitoring
| Attribute | Type | Description | Examples | Stability |
|---|---|---|---|---|
otel.component.name | string | A name uniquely identifying the instance of the OpenTelemetry component within its containing SDK instance. [1] | otlp_grpc_span_exporter/0; custom-name | |
otel.component.type | string | A name identifying the type of the OpenTelemetry component. [2] | batching_span_processor; com.example.MySpanExporter |
[1] otel.component.name: Implementations SHOULD ensure a low cardinality for this attribute, even across application or SDK restarts.
E.g. implementations MUST NOT use UUIDs as values for this attribute.
Implementations MAY achieve these goals by following a <otel.component.type>/<instance-counter> pattern, e.g. batching_span_processor/0.
Hereby otel.component.type refers to the corresponding attribute value of the component.
The value of instance-counter MAY be automatically assigned by the component and uniqueness within the enclosing SDK instance MUST be guaranteed.
For example, <instance-counter> MAY be implemented by using a monotonically increasing counter (starting with 0), which is incremented every time an
instance of the given component type is started.
With this implementation, for example the first Batching Span Processor would have batching_span_processor/0
as otel.component.name, the second one batching_span_processor/1 and so on.
These values will therefore be reused in the case of an application restart.
[2] otel.component.type: If none of the standardized values apply, implementations SHOULD use the language-defined name of the type.
E.g. for Java the fully qualified classname SHOULD be used in this case.
otel.component.type has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used.
| Value | Description | Stability |
|---|---|---|
batching_log_processor | The builtin SDK batching log record processor | |
batching_span_processor | The builtin SDK batching span processor | |
otlp_grpc_log_exporter | OTLP log record exporter over gRPC with protobuf serialization | |
otlp_grpc_metric_exporter | OTLP metric exporter over gRPC with protobuf serialization | |
otlp_grpc_span_exporter | OTLP span exporter over gRPC with protobuf serialization | |
otlp_http_json_log_exporter | OTLP log record exporter over HTTP with JSON serialization | |
otlp_http_json_metric_exporter | OTLP metric exporter over HTTP with JSON serialization | |
otlp_http_json_span_exporter | OTLP span exporter over HTTP with JSON serialization | |
otlp_http_log_exporter | OTLP log record exporter over HTTP with protobuf serialization | |
otlp_http_metric_exporter | OTLP metric exporter over HTTP with protobuf serialization | |
otlp_http_span_exporter | OTLP span exporter over HTTP with protobuf serialization | |
periodic_metric_reader | The builtin SDK periodically exporting metric reader | |
prometheus_http_text_metric_exporter | Prometheus metric exporter over HTTP with the default text-based format | |
simple_log_processor | The builtin SDK simple log record processor | |
simple_span_processor | The builtin SDK simple span processor | |
zipkin_http_span_exporter | Zipkin span exporter over HTTP |
OTel Scope Attributes
Attributes used by non-OTLP exporters to represent OpenTelemetry Scope’s concepts.
| Attribute | Type | Description | Examples | Stability |
|---|---|---|---|---|
otel.scope.name | string | The name of the instrumentation scope - (InstrumentationScope.Name in OTLP). | io.opentelemetry.contrib.mongodb | |
otel.scope.schema_url | string | The schema URL of the instrumentation scope. | /schemas/1.31.0 | |
otel.scope.version | string | The version of the instrumentation scope - (InstrumentationScope.Version in OTLP). | 1.0.0 |
Deprecated OTel Library Attributes
Describes deprecated otel.library attributes.
| Attribute | Type | Description | Examples | Stability |
|---|---|---|---|---|
otel.library.name | string | Deprecated. Use the otel.scope.name attribute | io.opentelemetry.contrib.mongodb | Replaced by otel.scope.name. |
otel.library.version | string | Deprecated. Use the otel.scope.version attribute. | 1.0.0 | Replaced by otel.scope.version. |
Feedback
Was this page helpful?
Thank you. Your feedback is appreciated!
Please let us know how we can improve this page. Your feedback is appreciated!