Semantic conventionsv1.41.0
since v1.40.01 breaking58 notable95 editorial
From the upstream release notes
- gen-ai: Execute tool call requires the name of the tool used for span naming.
- graphql: Change graphql.document attribute requirement level from Recommended to Opt-In due to sensitive data, cardinality, and size concerns
- process: Move process.executable to its own entity.
- process: Update requirement levels for process attributes to ensure consistent identification and description across platforms.
- rpc: Remove client.address and client.port attributes from RPC server spans. (#3487, #3488)
- Go: Add opt-in go.memory.gc.pause.duration histogram metric.
- cicd: Clarify that cicd.pipeline.task.run.id must be unique within a pipeline run.
- configuration: Defined declarative configuration for semantic convention version selection.
- configuration: Clarify that the experimental flag should not be used to gate incomplete implementations of stable convention versions.
- db: Include db.system.name value changes in database migration guide.
Breaking1
Changes to definitions the project had already marked stable or release candidate.
- typeattributedeployment.environment.nameType changed from
stringtoenum.
Notable58
- renamedmetrick8s.container.cpu.limitRenamed to
k8s.container.cpu.limit.desired. - renamedmetrick8s.container.cpu.limit_utilizationRenamed to
k8s.container.cpu.limit.utilization. - renamedmetrick8s.container.cpu.requestRenamed to
k8s.container.cpu.request.desired. - renamedmetrick8s.container.cpu.request_utilizationRenamed to
k8s.container.cpu.request.utilization. - renamedmetrick8s.container.memory.limitRenamed to
k8s.container.memory.limit.desired. - renamedmetrick8s.container.memory.requestRenamed to
k8s.container.memory.request.desired. - stabilityattributecontainer.idPromoted to release_candidate.
- stabilityattributecontainer.image.namePromoted to release_candidate.
- stabilityattributecontainer.image.repo_digestsPromoted to release_candidate.
- stabilityattributecontainer.image.tagsPromoted to release_candidate.
- stabilityattributedeployment.environment.namePromoted to stable.
- stabilitysignalentity.telemetry.distroPromoted to stable.
- stabilityattributek8s.cluster.namePromoted to release_candidate.
- stabilityattributek8s.cluster.uidPromoted to release_candidate.
- stabilityattributek8s.container.namePromoted to release_candidate.
- stabilityattributek8s.container.restart_countPromoted to release_candidate.
- stabilityattributek8s.cronjob.annotationPromoted to release_candidate.
- stabilityattributek8s.cronjob.labelPromoted to release_candidate.
- stabilityattributek8s.cronjob.namePromoted to release_candidate.
- stabilityattributek8s.cronjob.uidPromoted to release_candidate.
- stabilityattributek8s.daemonset.annotationPromoted to release_candidate.
- stabilityattributek8s.daemonset.labelPromoted to release_candidate.
- stabilityattributek8s.daemonset.namePromoted to release_candidate.
- stabilityattributek8s.daemonset.uidPromoted to release_candidate.
- stabilityattributek8s.deployment.annotationPromoted to release_candidate.
- stabilityattributek8s.deployment.labelPromoted to release_candidate.
- stabilityattributek8s.deployment.namePromoted to release_candidate.
- stabilityattributek8s.deployment.uidPromoted to release_candidate.
- stabilityattributek8s.job.annotationPromoted to release_candidate.
- stabilityattributek8s.job.labelPromoted to release_candidate.
- stabilityattributek8s.job.namePromoted to release_candidate.
- stabilityattributek8s.job.uidPromoted to release_candidate.
- stabilityattributek8s.namespace.annotationPromoted to release_candidate.
- stabilityattributek8s.namespace.labelPromoted to release_candidate.
- stabilityattributek8s.namespace.namePromoted to release_candidate.
- stabilityattributek8s.node.annotationPromoted to release_candidate.
- stabilityattributek8s.node.labelPromoted to release_candidate.
- stabilityattributek8s.node.namePromoted to release_candidate.
- stabilityattributek8s.node.uidPromoted to release_candidate.
- stabilityattributek8s.pod.annotationPromoted to release_candidate.
- stabilityattributek8s.pod.hostnamePromoted to release_candidate.
- stabilityattributek8s.pod.ipPromoted to release_candidate.
- stabilityattributek8s.pod.labelPromoted to release_candidate.
- stabilityattributek8s.pod.namePromoted to release_candidate.
- stabilityattributek8s.pod.start_timePromoted to release_candidate.
- stabilityattributek8s.pod.uidPromoted to release_candidate.
- stabilityattributek8s.replicaset.annotationPromoted to release_candidate.
- stabilityattributek8s.replicaset.labelPromoted to release_candidate.
- stabilityattributek8s.replicaset.namePromoted to release_candidate.
- stabilityattributek8s.replicaset.uidPromoted to release_candidate.
- stabilityattributek8s.statefulset.annotationPromoted to release_candidate.
- stabilityattributek8s.statefulset.labelPromoted to release_candidate.
- stabilityattributek8s.statefulset.namePromoted to release_candidate.
- stabilityattributek8s.statefulset.uidPromoted to release_candidate.
- stabilityattributeotel.event.namePromoted to stable.
- stabilityattributetelemetry.distro.namePromoted to stable.
- stabilityattributetelemetry.distro.versionPromoted to stable.
- enumattributedeployment.environment.nameEnum members changed (0 to 4).
Editorial95
- enumattributegen_ai.operation.nameEnum members changed (8 to 9).
- addedsignalentity.k8s.node.system_containerA Kubernetes Node System Container.
- addedsignalentity.k8s.persistentvolumeA Kubernetes PersistentVolume object.
- addedsignalentity.k8s.persistentvolumeclaimA Kubernetes PersistentVolumeClaim object.
- addedsignalentity.process.executableThe executable of a process.
- addedsignalevent.faas.invocation.exceptionThis event represents an exception that occurred during FaaS function invocation, such as application errors, internal failures, or other exceptions that preve...
- addedsignalevent.gen_ai.client.operation.exceptionThis event represents an exception that occurred during a Generative AI client operation, such as API errors, rate limiting, model errors, timeouts, or other e...
- addedsignalevent.messaging.create.exceptionThis event represents an exception that occurred during a messaging create operation.
- addedsignalevent.messaging.process.exceptionThis event represents an exception that occurred during messaging process operations.
- addedsignalevent.messaging.receive.exceptionThis event represents an exception that occurred during a messaging receive operation.
- addedsignalevent.messaging.send.exceptionThis event represents an exception that occurred during a messaging send operation.
- addedsignalevent.messaging.settle.exceptionThis event represents an exception that occurred during a messaging settle operation.
- addedmetricgen_ai.client.operation.time_per_output_chunkTime per output chunk, recorded for each chunk received after the first one, measured as the time elapsed from the end of the previous chunk to the end of the ...
- addedmetricgen_ai.client.operation.time_to_first_chunkTime to receive the first chunk, measured from when the client issues the generation request to when the first chunk is received in the response stream.
- addedattributegen_ai.request.streamIndicates whether the GenAI request was made in streaming mode.
- addedattributegen_ai.response.time_to_first_chunkTime to first chunk in a streaming response, measured from request issuance, in seconds. The value is measured from when the client issues the generation reque...
- addedattributegen_ai.usage.reasoning.output_tokensThe number of output tokens used for reasoning (e.g. chain-of-thought, extended thinking).
- addedattributegen_ai.workflow.nameHuman-readable name of the GenAI workflow provided by the application.
- addedattributego.cpu.detailed_stateThe detailed state of the CPU.
- addedattributego.cpu.stateThe state of the CPU.
- addedmetricgo.cpu.timeEstimated CPU time spent by the Go runtime.
- addedattributego.memory.detailed_typeThe detailed type of memory.
- addedmetricgo.memory.gc.cyclesNumber of completed GC cycles.
- addedmetricgo.memory.gc.pause.durationDistribution of individual GC-related stop-the-world pause latencies. This is the time from deciding to stop the world until the world is started again.
- addedmetrick8s.container.cpu.limit.currentMaximum CPU resource limit currently configured for a running container.
- addedmetrick8s.container.cpu.limit.desiredMaximum CPU resource limit as defined by the container spec.
- addedmetrick8s.container.cpu.limit.utilizationThe ratio of container CPU usage to its current CPU limit.
- addedmetrick8s.container.cpu.request.currentCPU resource requested currently configured for a running container.
- addedmetrick8s.container.cpu.request.desiredCPU resource requested as defined by the container spec.
- addedmetrick8s.container.cpu.request.utilizationThe ratio of container CPU usage to its current CPU request.
- addedmetrick8s.container.memory.limit.currentMaximum memory resource limit currently configured for a running container.
- addedmetrick8s.container.memory.limit.desiredMaximum memory resource limit as defined by the container spec.
- addedmetrick8s.container.memory.request.currentMemory resource request currently configured for a running container.
- addedmetrick8s.container.memory.request.desiredMemory resource requested as defined by the container spec.
- addedmetrick8s.node.system_container.cpu.timeNode's system container CPU time.
- addedmetrick8s.node.system_container.cpu.usageNode's system container CPU usage, measured in cpus.
- addedmetrick8s.node.system_container.memory.usageNode's system container memory usage.
- addedmetrick8s.node.system_container.memory.working_setThe amount of working set memory.
- addedattributek8s.node.system_container.nameThe name of the system container running on the K8s Node.
- addedattributek8s.persistentvolume.annotationThe annotation placed on the PersistentVolume, the
<key>being the annotation name, the value being the annotation value, even if the value is empty. - addedattributek8s.persistentvolume.labelThe label placed on the PersistentVolume, the
<key>being the label name, the value being the label value, even if the value is empty. - addedattributek8s.persistentvolume.nameThe name of the PersistentVolume.
- addedattributek8s.persistentvolume.reclaim_policyThe reclaim policy of the PersistentVolume.
- addedattributek8s.persistentvolume.status.phaseThe phase of the PersistentVolume.
- addedmetrick8s.persistentvolume.status.phaseNumber of PersistentVolumes in a given phase.
- addedmetrick8s.persistentvolume.storage.capacityThe storage capacity of the PersistentVolume.
- addedattributek8s.persistentvolume.uidThe UID of the PersistentVolume.
- addedattributek8s.persistentvolumeclaim.annotationThe annotation placed on the PersistentVolumeClaim, the
<key>being the annotation name, the value being the annotation value, even if the value is empty. - addedattributek8s.persistentvolumeclaim.labelThe label placed on the PersistentVolumeClaim, the
<key>being the label name, the value being the label value, even if the value is empty. - addedattributek8s.persistentvolumeclaim.nameThe name of the PersistentVolumeClaim.
- addedattributek8s.persistentvolumeclaim.status.phaseThe phase of the PersistentVolumeClaim.
- addedmetrick8s.persistentvolumeclaim.status.phaseNumber of PersistentVolumeClaims in a given phase.
- addedmetrick8s.persistentvolumeclaim.storage.capacityThe actual storage capacity provisioned for the PersistentVolumeClaim.
- addedmetrick8s.persistentvolumeclaim.storage.requestThe storage requested by the PersistentVolumeClaim.
- addedattributek8s.persistentvolumeclaim.uidThe UID of the PersistentVolumeClaim.
- addedsignalspan.gen_ai.invoke_agent.internalDescribes GenAI agent invocation within the same process.
- addedsignalspan.gen_ai.invoke_workflow.internalRepresents an operation that executes a coordinated process composed of multiple agents or other operations involving generative AI.
- addedmetricsystem.memory.linux.hugepages.limitTotal number of hugepages available.
- addedmetricsystem.memory.linux.hugepages.page_sizeSystem hugepage size in bytes.
- addedmetricsystem.memory.linux.hugepages.reservedNumber of reserved hugepages.
- addedattributesystem.memory.linux.hugepages.stateThe Linux HugePages memory state
- addedmetricsystem.memory.linux.hugepages.surplusNumber of surplus hugepages.
- addedmetricsystem.memory.linux.hugepages.usageNumber of hugepages in use by state.
- addedmetricsystem.memory.linux.hugepages.utilizationPercentage of hugepages in use by state.
- addedmetricv8js.resource.activeGauge of the active resources that are currently keeping the event loop alive.
- addedattributev8js.resource.typeThe type of resource keeping the event loop active.
- guidanceattributecicd.pipeline.task.run.idGuidance note changed.
- guidanceattributeerror.typeGuidance note changed.
- guidanceattributeexception.typeGuidance note changed.
- guidanceattributegen_ai.tool.definitionsGuidance note changed.
- guidanceattributegraphql.documentGuidance note changed.
- guidancemetrick8s.container.cpu.limitGuidance note changed.
- guidancemetrick8s.container.cpu.limit_utilizationGuidance note changed.
- guidancemetrick8s.container.cpu.requestGuidance note changed.
- guidancemetrick8s.container.memory.limitGuidance note changed.
- guidancemetrick8s.container.memory.requestGuidance note changed.
- guidancemetricnodejs.eventloop.delay.maxGuidance note changed.
- guidancemetricnodejs.eventloop.delay.meanGuidance note changed.
- guidancemetricnodejs.eventloop.delay.minGuidance note changed.
- guidancemetricnodejs.eventloop.delay.p50Guidance note changed.
- guidancemetricnodejs.eventloop.delay.p90Guidance note changed.
- guidancemetricnodejs.eventloop.delay.p99Guidance note changed.
- guidancemetricnodejs.eventloop.delay.stddevGuidance note changed.
- guidanceattributeprocess.executable.build_id.htlhashGuidance note changed.
- guidanceattributeservice.nameGuidance note changed.
- guidancesignalspan.cicd.pipeline.run.serverGuidance note changed.
- guidancesignalspan.db.clientGuidance note changed.
- guidancesignalspan.gen_ai.inference.clientGuidance note changed.
- guidancesignalspan.gen_ai.invoke_agent.clientGuidance note changed.
- wordingattributeaws.lambda.resource_mapping.idThe UUID of the AWS Lambda EvenSource Mapping. An...
- wordingattributeaws.secretsmanager.secret.arnThe ARN of the Secret stored in the Secrets Manager
- wordingattributecontainer.runtime.descriptionA description about the runtime which could include, for example details about the CRI/API version being used or other customizations.
- wordingattributehw.battery.capacityDesign capacity in Watts-hours or Ampere-hours
- wordingmetrick8s.container.cpu.request_utilizationDeprecated, use
k8s.container.cpu.request.utilizationinstead. - wordingmetricprocess.cpu.timeTotal CPU seconds broken down by different CPU modes.