diff --git a/.chloggen/promoto_k8s_attr_toalpha.yaml b/.chloggen/promoto_k8s_attr_toalpha.yaml
new file mode 100644
index 0000000000..177fa338d7
--- /dev/null
+++ b/.chloggen/promoto_k8s_attr_toalpha.yaml
@@ -0,0 +1,24 @@
+# Use this changelog template to create an entry for release notes.
+#
+# If your change doesn't affect end users you should instead start
+# your pull request title with [chore] or use the "Skip Changelog" label.
+
+# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
+change_type: enhancement
+
+# The name of the area of concern in the attributes-registry, (e.g. http, cloud, db)
+component: k8s
+
+# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
+note: Promote a selection of k8s and container attributes to alpha
+
+# Mandatory: One or more tracking issues related to the change. You can use the PR number here if no issue exists.
+# The values here must be integers.
+issues: [3120]
+
+# (Optional) One or more lines of additional information to render under the primary note.
+# These lines will be padded with 2 spaces and then inserted directly into the document.
+# Use pipe (|) for multiline entries.
+subtext: |
+ The selected attributes being promoted are used by the Collector Contrib components
+ that are targeting stability: https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/44130
diff --git a/docs/registry/attributes/container.md b/docs/registry/attributes/container.md
index 8c506bc53e..4338593a68 100644
--- a/docs/registry/attributes/container.md
+++ b/docs/registry/attributes/container.md
@@ -19,11 +19,11 @@ A container instance.
| `container.command_line` |  | string | The full command run by the container as a single string representing the full command. | `otelcontribcol --config config.yaml` |
| `container.csi.plugin.name` |  | string | The name of the CSI ([Container Storage Interface](https://github.com/container-storage-interface/spec)) plugin used by the volume. [2] | `pd.csi.storage.gke.io` |
| `container.csi.volume.id` |  | string | The unique volume ID returned by the CSI ([Container Storage Interface](https://github.com/container-storage-interface/spec)) plugin. [3] | `projects/my-gcp-project/zones/my-gcp-zone/disks/my-gcp-disk` |
-| `container.id` |  | string | Container ID. Usually a UUID, as for example used to [identify Docker containers](https://docs.docker.com/engine/containers/run/#container-identification). The UUID might be abbreviated. | `a3bf90e006b2` |
+| `container.id` |  | string | Container ID. Usually a UUID, as for example used to [identify Docker containers](https://docs.docker.com/engine/containers/run/#container-identification). The UUID might be abbreviated. | `a3bf90e006b2` |
| `container.image.id` |  | string | Runtime specific image identifier. Usually a hash algorithm followed by a UUID. [4] | `sha256:19c92d0a00d1b66d897bceaa7319bee0dd38a10a851c60bcec9474aa3f01e50f` |
-| `container.image.name` |  | string | Name of the image the container was built on. | `gcr.io/opentelemetry/operator` |
-| `container.image.repo_digests` |  | string[] | Repo digests of the container image as provided by the container runtime. [5] | `["example@sha256:afcc7f1ac1b49db317a7196c902e61c6c3c4607d63599ee1a82d702d249a0ccb", "internal.registry.example.com:5000/example@sha256:b69959407d21e8a062e0416bf13405bb2b71ed7a84dde4158ebafacfa06f5578"]` |
-| `container.image.tags` |  | string[] | Container image tags. An example can be found in [Docker Image Inspect](https://docs.docker.com/reference/api/engine/version/v1.52/#tag/Image/operation/ImageInspect). Should be only the `` section of the full name for example from `registry.example.com/my-org/my-image:`. | `["v1.27.1", "3.5.7-0"]` |
+| `container.image.name` |  | string | Name of the image the container was built on. | `gcr.io/opentelemetry/operator` |
+| `container.image.repo_digests` |  | string[] | Repo digests of the container image as provided by the container runtime. [5] | `["example@sha256:afcc7f1ac1b49db317a7196c902e61c6c3c4607d63599ee1a82d702d249a0ccb", "internal.registry.example.com:5000/example@sha256:b69959407d21e8a062e0416bf13405bb2b71ed7a84dde4158ebafacfa06f5578"]` |
+| `container.image.tags` |  | string[] | Container image tags. An example can be found in [Docker Image Inspect](https://docs.docker.com/reference/api/engine/version/v1.52/#tag/Image/operation/ImageInspect). Should be only the `` section of the full name for example from `registry.example.com/my-org/my-image:`. | `["v1.27.1", "3.5.7-0"]` |
| `container.label.` |  | string | Container labels, `` being the label name, the value being the label value. [6] | `nginx` |
| `container.name` |  | string | Container name used by container runtime. | `opentelemetry-autoconf` |
| `container.runtime.description` |  | string | A description about the runtime which could include, for example details about the CRI/API version being used or other customisations. | `docker://19.3.1 - CRI: 1.22.0` |
diff --git a/docs/registry/attributes/k8s.md b/docs/registry/attributes/k8s.md
index ac30cf3c6b..ea112114e3 100644
--- a/docs/registry/attributes/k8s.md
+++ b/docs/registry/attributes/k8s.md
@@ -14,25 +14,25 @@ Kubernetes resource attributes.
| Key | Stability | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- |
-| `k8s.cluster.name` |  | string | The name of the cluster. | `opentelemetry-cluster` |
-| `k8s.cluster.uid` |  | string | A pseudo-ID for the cluster, set to the UID of the `kube-system` namespace. [1] | `218fc5a9-a5f1-4b54-aa05-46717d0ab26d` |
-| `k8s.container.name` |  | string | The name of the Container from Pod specification, must be unique within a Pod. Container runtime usually uses different globally unique name (`container.name`). | `redis` |
-| `k8s.container.restart_count` |  | int | Number of times the container was restarted. This attribute can be used to identify a particular container (running or stopped) within a container spec. | |
+| `k8s.cluster.name` |  | string | The name of the cluster. | `opentelemetry-cluster` |
+| `k8s.cluster.uid` |  | string | A pseudo-ID for the cluster, set to the UID of the `kube-system` namespace. [1] | `218fc5a9-a5f1-4b54-aa05-46717d0ab26d` |
+| `k8s.container.name` |  | string | The name of the Container from Pod specification, must be unique within a Pod. Container runtime usually uses different globally unique name (`container.name`). | `redis` |
+| `k8s.container.restart_count` |  | int | Number of times the container was restarted. This attribute can be used to identify a particular container (running or stopped) within a container spec. | |
| `k8s.container.status.last_terminated_reason` |  | string | Last terminated reason of the Container. | `Evicted`; `Error` |
| `k8s.container.status.reason` |  | string | The reason for the container state. Corresponds to the `reason` field of the: [K8s ContainerStateWaiting](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#containerstatewaiting-v1-core) or [K8s ContainerStateTerminated](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#containerstateterminated-v1-core) | `ContainerCreating`; `CrashLoopBackOff`; `CreateContainerConfigError`; `ErrImagePull`; `ImagePullBackOff`; `OOMKilled`; `Completed`; `Error`; `ContainerCannotRun` |
| `k8s.container.status.state` |  | string | The state of the container. [K8s ContainerState](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#containerstate-v1-core) | `terminated`; `running`; `waiting` |
-| `k8s.cronjob.annotation.` |  | string | The cronjob annotation placed on the CronJob, the `` being the annotation name, the value being the annotation value. [2] | `4`; `` |
-| `k8s.cronjob.label.` |  | string | The label placed on the CronJob, the `` being the label name, the value being the label value. [3] | `weekly`; `` |
-| `k8s.cronjob.name` |  | string | The name of the CronJob. | `opentelemetry` |
-| `k8s.cronjob.uid` |  | string | The UID of the CronJob. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| `k8s.daemonset.annotation.` |  | string | The annotation placed on the DaemonSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [4] | `1`; `` |
-| `k8s.daemonset.label.` |  | string | The label placed on the DaemonSet, the `` being the label name, the value being the label value, even if the value is empty. [5] | `guestbook`; `` |
-| `k8s.daemonset.name` |  | string | The name of the DaemonSet. | `opentelemetry` |
-| `k8s.daemonset.uid` |  | string | The UID of the DaemonSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| `k8s.deployment.annotation.` |  | string | The annotation placed on the Deployment, the `` being the annotation name, the value being the annotation value, even if the value is empty. [6] | `1`; `` |
-| `k8s.deployment.label.` |  | string | The label placed on the Deployment, the `` being the label name, the value being the label value, even if the value is empty. [7] | `guestbook`; `` |
-| `k8s.deployment.name` |  | string | The name of the Deployment. | `opentelemetry` |
-| `k8s.deployment.uid` |  | string | The UID of the Deployment. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| `k8s.cronjob.annotation.` |  | string | The cronjob annotation placed on the CronJob, the `` being the annotation name, the value being the annotation value. [2] | `4`; `` |
+| `k8s.cronjob.label.` |  | string | The label placed on the CronJob, the `` being the label name, the value being the label value. [3] | `weekly`; `` |
+| `k8s.cronjob.name` |  | string | The name of the CronJob. | `opentelemetry` |
+| `k8s.cronjob.uid` |  | string | The UID of the CronJob. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| `k8s.daemonset.annotation.` |  | string | The annotation placed on the DaemonSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [4] | `1`; `` |
+| `k8s.daemonset.label.` |  | string | The label placed on the DaemonSet, the `` being the label name, the value being the label value, even if the value is empty. [5] | `guestbook`; `` |
+| `k8s.daemonset.name` |  | string | The name of the DaemonSet. | `opentelemetry` |
+| `k8s.daemonset.uid` |  | string | The UID of the DaemonSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| `k8s.deployment.annotation.` |  | string | The annotation placed on the Deployment, the `` being the annotation name, the value being the annotation value, even if the value is empty. [6] | `1`; `` |
+| `k8s.deployment.label.` |  | string | The label placed on the Deployment, the `` being the label name, the value being the label value, even if the value is empty. [7] | `guestbook`; `` |
+| `k8s.deployment.name` |  | string | The name of the Deployment. | `opentelemetry` |
+| `k8s.deployment.uid` |  | string | The UID of the Deployment. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
| `k8s.hpa.metric.type` |  | string | The type of metric source for the horizontal pod autoscaler. [8] | `Resource`; `ContainerResource` |
| `k8s.hpa.name` |  | string | The name of the horizontal pod autoscaler. | `opentelemetry` |
| `k8s.hpa.scaletargetref.api_version` |  | string | The API version of the target resource to scale for the HorizontalPodAutoscaler. [9] | `apps/v1`; `autoscaling/v2` |
@@ -40,42 +40,42 @@ Kubernetes resource attributes.
| `k8s.hpa.scaletargetref.name` |  | string | The name of the target resource to scale for the HorizontalPodAutoscaler. [11] | `my-deployment`; `my-statefulset` |
| `k8s.hpa.uid` |  | string | The UID of the horizontal pod autoscaler. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
| `k8s.hugepage.size` |  | string | The size (identifier) of the K8s huge page. | `2Mi` |
-| `k8s.job.annotation.` |  | string | The annotation placed on the Job, the `` being the annotation name, the value being the annotation value, even if the value is empty. [12] | `1`; `` |
-| `k8s.job.label.` |  | string | The label placed on the Job, the `` being the label name, the value being the label value, even if the value is empty. [13] | `ci`; `` |
-| `k8s.job.name` |  | string | The name of the Job. | `opentelemetry` |
-| `k8s.job.uid` |  | string | The UID of the Job. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| `k8s.namespace.annotation.` |  | string | The annotation placed on the Namespace, the `` being the annotation name, the value being the annotation value, even if the value is empty. [14] | `0`; `` |
-| `k8s.namespace.label.` |  | string | The label placed on the Namespace, the `` being the label name, the value being the label value, even if the value is empty. [15] | `default`; `` |
-| `k8s.namespace.name` |  | string | The name of the namespace that the pod is running in. | `default` |
+| `k8s.job.annotation.` |  | string | The annotation placed on the Job, the `` being the annotation name, the value being the annotation value, even if the value is empty. [12] | `1`; `` |
+| `k8s.job.label.` |  | string | The label placed on the Job, the `` being the label name, the value being the label value, even if the value is empty. [13] | `ci`; `` |
+| `k8s.job.name` |  | string | The name of the Job. | `opentelemetry` |
+| `k8s.job.uid` |  | string | The UID of the Job. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| `k8s.namespace.annotation.` |  | string | The annotation placed on the Namespace, the `` being the annotation name, the value being the annotation value, even if the value is empty. [14] | `0`; `` |
+| `k8s.namespace.label.` |  | string | The label placed on the Namespace, the `` being the label name, the value being the label value, even if the value is empty. [15] | `default`; `` |
+| `k8s.namespace.name` |  | string | The name of the namespace that the pod is running in. | `default` |
| `k8s.namespace.phase` |  | string | The phase of the K8s namespace. [16] | `active`; `terminating` |
-| `k8s.node.annotation.` |  | string | The annotation placed on the Node, the `` being the annotation name, the value being the annotation value, even if the value is empty. [17] | `0`; `` |
+| `k8s.node.annotation.` |  | string | The annotation placed on the Node, the `` being the annotation name, the value being the annotation value, even if the value is empty. [17] | `0`; `` |
| `k8s.node.condition.status` |  | string | The status of the condition, one of True, False, Unknown. [18] | `true`; `false`; `unknown` |
| `k8s.node.condition.type` |  | string | The condition type of a K8s Node. [19] | `Ready`; `DiskPressure` |
-| `k8s.node.label.` |  | string | The label placed on the Node, the `` being the label name, the value being the label value, even if the value is empty. [20] | `arm64`; `` |
-| `k8s.node.name` |  | string | The name of the Node. | `node-1` |
-| `k8s.node.uid` |  | string | The UID of the Node. | `1eb3a0c6-0477-4080-a9cb-0cb7db65c6a2` |
-| `k8s.pod.annotation.` |  | string | The annotation placed on the Pod, the `` being the annotation name, the value being the annotation value. [21] | `true`; `x64`; `` |
-| `k8s.pod.hostname` |  | string | Specifies the hostname of the Pod. [22] | `collector-gateway` |
-| `k8s.pod.ip` |  | string | IP address allocated to the Pod. [23] | `172.18.0.2` |
-| `k8s.pod.label.` |  | string | The label placed on the Pod, the `` being the label name, the value being the label value. [24] | `my-app`; `x64`; `` |
-| `k8s.pod.name` |  | string | The name of the Pod. | `opentelemetry-pod-autoconf` |
-| `k8s.pod.start_time` |  | string | The start timestamp of the Pod. [25] | `2025-12-04T08:41:03Z` |
+| `k8s.node.label.` |  | string | The label placed on the Node, the `` being the label name, the value being the label value, even if the value is empty. [20] | `arm64`; `` |
+| `k8s.node.name` |  | string | The name of the Node. | `node-1` |
+| `k8s.node.uid` |  | string | The UID of the Node. | `1eb3a0c6-0477-4080-a9cb-0cb7db65c6a2` |
+| `k8s.pod.annotation.` |  | string | The annotation placed on the Pod, the `` being the annotation name, the value being the annotation value. [21] | `true`; `x64`; `` |
+| `k8s.pod.hostname` |  | string | Specifies the hostname of the Pod. [22] | `collector-gateway` |
+| `k8s.pod.ip` |  | string | IP address allocated to the Pod. [23] | `172.18.0.2` |
+| `k8s.pod.label.` |  | string | The label placed on the Pod, the `` being the label name, the value being the label value. [24] | `my-app`; `x64`; `` |
+| `k8s.pod.name` |  | string | The name of the Pod. | `opentelemetry-pod-autoconf` |
+| `k8s.pod.start_time` |  | string | The start timestamp of the Pod. [25] | `2025-12-04T08:41:03Z` |
| `k8s.pod.status.phase` |  | string | The phase for the pod. Corresponds to the `phase` field of the: [K8s PodStatus](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.33/#podstatus-v1-core) | `Pending`; `Running` |
| `k8s.pod.status.reason` |  | string | The reason for the pod state. Corresponds to the `reason` field of the: [K8s PodStatus](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.33/#podstatus-v1-core) | `Evicted`; `NodeAffinity` |
-| `k8s.pod.uid` |  | string | The UID of the Pod. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| `k8s.replicaset.annotation.` |  | string | The annotation placed on the ReplicaSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [26] | `0`; `` |
-| `k8s.replicaset.label.` |  | string | The label placed on the ReplicaSet, the `` being the label name, the value being the label value, even if the value is empty. [27] | `guestbook`; `` |
-| `k8s.replicaset.name` |  | string | The name of the ReplicaSet. | `opentelemetry` |
-| `k8s.replicaset.uid` |  | string | The UID of the ReplicaSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| `k8s.pod.uid` |  | string | The UID of the Pod. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| `k8s.replicaset.annotation.` |  | string | The annotation placed on the ReplicaSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [26] | `0`; `` |
+| `k8s.replicaset.label.` |  | string | The label placed on the ReplicaSet, the `` being the label name, the value being the label value, even if the value is empty. [27] | `guestbook`; `` |
+| `k8s.replicaset.name` |  | string | The name of the ReplicaSet. | `opentelemetry` |
+| `k8s.replicaset.uid` |  | string | The UID of the ReplicaSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
| `k8s.replicationcontroller.name` |  | string | The name of the replication controller. | `opentelemetry` |
| `k8s.replicationcontroller.uid` |  | string | The UID of the replication controller. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
| `k8s.resourcequota.name` |  | string | The name of the resource quota. | `opentelemetry` |
| `k8s.resourcequota.resource_name` |  | string | The name of the K8s resource a resource quota defines. [28] | `count/replicationcontrollers` |
| `k8s.resourcequota.uid` |  | string | The UID of the resource quota. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| `k8s.statefulset.annotation.` |  | string | The annotation placed on the StatefulSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [29] | `1`; `` |
-| `k8s.statefulset.label.` |  | string | The label placed on the StatefulSet, the `` being the label name, the value being the label value, even if the value is empty. [30] | `guestbook`; `` |
-| `k8s.statefulset.name` |  | string | The name of the StatefulSet. | `opentelemetry` |
-| `k8s.statefulset.uid` |  | string | The UID of the StatefulSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| `k8s.statefulset.annotation.` |  | string | The annotation placed on the StatefulSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [29] | `1`; `` |
+| `k8s.statefulset.label.` |  | string | The label placed on the StatefulSet, the `` being the label name, the value being the label value, even if the value is empty. [30] | `guestbook`; `` |
+| `k8s.statefulset.name` |  | string | The name of the StatefulSet. | `opentelemetry` |
+| `k8s.statefulset.uid` |  | string | The UID of the StatefulSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
| `k8s.storageclass.name` |  | string | The name of K8s [StorageClass](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#storageclass-v1-storage-k8s-io) object. | `gold.storageclass.storage.k8s.io` |
| `k8s.volume.name` |  | string | The name of the K8s volume. | `volume0` |
| `k8s.volume.type` |  | string | The type of the K8s volume. | `emptyDir`; `persistentVolumeClaim` |
diff --git a/docs/registry/entities/container.md b/docs/registry/entities/container.md
index 906e2222ab..d87ada1852 100644
--- a/docs/registry/entities/container.md
+++ b/docs/registry/entities/container.md
@@ -19,7 +19,7 @@
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Other | [`container.id`](/docs/registry/attributes/container.md) |  | `Recommended` | string | Container ID. Usually a UUID, as for example used to [identify Docker containers](https://docs.docker.com/engine/containers/run/#container-identification). The UUID might be abbreviated. | `a3bf90e006b2` |
+| Other | [`container.id`](/docs/registry/attributes/container.md) |  | `Recommended` | string | Container ID. Usually a UUID, as for example used to [identify Docker containers](https://docs.docker.com/engine/containers/run/#container-identification). The UUID might be abbreviated. | `a3bf90e006b2` |
| Other | [`container.label.`](/docs/registry/attributes/container.md) |  | `Recommended` | string | Container labels, `` being the label name, the value being the label value. [1] | `nginx` |
| Other | [`container.name`](/docs/registry/attributes/container.md) |  | `Recommended` | string | Container name used by container runtime. | `opentelemetry-autoconf` |
| Other | [`oci.manifest.digest`](/docs/registry/attributes/oci.md) |  | `Recommended` | string | The digest of the OCI image manifest. For container images specifically is the digest by which the container image is known. [2] | `sha256:e4ca62c0d62f3e886e684806dfe9d4e0cda60d54986898173c1083856cfda0f4` |
@@ -51,9 +51,9 @@ An example can be found in [Example Image Manifest](https://github.com/openconta
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
| Other | [`container.image.id`](/docs/registry/attributes/container.md) |  | `Recommended` | string | Runtime specific image identifier. Usually a hash algorithm followed by a UUID. [4] | `sha256:19c92d0a00d1b66d897bceaa7319bee0dd38a10a851c60bcec9474aa3f01e50f` |
-| Other | [`container.image.name`](/docs/registry/attributes/container.md) |  | `Recommended` | string | Name of the image the container was built on. | `gcr.io/opentelemetry/operator` |
-| Other | [`container.image.repo_digests`](/docs/registry/attributes/container.md) |  | `Recommended` | string[] | Repo digests of the container image as provided by the container runtime. [5] | `["example@sha256:afcc7f1ac1b49db317a7196c902e61c6c3c4607d63599ee1a82d702d249a0ccb", "internal.registry.example.com:5000/example@sha256:b69959407d21e8a062e0416bf13405bb2b71ed7a84dde4158ebafacfa06f5578"]` |
-| Other | [`container.image.tags`](/docs/registry/attributes/container.md) |  | `Recommended` | string[] | Container image tags. An example can be found in [Docker Image Inspect](https://docs.docker.com/reference/api/engine/version/v1.52/#tag/Image/operation/ImageInspect). Should be only the `` section of the full name for example from `registry.example.com/my-org/my-image:`. | `["v1.27.1", "3.5.7-0"]` |
+| Other | [`container.image.name`](/docs/registry/attributes/container.md) |  | `Recommended` | string | Name of the image the container was built on. | `gcr.io/opentelemetry/operator` |
+| Other | [`container.image.repo_digests`](/docs/registry/attributes/container.md) |  | `Recommended` | string[] | Repo digests of the container image as provided by the container runtime. [5] | `["example@sha256:afcc7f1ac1b49db317a7196c902e61c6c3c4607d63599ee1a82d702d249a0ccb", "internal.registry.example.com:5000/example@sha256:b69959407d21e8a062e0416bf13405bb2b71ed7a84dde4158ebafacfa06f5578"]` |
+| Other | [`container.image.tags`](/docs/registry/attributes/container.md) |  | `Recommended` | string[] | Container image tags. An example can be found in [Docker Image Inspect](https://docs.docker.com/reference/api/engine/version/v1.52/#tag/Image/operation/ImageInspect). Should be only the `` section of the full name for example from `registry.example.com/my-org/my-image:`. | `["v1.27.1", "3.5.7-0"]` |
**[4] `container.image.id`:** Docker defines a sha256 of the image id; `container.image.id` corresponds to the `Image` field from the Docker container inspect [API](https://docs.docker.com/reference/api/engine/version/v1.52/#tag/Container/operation/ContainerInspect) endpoint.
K8s defines a link to the container registry repository with digest `"imageID": "registry.azurecr.io /namespace/service/dockerfile@sha256:bdeabd40c3a8a492eaf9e8e44d0ebbb84bac7ee25ac0cf8a7159d25f62555625"`.
diff --git a/docs/registry/entities/k8s.md b/docs/registry/entities/k8s.md
index 2e812fd2cc..b0957294f2 100644
--- a/docs/registry/entities/k8s.md
+++ b/docs/registry/entities/k8s.md
@@ -15,8 +15,8 @@
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.cluster.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | A pseudo-ID for the cluster, set to the UID of the `kube-system` namespace. [1] | `218fc5a9-a5f1-4b54-aa05-46717d0ab26d` |
-| Description | [`k8s.cluster.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the cluster. | `opentelemetry-cluster` |
+| Identity | [`k8s.cluster.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | A pseudo-ID for the cluster, set to the UID of the `kube-system` namespace. [1] | `218fc5a9-a5f1-4b54-aa05-46717d0ab26d` |
+| Description | [`k8s.cluster.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the cluster. | `opentelemetry-cluster` |
**[1] `k8s.cluster.uid`:** K8s doesn't have support for obtaining a cluster ID. If this is ever
added, we will recommend collecting the `k8s.cluster.uid` through the
@@ -53,8 +53,8 @@ conflict.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.container.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Container from Pod specification, must be unique within a Pod. Container runtime usually uses different globally unique name (`container.name`). | `redis` |
-| Description | [`k8s.container.restart_count`](/docs/registry/attributes/k8s.md) |  | `Recommended` | int | Number of times the container was restarted. This attribute can be used to identify a particular container (running or stopped) within a container spec. | |
+| Identity | [`k8s.container.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Container from Pod specification, must be unique within a Pod. Container runtime usually uses different globally unique name (`container.name`). | `redis` |
+| Description | [`k8s.container.restart_count`](/docs/registry/attributes/k8s.md) |  | `Recommended` | int | Number of times the container was restarted. This attribute can be used to identify a particular container (running or stopped) within a container spec. | |
| Description | [`k8s.container.status.last_terminated_reason`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | Last terminated reason of the Container. | `Evicted`; `Error` |
## K8s Cronjob
@@ -69,10 +69,10 @@ conflict.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.cronjob.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the CronJob. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| Description | [`k8s.cronjob.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the CronJob. | `opentelemetry` |
-| Description | [`k8s.cronjob.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The cronjob annotation placed on the CronJob, the `` being the annotation name, the value being the annotation value. [2] | `4`; `` |
-| Description | [`k8s.cronjob.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the CronJob, the `` being the label name, the value being the label value. [3] | `weekly`; `` |
+| Identity | [`k8s.cronjob.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the CronJob. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| Description | [`k8s.cronjob.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the CronJob. | `opentelemetry` |
+| Description | [`k8s.cronjob.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The cronjob annotation placed on the CronJob, the `` being the annotation name, the value being the annotation value. [2] | `4`; `` |
+| Description | [`k8s.cronjob.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the CronJob, the `` being the label name, the value being the label value. [3] | `weekly`; `` |
**[2] `k8s.cronjob.annotation.`:** Examples:
@@ -100,10 +100,10 @@ conflict.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.daemonset.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the DaemonSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| Description | [`k8s.daemonset.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the DaemonSet. | `opentelemetry` |
-| Description | [`k8s.daemonset.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the DaemonSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [4] | `1`; `` |
-| Description | [`k8s.daemonset.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the DaemonSet, the `` being the label name, the value being the label value, even if the value is empty. [5] | `guestbook`; `` |
+| Identity | [`k8s.daemonset.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the DaemonSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| Description | [`k8s.daemonset.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the DaemonSet. | `opentelemetry` |
+| Description | [`k8s.daemonset.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the DaemonSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [4] | `1`; `` |
+| Description | [`k8s.daemonset.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the DaemonSet, the `` being the label name, the value being the label value, even if the value is empty. [5] | `guestbook`; `` |
**[4] `k8s.daemonset.annotation.`:** Examples:
@@ -131,10 +131,10 @@ conflict.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.deployment.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Deployment. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| Description | [`k8s.deployment.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Deployment. | `opentelemetry` |
-| Description | [`k8s.deployment.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Deployment, the `` being the annotation name, the value being the annotation value, even if the value is empty. [6] | `1`; `` |
-| Description | [`k8s.deployment.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Deployment, the `` being the label name, the value being the label value, even if the value is empty. [7] | `guestbook`; `` |
+| Identity | [`k8s.deployment.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Deployment. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| Description | [`k8s.deployment.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Deployment. | `opentelemetry` |
+| Description | [`k8s.deployment.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Deployment, the `` being the annotation name, the value being the annotation value, even if the value is empty. [6] | `1`; `` |
+| Description | [`k8s.deployment.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Deployment, the `` being the label name, the value being the label value, even if the value is empty. [7] | `guestbook`; `` |
**[6] `k8s.deployment.annotation.`:** Examples:
@@ -186,10 +186,10 @@ conflict.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.job.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Job. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| Description | [`k8s.job.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Job. | `opentelemetry` |
-| Description | [`k8s.job.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Job, the `` being the annotation name, the value being the annotation value, even if the value is empty. [11] | `1`; `` |
-| Description | [`k8s.job.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Job, the `` being the label name, the value being the label value, even if the value is empty. [12] | `ci`; `` |
+| Identity | [`k8s.job.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Job. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| Description | [`k8s.job.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Job. | `opentelemetry` |
+| Description | [`k8s.job.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Job, the `` being the annotation name, the value being the annotation value, even if the value is empty. [11] | `1`; `` |
+| Description | [`k8s.job.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Job, the `` being the label name, the value being the label value, even if the value is empty. [12] | `ci`; `` |
**[11] `k8s.job.annotation.`:** Examples:
@@ -217,9 +217,9 @@ conflict.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.namespace.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the namespace that the pod is running in. | `default` |
-| Description | [`k8s.namespace.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Namespace, the `` being the annotation name, the value being the annotation value, even if the value is empty. [13] | `0`; `` |
-| Description | [`k8s.namespace.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Namespace, the `` being the label name, the value being the label value, even if the value is empty. [14] | `default`; `` |
+| Identity | [`k8s.namespace.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the namespace that the pod is running in. | `default` |
+| Description | [`k8s.namespace.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Namespace, the `` being the annotation name, the value being the annotation value, even if the value is empty. [13] | `0`; `` |
+| Description | [`k8s.namespace.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Namespace, the `` being the label name, the value being the label value, even if the value is empty. [14] | `default`; `` |
**[13] `k8s.namespace.annotation.`:** Examples:
@@ -247,10 +247,10 @@ conflict.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.node.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Node. | `1eb3a0c6-0477-4080-a9cb-0cb7db65c6a2` |
-| Description | [`k8s.node.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Node. | `node-1` |
-| Description | [`k8s.node.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Node, the `` being the annotation name, the value being the annotation value, even if the value is empty. [15] | `0`; `` |
-| Description | [`k8s.node.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Node, the `` being the label name, the value being the label value, even if the value is empty. [16] | `arm64`; `` |
+| Identity | [`k8s.node.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Node. | `1eb3a0c6-0477-4080-a9cb-0cb7db65c6a2` |
+| Description | [`k8s.node.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Node. | `node-1` |
+| Description | [`k8s.node.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Node, the `` being the annotation name, the value being the annotation value, even if the value is empty. [15] | `0`; `` |
+| Description | [`k8s.node.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Node, the `` being the label name, the value being the label value, even if the value is empty. [16] | `arm64`; `` |
**[15] `k8s.node.annotation.`:** Examples:
@@ -278,13 +278,13 @@ conflict.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.pod.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Pod. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| Description | [`k8s.pod.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Pod. | `opentelemetry-pod-autoconf` |
-| Description | [`k8s.pod.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Pod, the `` being the annotation name, the value being the annotation value. [17] | `true`; `x64`; `` |
-| Description | [`k8s.pod.hostname`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | Specifies the hostname of the Pod. [18] | `collector-gateway` |
-| Description | [`k8s.pod.ip`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | IP address allocated to the Pod. [19] | `172.18.0.2` |
-| Description | [`k8s.pod.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Pod, the `` being the label name, the value being the label value. [20] | `my-app`; `x64`; `` |
-| Description | [`k8s.pod.start_time`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The start timestamp of the Pod. [21] | `2025-12-04T08:41:03Z` |
+| Identity | [`k8s.pod.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Pod. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| Description | [`k8s.pod.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Pod. | `opentelemetry-pod-autoconf` |
+| Description | [`k8s.pod.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Pod, the `` being the annotation name, the value being the annotation value. [17] | `true`; `x64`; `` |
+| Description | [`k8s.pod.hostname`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | Specifies the hostname of the Pod. [18] | `collector-gateway` |
+| Description | [`k8s.pod.ip`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | IP address allocated to the Pod. [19] | `172.18.0.2` |
+| Description | [`k8s.pod.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Pod, the `` being the label name, the value being the label value. [20] | `my-app`; `x64`; `` |
+| Description | [`k8s.pod.start_time`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The start timestamp of the Pod. [21] | `2025-12-04T08:41:03Z` |
**[17] `k8s.pod.annotation.`:** Examples:
@@ -333,10 +333,10 @@ in ISO 8601 (RFC 3339 compatible) format.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.replicaset.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the ReplicaSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| Description | [`k8s.replicaset.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the ReplicaSet. | `opentelemetry` |
-| Description | [`k8s.replicaset.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the ReplicaSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [22] | `0`; `` |
-| Description | [`k8s.replicaset.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the ReplicaSet, the `` being the label name, the value being the label value, even if the value is empty. [23] | `guestbook`; `` |
+| Identity | [`k8s.replicaset.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the ReplicaSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| Description | [`k8s.replicaset.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the ReplicaSet. | `opentelemetry` |
+| Description | [`k8s.replicaset.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the ReplicaSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [22] | `0`; `` |
+| Description | [`k8s.replicaset.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the ReplicaSet, the `` being the label name, the value being the label value, even if the value is empty. [23] | `guestbook`; `` |
**[22] `k8s.replicaset.annotation.`:** Examples:
@@ -394,10 +394,10 @@ in ISO 8601 (RFC 3339 compatible) format.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.statefulset.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the StatefulSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| Description | [`k8s.statefulset.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the StatefulSet. | `opentelemetry` |
-| Description | [`k8s.statefulset.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the StatefulSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [24] | `1`; `` |
-| Description | [`k8s.statefulset.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the StatefulSet, the `` being the label name, the value being the label value, even if the value is empty. [25] | `guestbook`; `` |
+| Identity | [`k8s.statefulset.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the StatefulSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| Description | [`k8s.statefulset.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the StatefulSet. | `opentelemetry` |
+| Description | [`k8s.statefulset.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the StatefulSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [24] | `1`; `` |
+| Description | [`k8s.statefulset.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the StatefulSet, the `` being the label name, the value being the label value, even if the value is empty. [25] | `guestbook`; `` |
**[24] `k8s.statefulset.annotation.`:** Examples:
diff --git a/docs/resource/container.md b/docs/resource/container.md
index 51409cf7ad..bc4c9c208d 100644
--- a/docs/resource/container.md
+++ b/docs/resource/container.md
@@ -19,7 +19,7 @@
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Other | [`container.id`](/docs/registry/attributes/container.md) |  | `Recommended` | string | Container ID. Usually a UUID, as for example used to [identify Docker containers](https://docs.docker.com/engine/containers/run/#container-identification). The UUID might be abbreviated. | `a3bf90e006b2` |
+| Other | [`container.id`](/docs/registry/attributes/container.md) |  | `Recommended` | string | Container ID. Usually a UUID, as for example used to [identify Docker containers](https://docs.docker.com/engine/containers/run/#container-identification). The UUID might be abbreviated. | `a3bf90e006b2` |
| Other | [`container.label.`](/docs/registry/attributes/container.md) |  | `Recommended` | string | Container labels, `` being the label name, the value being the label value. [1] | `nginx` |
| Other | [`container.name`](/docs/registry/attributes/container.md) |  | `Recommended` | string | Container name used by container runtime. | `opentelemetry-autoconf` |
| Other | [`oci.manifest.digest`](/docs/registry/attributes/oci.md) |  | `Recommended` | string | The digest of the OCI image manifest. For container images specifically is the digest by which the container image is known. [2] | `sha256:e4ca62c0d62f3e886e684806dfe9d4e0cda60d54986898173c1083856cfda0f4` |
diff --git a/docs/resource/k8s/README.md b/docs/resource/k8s/README.md
index d9e2040946..769e1098e1 100644
--- a/docs/resource/k8s/README.md
+++ b/docs/resource/k8s/README.md
@@ -32,8 +32,8 @@ Kubernetes object, but "name" is usually more user friendly so can be also set.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.cluster.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | A pseudo-ID for the cluster, set to the UID of the `kube-system` namespace. [1] | `218fc5a9-a5f1-4b54-aa05-46717d0ab26d` |
-| Description | [`k8s.cluster.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the cluster. | `opentelemetry-cluster` |
+| Identity | [`k8s.cluster.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | A pseudo-ID for the cluster, set to the UID of the `kube-system` namespace. [1] | `218fc5a9-a5f1-4b54-aa05-46717d0ab26d` |
+| Description | [`k8s.cluster.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the cluster. | `opentelemetry-cluster` |
**[1] `k8s.cluster.uid`:** K8s doesn't have support for obtaining a cluster ID. If this is ever
added, we will recommend collecting the `k8s.cluster.uid` through the
@@ -78,10 +78,10 @@ conflict.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.node.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Node. | `1eb3a0c6-0477-4080-a9cb-0cb7db65c6a2` |
-| Description | [`k8s.node.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Node. | `node-1` |
-| Description | [`k8s.node.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Node, the `` being the annotation name, the value being the annotation value, even if the value is empty. [1] | `0`; `` |
-| Description | [`k8s.node.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Node, the `` being the label name, the value being the label value, even if the value is empty. [2] | `arm64`; `` |
+| Identity | [`k8s.node.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Node. | `1eb3a0c6-0477-4080-a9cb-0cb7db65c6a2` |
+| Description | [`k8s.node.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Node. | `node-1` |
+| Description | [`k8s.node.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Node, the `` being the annotation name, the value being the annotation value, even if the value is empty. [1] | `0`; `` |
+| Description | [`k8s.node.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Node, the `` being the label name, the value being the label value, even if the value is empty. [2] | `arm64`; `` |
**[1] `k8s.node.annotation.`:** Examples:
@@ -120,9 +120,9 @@ a namespace, but not across namespaces.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.namespace.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the namespace that the pod is running in. | `default` |
-| Description | [`k8s.namespace.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Namespace, the `` being the annotation name, the value being the annotation value, even if the value is empty. [1] | `0`; `` |
-| Description | [`k8s.namespace.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Namespace, the `` being the label name, the value being the label value, even if the value is empty. [2] | `default`; `` |
+| Identity | [`k8s.namespace.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the namespace that the pod is running in. | `default` |
+| Description | [`k8s.namespace.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Namespace, the `` being the annotation name, the value being the annotation value, even if the value is empty. [1] | `0`; `` |
+| Description | [`k8s.namespace.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Namespace, the `` being the label name, the value being the label value, even if the value is empty. [2] | `default`; `` |
**[1] `k8s.namespace.annotation.`:** Examples:
@@ -161,13 +161,13 @@ containers on your cluster.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.pod.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Pod. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| Description | [`k8s.pod.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Pod. | `opentelemetry-pod-autoconf` |
-| Description | [`k8s.pod.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Pod, the `` being the annotation name, the value being the annotation value. [1] | `true`; `x64`; `` |
-| Description | [`k8s.pod.hostname`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | Specifies the hostname of the Pod. [2] | `collector-gateway` |
-| Description | [`k8s.pod.ip`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | IP address allocated to the Pod. [3] | `172.18.0.2` |
-| Description | [`k8s.pod.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Pod, the `` being the label name, the value being the label value. [4] | `my-app`; `x64`; `` |
-| Description | [`k8s.pod.start_time`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The start timestamp of the Pod. [5] | `2025-12-04T08:41:03Z` |
+| Identity | [`k8s.pod.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Pod. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| Description | [`k8s.pod.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Pod. | `opentelemetry-pod-autoconf` |
+| Description | [`k8s.pod.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Pod, the `` being the annotation name, the value being the annotation value. [1] | `true`; `x64`; `` |
+| Description | [`k8s.pod.hostname`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | Specifies the hostname of the Pod. [2] | `collector-gateway` |
+| Description | [`k8s.pod.ip`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | IP address allocated to the Pod. [3] | `172.18.0.2` |
+| Description | [`k8s.pod.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Pod, the `` being the label name, the value being the label value. [4] | `my-app`; `x64`; `` |
+| Description | [`k8s.pod.start_time`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The start timestamp of the Pod. [5] | `2025-12-04T08:41:03Z` |
**[1] `k8s.pod.annotation.`:** Examples:
@@ -231,8 +231,8 @@ to a running container.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.container.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Container from Pod specification, must be unique within a Pod. Container runtime usually uses different globally unique name (`container.name`). | `redis` |
-| Description | [`k8s.container.restart_count`](/docs/registry/attributes/k8s.md) |  | `Recommended` | int | Number of times the container was restarted. This attribute can be used to identify a particular container (running or stopped) within a container spec. | |
+| Identity | [`k8s.container.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Container from Pod specification, must be unique within a Pod. Container runtime usually uses different globally unique name (`container.name`). | `redis` |
+| Description | [`k8s.container.restart_count`](/docs/registry/attributes/k8s.md) |  | `Recommended` | int | Number of times the container was restarted. This attribute can be used to identify a particular container (running or stopped) within a container spec. | |
| Description | [`k8s.container.status.last_terminated_reason`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | Last terminated reason of the Container. | `Evicted`; `Error` |
@@ -255,10 +255,10 @@ to a running container.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.replicaset.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the ReplicaSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| Description | [`k8s.replicaset.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the ReplicaSet. | `opentelemetry` |
-| Description | [`k8s.replicaset.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the ReplicaSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [1] | `0`; `` |
-| Description | [`k8s.replicaset.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the ReplicaSet, the `` being the label name, the value being the label value, even if the value is empty. [2] | `guestbook`; `` |
+| Identity | [`k8s.replicaset.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the ReplicaSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| Description | [`k8s.replicaset.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the ReplicaSet. | `opentelemetry` |
+| Description | [`k8s.replicaset.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the ReplicaSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [1] | `0`; `` |
+| Description | [`k8s.replicaset.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the ReplicaSet, the `` being the label name, the value being the label value, even if the value is empty. [2] | `guestbook`; `` |
**[1] `k8s.replicaset.annotation.`:** Examples:
@@ -298,10 +298,10 @@ distributed among the nodes of a cluster.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.deployment.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Deployment. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| Description | [`k8s.deployment.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Deployment. | `opentelemetry` |
-| Description | [`k8s.deployment.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Deployment, the `` being the annotation name, the value being the annotation value, even if the value is empty. [1] | `1`; `` |
-| Description | [`k8s.deployment.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Deployment, the `` being the label name, the value being the label value, even if the value is empty. [2] | `guestbook`; `` |
+| Identity | [`k8s.deployment.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Deployment. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| Description | [`k8s.deployment.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Deployment. | `opentelemetry` |
+| Description | [`k8s.deployment.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Deployment, the `` being the annotation name, the value being the annotation value, even if the value is empty. [1] | `1`; `` |
+| Description | [`k8s.deployment.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Deployment, the `` being the label name, the value being the label value, even if the value is empty. [2] | `guestbook`; `` |
**[1] `k8s.deployment.annotation.`:** Examples:
@@ -340,10 +340,10 @@ about the ordering and uniqueness of these Pods.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.statefulset.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the StatefulSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| Description | [`k8s.statefulset.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the StatefulSet. | `opentelemetry` |
-| Description | [`k8s.statefulset.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the StatefulSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [1] | `1`; `` |
-| Description | [`k8s.statefulset.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the StatefulSet, the `` being the label name, the value being the label value, even if the value is empty. [2] | `guestbook`; `` |
+| Identity | [`k8s.statefulset.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the StatefulSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| Description | [`k8s.statefulset.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the StatefulSet. | `opentelemetry` |
+| Description | [`k8s.statefulset.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the StatefulSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [1] | `1`; `` |
+| Description | [`k8s.statefulset.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the StatefulSet, the `` being the label name, the value being the label value, even if the value is empty. [2] | `guestbook`; `` |
**[1] `k8s.statefulset.annotation.`:** Examples:
@@ -381,10 +381,10 @@ A DaemonSet ensures that all (or some) Nodes run a copy of a Pod.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.daemonset.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the DaemonSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| Description | [`k8s.daemonset.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the DaemonSet. | `opentelemetry` |
-| Description | [`k8s.daemonset.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the DaemonSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [1] | `1`; `` |
-| Description | [`k8s.daemonset.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the DaemonSet, the `` being the label name, the value being the label value, even if the value is empty. [2] | `guestbook`; `` |
+| Identity | [`k8s.daemonset.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the DaemonSet. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| Description | [`k8s.daemonset.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the DaemonSet. | `opentelemetry` |
+| Description | [`k8s.daemonset.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the DaemonSet, the `` being the annotation name, the value being the annotation value, even if the value is empty. [1] | `1`; `` |
+| Description | [`k8s.daemonset.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the DaemonSet, the `` being the label name, the value being the label value, even if the value is empty. [2] | `guestbook`; `` |
**[1] `k8s.daemonset.annotation.`:** Examples:
@@ -423,10 +423,10 @@ successfully terminate.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.job.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Job. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| Description | [`k8s.job.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Job. | `opentelemetry` |
-| Description | [`k8s.job.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Job, the `` being the annotation name, the value being the annotation value, even if the value is empty. [1] | `1`; `` |
-| Description | [`k8s.job.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Job, the `` being the label name, the value being the label value, even if the value is empty. [2] | `ci`; `` |
+| Identity | [`k8s.job.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the Job. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| Description | [`k8s.job.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the Job. | `opentelemetry` |
+| Description | [`k8s.job.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The annotation placed on the Job, the `` being the annotation name, the value being the annotation value, even if the value is empty. [1] | `1`; `` |
+| Description | [`k8s.job.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the Job, the `` being the label name, the value being the label value, even if the value is empty. [2] | `ci`; `` |
**[1] `k8s.job.annotation.`:** Examples:
@@ -464,10 +464,10 @@ A CronJob creates Jobs on a repeating schedule.
| Role | Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- | --- |
-| Identity | [`k8s.cronjob.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the CronJob. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
-| Description | [`k8s.cronjob.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the CronJob. | `opentelemetry` |
-| Description | [`k8s.cronjob.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The cronjob annotation placed on the CronJob, the `` being the annotation name, the value being the annotation value. [1] | `4`; `` |
-| Description | [`k8s.cronjob.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the CronJob, the `` being the label name, the value being the label value. [2] | `weekly`; `` |
+| Identity | [`k8s.cronjob.uid`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The UID of the CronJob. | `275ecb36-5aa8-4c2a-9c47-d8bb681b9aff` |
+| Description | [`k8s.cronjob.name`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The name of the CronJob. | `opentelemetry` |
+| Description | [`k8s.cronjob.annotation.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The cronjob annotation placed on the CronJob, the `` being the annotation name, the value being the annotation value. [1] | `4`; `` |
+| Description | [`k8s.cronjob.label.`](/docs/registry/attributes/k8s.md) |  | `Opt-In` | string | The label placed on the CronJob, the `` being the label name, the value being the label value. [2] | `weekly`; `` |
**[1] `k8s.cronjob.annotation.`:** Examples:
diff --git a/docs/system/k8s-metrics.md b/docs/system/k8s-metrics.md
index d13f7dedfb..8ca2e17744 100644
--- a/docs/system/k8s-metrics.md
+++ b/docs/system/k8s-metrics.md
@@ -1620,7 +1620,7 @@ the `k8s.container.name` attribute MUST be set to identify the specific containe
| Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- |
-| [`k8s.container.name`](/docs/registry/attributes/k8s.md) |  | `Conditionally Required` [1] | string | The name of the Container from Pod specification, must be unique within a Pod. Container runtime usually uses different globally unique name (`container.name`). | `redis` |
+| [`k8s.container.name`](/docs/registry/attributes/k8s.md) |  | `Conditionally Required` [1] | string | The name of the Container from Pod specification, must be unique within a Pod. Container runtime usually uses different globally unique name (`container.name`). | `redis` |
| [`k8s.hpa.metric.type`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The type of metric source for the horizontal pod autoscaler. [2] | `Resource`; `ContainerResource` |
**[1] `k8s.container.name`:** if and only if k8s.hpa.metric.type is ContainerResource
@@ -1653,7 +1653,7 @@ the `k8s.container.name` attribute MUST be set to identify the specific containe
| Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- |
-| [`k8s.container.name`](/docs/registry/attributes/k8s.md) |  | `Conditionally Required` [1] | string | The name of the Container from Pod specification, must be unique within a Pod. Container runtime usually uses different globally unique name (`container.name`). | `redis` |
+| [`k8s.container.name`](/docs/registry/attributes/k8s.md) |  | `Conditionally Required` [1] | string | The name of the Container from Pod specification, must be unique within a Pod. Container runtime usually uses different globally unique name (`container.name`). | `redis` |
| [`k8s.hpa.metric.type`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The type of metric source for the horizontal pod autoscaler. [2] | `Resource`; `ContainerResource` |
**[1] `k8s.container.name`:** if and only if k8s.hpa.metric.type is ContainerResource
@@ -1686,7 +1686,7 @@ the `k8s.container.name` attribute MUST be set to identify the specific containe
| Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- |
-| [`k8s.container.name`](/docs/registry/attributes/k8s.md) |  | `Conditionally Required` [1] | string | The name of the Container from Pod specification, must be unique within a Pod. Container runtime usually uses different globally unique name (`container.name`). | `redis` |
+| [`k8s.container.name`](/docs/registry/attributes/k8s.md) |  | `Conditionally Required` [1] | string | The name of the Container from Pod specification, must be unique within a Pod. Container runtime usually uses different globally unique name (`container.name`). | `redis` |
| [`k8s.hpa.metric.type`](/docs/registry/attributes/k8s.md) |  | `Recommended` | string | The type of metric source for the horizontal pod autoscaler. [2] | `Resource`; `ContainerResource` |
**[1] `k8s.container.name`:** if and only if k8s.hpa.metric.type is ContainerResource.
diff --git a/model/container/registry.yaml b/model/container/registry.yaml
index 0b5002470e..0878e6d7aa 100644
--- a/model/container/registry.yaml
+++ b/model/container/registry.yaml
@@ -13,7 +13,7 @@ groups:
examples: ['opentelemetry-autoconf']
- id: container.id
type: string
- stability: development
+ stability: alpha
brief: >
Container ID. Usually a UUID, as for example used to
[identify Docker containers](https://docs.docker.com/engine/containers/run/#container-identification).
@@ -41,13 +41,13 @@ groups:
examples: ['docker://19.3.1 - CRI: 1.22.0']
- id: container.image.name
type: string
- stability: development
+ stability: alpha
brief: >
Name of the image the container was built on.
examples: ['gcr.io/opentelemetry/operator']
- id: container.image.tags
type: string[]
- stability: development
+ stability: alpha
brief: >
Container image tags. An example can be found in
[Docker Image Inspect](https://docs.docker.com/reference/api/engine/version/v1.52/#tag/Image/operation/ImageInspect).
@@ -74,7 +74,7 @@ groups:
examples: ['sha256:19c92d0a00d1b66d897bceaa7319bee0dd38a10a851c60bcec9474aa3f01e50f']
- id: container.image.repo_digests
type: string[]
- stability: development
+ stability: alpha
brief: >
Repo digests of the container image as provided by the container runtime.
note: >
diff --git a/model/k8s/registry.yaml b/model/k8s/registry.yaml
index ae92fddc79..18a0bd9b37 100644
--- a/model/k8s/registry.yaml
+++ b/model/k8s/registry.yaml
@@ -7,13 +7,13 @@ groups:
attributes:
- id: k8s.cluster.name
type: string
- stability: development
+ stability: alpha
brief: >
The name of the cluster.
examples: ['opentelemetry-cluster']
- id: k8s.cluster.uid
type: string
- stability: development
+ stability: alpha
brief: >
A pseudo-ID for the cluster, set to the UID of the `kube-system`
namespace.
@@ -43,19 +43,19 @@ groups:
examples: ['218fc5a9-a5f1-4b54-aa05-46717d0ab26d']
- id: k8s.node.name
type: string
- stability: development
+ stability: alpha
brief: >
The name of the Node.
examples: ['node-1']
- id: k8s.node.uid
type: string
- stability: development
+ stability: alpha
brief: >
The UID of the Node.
examples: ['1eb3a0c6-0477-4080-a9cb-0cb7db65c6a2']
- id: k8s.node.label
type: template[string]
- stability: development
+ stability: alpha
brief: >
The label placed on the Node, the `` being the label name, the value being the label value, even if the value is empty.
note: |
@@ -68,7 +68,7 @@ groups:
examples: ['arm64', '']
- id: k8s.node.annotation
type: template[string]
- stability: development
+ stability: alpha
brief: >
The annotation placed on the Node, the `` being the annotation name, the value being the annotation value, even if the value is empty.
note: |
@@ -81,13 +81,13 @@ groups:
examples: [ '0', '' ]
- id: k8s.namespace.name
type: string
- stability: development
+ stability: alpha
brief: >
The name of the namespace that the pod is running in.
examples: ['default']
- id: k8s.namespace.label
type: template[string]
- stability: development
+ stability: alpha
brief: >
The label placed on the Namespace, the `` being the label name, the value being the label value, even if the value is empty.
note: |
@@ -101,7 +101,7 @@ groups:
examples: ['default', '']
- id: k8s.namespace.annotation
type: template[string]
- stability: development
+ stability: alpha
brief: >
The annotation placed on the Namespace, the `` being the annotation name, the value being the annotation value, even if the value is empty.
note: |
@@ -115,19 +115,19 @@ groups:
examples: ['0', '']
- id: k8s.pod.uid
type: string
- stability: development
+ stability: alpha
brief: >
The UID of the Pod.
examples: ['275ecb36-5aa8-4c2a-9c47-d8bb681b9aff']
- id: k8s.pod.name
type: string
- stability: development
+ stability: alpha
brief: >
The name of the Pod.
examples: ['opentelemetry-pod-autoconf']
- id: k8s.pod.ip
type: string
- stability: development
+ stability: alpha
brief: >
IP address allocated to the Pod.
examples: [ '172.18.0.2' ]
@@ -136,7 +136,7 @@ groups:
[K8s PodStatus](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.34/#podstatus-v1-core).
- id: k8s.pod.hostname
type: string
- stability: development
+ stability: alpha
brief: >
Specifies the hostname of the Pod.
note: |
@@ -149,7 +149,7 @@ groups:
examples: [ 'collector-gateway' ]
- id: k8s.pod.start_time
type: string
- stability: development
+ stability: alpha
brief: >
The start timestamp of the Pod.
examples: [ '2025-12-04T08:41:03Z' ]
@@ -162,7 +162,7 @@ groups:
in ISO 8601 (RFC 3339 compatible) format.
- id: k8s.pod.label
type: template[string]
- stability: development
+ stability: alpha
brief: >
The label placed on the Pod, the `` being the label name, the value being the label value.
examples: ['my-app', 'x64', '']
@@ -177,7 +177,7 @@ groups:
the `k8s.pod.label.data` attribute with value `""`.
- id: k8s.pod.annotation
type: template[string]
- stability: development
+ stability: alpha
brief: >
The annotation placed on the Pod, the `` being the annotation name, the value being the annotation value.
note: |
@@ -192,7 +192,7 @@ groups:
examples: [ 'true', 'x64', '' ]
- id: k8s.container.name
type: string
- stability: development
+ stability: alpha
brief: >
The name of the Container from Pod specification, must be unique
within a Pod. Container runtime usually uses different globally unique
@@ -200,7 +200,7 @@ groups:
examples: ['redis']
- id: k8s.container.restart_count
type: int
- stability: development
+ stability: alpha
brief: >
Number of times the container was restarted. This attribute can be
used to identify a particular container (running or stopped) within a
@@ -214,19 +214,19 @@ groups:
- id: k8s.replicaset.uid
type: string
- stability: development
+ stability: alpha
brief: >
The UID of the ReplicaSet.
examples: ['275ecb36-5aa8-4c2a-9c47-d8bb681b9aff']
- id: k8s.replicaset.name
type: string
- stability: development
+ stability: alpha
brief: >
The name of the ReplicaSet.
examples: ['opentelemetry']
- id: k8s.replicaset.label
type: template[string]
- stability: development
+ stability: alpha
brief: >
The label placed on the ReplicaSet, the `` being the label name, the value being the label value, even if the value is empty.
note: |
@@ -240,7 +240,7 @@ groups:
examples: ['guestbook', '']
- id: k8s.replicaset.annotation
type: template[string]
- stability: development
+ stability: alpha
brief: >
The annotation placed on the ReplicaSet, the `` being the annotation name, the value being the annotation value, even if the value is empty.
note: |
@@ -278,19 +278,19 @@ groups:
examples: [ 'opentelemetry' ]
- id: k8s.deployment.uid
type: string
- stability: development
+ stability: alpha
brief: >
The UID of the Deployment.
examples: ['275ecb36-5aa8-4c2a-9c47-d8bb681b9aff']
- id: k8s.deployment.name
type: string
- stability: development
+ stability: alpha
brief: >
The name of the Deployment.
examples: ['opentelemetry']
- id: k8s.deployment.label
type: template[string]
- stability: development
+ stability: alpha
brief: >
The label placed on the Deployment, the `` being the label name, the value being the label value, even if the value is empty.
note: |
@@ -304,7 +304,7 @@ groups:
examples: ['guestbook', '']
- id: k8s.deployment.annotation
type: template[string]
- stability: development
+ stability: alpha
brief: >
The annotation placed on the Deployment, the `` being the annotation name, the value being the annotation value, even if the value is empty.
note: |
@@ -318,19 +318,19 @@ groups:
examples: ['1', '']
- id: k8s.statefulset.uid
type: string
- stability: development
+ stability: alpha
brief: >
The UID of the StatefulSet.
examples: ['275ecb36-5aa8-4c2a-9c47-d8bb681b9aff']
- id: k8s.statefulset.name
type: string
- stability: development
+ stability: alpha
brief: >
The name of the StatefulSet.
examples: ['opentelemetry']
- id: k8s.statefulset.label
type: template[string]
- stability: development
+ stability: alpha
brief: >
The label placed on the StatefulSet, the `` being the label name, the value being the label value, even if the value is empty.
note: |
@@ -344,7 +344,7 @@ groups:
examples: ['guestbook', '']
- id: k8s.statefulset.annotation
type: template[string]
- stability: development
+ stability: alpha
brief: >
The annotation placed on the StatefulSet, the `` being the annotation name, the value being the annotation value, even if the value is empty.
note: |
@@ -358,19 +358,19 @@ groups:
examples: ['1', '']
- id: k8s.daemonset.uid
type: string
- stability: development
+ stability: alpha
brief: >
The UID of the DaemonSet.
examples: ['275ecb36-5aa8-4c2a-9c47-d8bb681b9aff']
- id: k8s.daemonset.name
type: string
- stability: development
+ stability: alpha
brief: >
The name of the DaemonSet.
examples: ['opentelemetry']
- id: k8s.daemonset.label
type: template[string]
- stability: development
+ stability: alpha
brief: >
The label placed on the DaemonSet, the `` being the label name, the value being the label value, even if the value is empty.
note: |
@@ -384,7 +384,7 @@ groups:
examples: ['guestbook', '']
- id: k8s.daemonset.annotation
type: template[string]
- stability: development
+ stability: alpha
brief: >
The annotation placed on the DaemonSet, the `` being the annotation name, the value being the annotation value, even if the value is empty.
note: |
@@ -442,19 +442,19 @@ groups:
This attribute reflects the `type` field of spec.metrics[] in the HPA.
- id: k8s.job.uid
type: string
- stability: development
+ stability: alpha
brief: >
The UID of the Job.
examples: ['275ecb36-5aa8-4c2a-9c47-d8bb681b9aff']
- id: k8s.job.name
type: string
- stability: development
+ stability: alpha
brief: >
The name of the Job.
examples: ['opentelemetry']
- id: k8s.job.label
type: template[string]
- stability: development
+ stability: alpha
brief: >
The label placed on the Job, the `` being the label name, the value being the label value, even if the value is empty.
note: |
@@ -468,7 +468,7 @@ groups:
examples: ['ci', '']
- id: k8s.job.annotation
type: template[string]
- stability: development
+ stability: alpha
brief: >
The annotation placed on the Job, the `` being the annotation name, the value being the annotation value, even if the value is empty.
note: |
@@ -482,19 +482,19 @@ groups:
examples: ['1', '']
- id: k8s.cronjob.uid
type: string
- stability: development
+ stability: alpha
brief: >
The UID of the CronJob.
examples: ['275ecb36-5aa8-4c2a-9c47-d8bb681b9aff']
- id: k8s.cronjob.name
type: string
- stability: development
+ stability: alpha
brief: >
The name of the CronJob.
examples: ['opentelemetry']
- id: k8s.cronjob.label
type: template[string]
- stability: development
+ stability: alpha
brief: >
The label placed on the CronJob, the `` being the label name, the value being the label value.
note: |
@@ -507,7 +507,7 @@ groups:
examples: ['weekly', '']
- id: k8s.cronjob.annotation
type: template[string]
- stability: development
+ stability: alpha
brief: >
The cronjob annotation placed on the CronJob, the `` being the annotation name, the value being the annotation value.
note: |
diff --git a/templates/registry/markdown/stability.j2 b/templates/registry/markdown/stability.j2
index bcad44b73c..907d4a1ebc 100644
--- a/templates/registry/markdown/stability.j2
+++ b/templates/registry/markdown/stability.j2
@@ -4,6 +4,7 @@
{%- elif stability == "stable" %}
{%- elif stability == "release_candidate" %}
{%- elif stability == "deprecated" %}
+{%- elif stability == "alpha" %}
{%- elif stability == "experimental" %}
{%- elif stability == "development" %}
{%- else %}{{ "Unknown stability." }}
@@ -16,6 +17,7 @@
{%- elif stability == "stable" %}
{%- elif stability == "release_candidate" %}
{%- elif stability == "deprecated" %}
+{%- elif stability == "alpha" %}
{%- elif stability == "experimental" %}
{%- elif stability == "development" %}
{%- else %}{{ "Unknown stability." }}