Module: OpenTelemetry::SemConv::Incubating::K8S
- Defined in:
- lib/opentelemetry/semconv/incubating/k8s/metrics.rb,
lib/opentelemetry/semconv/incubating/k8s/attributes.rb
Metrics Names collapse
- K8S_CONTAINER_CPU_LIMIT =
Note:
Stability Level: development
Maximum CPU resource limit set for the container
See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details.
'k8s.container.cpu.limit'
- K8S_CONTAINER_CPU_REQUEST =
Note:
Stability Level: development
CPU resource requested for the container
See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details.
'k8s.container.cpu.request'
- K8S_CONTAINER_EPHEMERAL_STORAGE_LIMIT =
Note:
Stability Level: development
Maximum ephemeral storage resource limit set for the container
See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details.
'k8s.container.ephemeral_storage.limit'
- K8S_CONTAINER_EPHEMERAL_STORAGE_REQUEST =
Note:
Stability Level: development
Ephemeral storage resource requested for the container
See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details.
'k8s.container.ephemeral_storage.request'
- K8S_CONTAINER_MEMORY_LIMIT =
Note:
Stability Level: development
Maximum memory resource limit set for the container
See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details.
'k8s.container.memory.limit'
- K8S_CONTAINER_MEMORY_REQUEST =
Note:
Stability Level: development
Memory resource requested for the container
See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details.
'k8s.container.memory.request'
- K8S_CONTAINER_READY =
Note:
Stability Level: development
Indicates whether the container is currently marked as ready to accept traffic, based on its readiness probe (1 = ready, 0 = not ready)
This metric SHOULD reflect the value of the
ready
field in the K8s ContainerStatus. 'k8s.container.ready'
- K8S_CONTAINER_STORAGE_LIMIT =
Note:
Stability Level: development
Maximum storage resource limit set for the container
See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details.
'k8s.container.storage.limit'
- K8S_CONTAINER_STORAGE_REQUEST =
Note:
Stability Level: development
Storage resource requested for the container
See https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core for details.
'k8s.container.storage.request'
- K8S_CRONJOB_ACTIVE_JOBS =
Note:
Stability Level: development
The number of actively running jobs for a cronjob
This metric aligns with the
active
field of the K8s CronJobStatus. 'k8s.cronjob.active_jobs'
- K8S_DAEMONSET_CURRENT_SCHEDULED_NODES =
Note:
Stability Level: development
Number of nodes that are running at least 1 daemon pod and are supposed to run the daemon pod
This metric aligns with the
currentNumberScheduled
field of the K8s DaemonSetStatus. 'k8s.daemonset.current_scheduled_nodes'
- K8S_DAEMONSET_DESIRED_SCHEDULED_NODES =
Note:
Stability Level: development
Number of nodes that should be running the daemon pod (including nodes currently running the daemon pod)
This metric aligns with the
desiredNumberScheduled
field of the K8s DaemonSetStatus. 'k8s.daemonset.desired_scheduled_nodes'
- K8S_DAEMONSET_MISSCHEDULED_NODES =
Note:
Stability Level: development
Number of nodes that are running the daemon pod, but are not supposed to run the daemon pod
This metric aligns with the
numberMisscheduled
field of the K8s DaemonSetStatus. 'k8s.daemonset.misscheduled_nodes'
- K8S_DAEMONSET_READY_NODES =
Note:
Stability Level: development
Number of nodes that should be running the daemon pod and have one or more of the daemon pod running and ready
This metric aligns with the
numberReady
field of the K8s DaemonSetStatus. 'k8s.daemonset.ready_nodes'
- K8S_DEPLOYMENT_AVAILABLE_PODS =
Note:
Stability Level: development
Total number of available replica pods (ready for at least minReadySeconds) targeted by this deployment
This metric aligns with the
availableReplicas
field of the K8s DeploymentStatus. 'k8s.deployment.available_pods'
- K8S_DEPLOYMENT_DESIRED_PODS =
Note:
Stability Level: development
Number of desired replica pods in this deployment
This metric aligns with the
replicas
field of the K8s DeploymentSpec. 'k8s.deployment.desired_pods'
- K8S_HPA_CURRENT_PODS =
Note:
Stability Level: development
Current number of replica pods managed by this horizontal pod autoscaler, as last seen by the autoscaler
This metric aligns with the
currentReplicas
field of the K8s HorizontalPodAutoscalerStatus 'k8s.hpa.current_pods'
- K8S_HPA_DESIRED_PODS =
Note:
Stability Level: development
Desired number of replica pods managed by this horizontal pod autoscaler, as last calculated by the autoscaler
This metric aligns with the
desiredReplicas
field of the K8s HorizontalPodAutoscalerStatus 'k8s.hpa.desired_pods'
- K8S_HPA_MAX_PODS =
Note:
Stability Level: development
The upper limit for the number of replica pods to which the autoscaler can scale up
This metric aligns with the
maxReplicas
field of the K8s HorizontalPodAutoscalerSpec 'k8s.hpa.max_pods'
- K8S_HPA_METRIC_TARGET_CPU_AVERAGE_UTILIZATION =
Note:
Stability Level: development
Target average utilization, in percentage, for CPU resource in HPA config.
This metric aligns with the
averageUtilization
field of the K8s HPA MetricTarget. If the type of the metric isContainerResource
, thek8s.container.name
attribute MUST be set to identify the specific container within the pod to which the metric applies. 'k8s.hpa.metric.target.cpu.average_utilization'
- K8S_HPA_METRIC_TARGET_CPU_AVERAGE_VALUE =
Note:
Stability Level: development
Target average value for CPU resource in HPA config.
This metric aligns with the
averageValue
field of the K8s HPA MetricTarget. If the type of the metric isContainerResource
, thek8s.container.name
attribute MUST be set to identify the specific container within the pod to which the metric applies. 'k8s.hpa.metric.target.cpu.average_value'
- K8S_HPA_METRIC_TARGET_CPU_VALUE =
Note:
Stability Level: development
Target value for CPU resource in HPA config.
This metric aligns with the
value
field of the K8s HPA MetricTarget. If the type of the metric isContainerResource
, thek8s.container.name
attribute MUST be set to identify the specific container within the pod to which the metric applies. 'k8s.hpa.metric.target.cpu.value'
- K8S_HPA_MIN_PODS =
Note:
Stability Level: development
The lower limit for the number of replica pods to which the autoscaler can scale down
This metric aligns with the
minReplicas
field of the K8s HorizontalPodAutoscalerSpec 'k8s.hpa.min_pods'
- K8S_JOB_ACTIVE_PODS =
Note:
Stability Level: development
The number of pending and actively running pods for a job
This metric aligns with the
active
field of the K8s JobStatus. 'k8s.job.active_pods'
- K8S_JOB_DESIRED_SUCCESSFUL_PODS =
Note:
Stability Level: development
The desired number of successfully finished pods the job should be run with
This metric aligns with the
completions
field of the K8s JobSpec.. 'k8s.job.desired_successful_pods'
- K8S_JOB_FAILED_PODS =
Note:
Stability Level: development
The number of pods which reached phase Failed for a job
This metric aligns with the
failed
field of the K8s JobStatus. 'k8s.job.failed_pods'
- K8S_JOB_MAX_PARALLEL_PODS =
Note:
Stability Level: development
The max desired number of pods the job should run at any given time
This metric aligns with the
parallelism
field of the K8s JobSpec. 'k8s.job.max_parallel_pods'
- K8S_JOB_SUCCESSFUL_PODS =
Note:
Stability Level: development
The number of pods which reached phase Succeeded for a job
This metric aligns with the
succeeded
field of the K8s JobStatus. 'k8s.job.successful_pods'
- K8S_NODE_ALLOCATABLE_CPU =
Note:
Stability Level: development
Amount of cpu allocatable on the node
'k8s.node.allocatable.cpu'
- K8S_NODE_ALLOCATABLE_EPHEMERAL_STORAGE =
Note:
Stability Level: development
Amount of ephemeral-storage allocatable on the node
'k8s.node.allocatable.ephemeral_storage'
- K8S_NODE_ALLOCATABLE_MEMORY =
Note:
Stability Level: development
Amount of memory allocatable on the node
'k8s.node.allocatable.memory'
- K8S_NODE_ALLOCATABLE_PODS =
Note:
Stability Level: development
Amount of pods allocatable on the node
'k8s.node.allocatable.pods'
- K8S_NODE_CPU_TIME =
Note:
Stability Level: development
Total CPU time consumed
Total CPU time consumed by the specific Node on all available CPU cores
'k8s.node.cpu.time'
- K8S_NODE_CPU_USAGE =
Note:
Stability Level: development
Node’s CPU usage, measured in cpus. Range from 0 to the number of allocatable CPUs
CPU usage of the specific Node on all available CPU cores, averaged over the sample window
'k8s.node.cpu.usage'
- K8S_NODE_MEMORY_USAGE =
Note:
Stability Level: development
Memory usage of the Node
Total memory usage of the Node
'k8s.node.memory.usage'
- K8S_NODE_NETWORK_ERRORS =
Note:
Stability Level: development
Node network errors
'k8s.node.network.errors'
- K8S_NODE_NETWORK_IO =
Note:
Stability Level: development
Network bytes for the Node
'k8s.node.network.io'
- K8S_NODE_UPTIME =
Note:
Stability Level: development
The time the Node has been running
Instrumentations SHOULD use a gauge with type
double
and measure uptime in seconds as a floating point number with the highest precision available. The actual accuracy would depend on the instrumentation and operating system. 'k8s.node.uptime'
- K8S_POD_CPU_TIME =
Note:
Stability Level: development
Total CPU time consumed
Total CPU time consumed by the specific Pod on all available CPU cores
'k8s.pod.cpu.time'
- K8S_POD_CPU_USAGE =
Note:
Stability Level: development
Pod’s CPU usage, measured in cpus. Range from 0 to the number of allocatable CPUs
CPU usage of the specific Pod on all available CPU cores, averaged over the sample window
'k8s.pod.cpu.usage'
- K8S_POD_MEMORY_USAGE =
Note:
Stability Level: development
Memory usage of the Pod
Total memory usage of the Pod
'k8s.pod.memory.usage'
- K8S_POD_NETWORK_ERRORS =
Note:
Stability Level: development
Pod network errors
'k8s.pod.network.errors'
- K8S_POD_NETWORK_IO =
Note:
Stability Level: development
Network bytes for the Pod
'k8s.pod.network.io'
- K8S_POD_UPTIME =
Note:
Stability Level: development
The time the Pod has been running
Instrumentations SHOULD use a gauge with type
double
and measure uptime in seconds as a floating point number with the highest precision available. The actual accuracy would depend on the instrumentation and operating system. 'k8s.pod.uptime'
- K8S_REPLICASET_AVAILABLE_PODS =
Note:
Stability Level: development
Total number of available replica pods (ready for at least minReadySeconds) targeted by this replicaset
This metric aligns with the
availableReplicas
field of the K8s ReplicaSetStatus. 'k8s.replicaset.available_pods'
- K8S_REPLICASET_DESIRED_PODS =
Note:
Stability Level: development
Number of desired replica pods in this replicaset
This metric aligns with the
replicas
field of the K8s ReplicaSetSpec. 'k8s.replicaset.desired_pods'
- K8S_REPLICATION_CONTROLLER_AVAILABLE_PODS =
Deprecated.
“Replaced by
k8s.replicationcontroller.available_pods
.”, “reason”: “renamed”, “renamed_to”: “k8s.replicationcontroller.available_pods”Note:Stability Level: development
Deprecated, use
k8s.replicationcontroller.available_pods
instead. 'k8s.replication_controller.available_pods'
- K8S_REPLICATION_CONTROLLER_DESIRED_PODS =
Deprecated.
“Replaced by
k8s.replicationcontroller.desired_pods
.”, “reason”: “renamed”, “renamed_to”: “k8s.replicationcontroller.desired_pods”Note:Stability Level: development
Deprecated, use
k8s.replicationcontroller.desired_pods
instead. 'k8s.replication_controller.desired_pods'
- K8S_REPLICATIONCONTROLLER_AVAILABLE_PODS =
Note:
Stability Level: development
Total number of available replica pods (ready for at least minReadySeconds) targeted by this replication controller
This metric aligns with the
availableReplicas
field of the K8s ReplicationControllerStatus 'k8s.replicationcontroller.available_pods'
- K8S_REPLICATIONCONTROLLER_DESIRED_PODS =
Note:
Stability Level: development
Number of desired replica pods in this replication controller
This metric aligns with the
replicas
field of the K8s ReplicationControllerSpec 'k8s.replicationcontroller.desired_pods'
- K8S_RESOURCEQUOTA_CPU_LIMIT_HARD =
Note:
Stability Level: development
The CPU limits in a specific namespace. The value represents the configured quota limit of the resource in the namespace.
This metric is retrieved from the
hard
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.cpu.limit.hard'
- K8S_RESOURCEQUOTA_CPU_LIMIT_USED =
Note:
Stability Level: development
The CPU limits in a specific namespace. The value represents the current observed total usage of the resource in the namespace.
This metric is retrieved from the
used
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.cpu.limit.used'
- K8S_RESOURCEQUOTA_CPU_REQUEST_HARD =
Note:
Stability Level: development
The CPU requests in a specific namespace. The value represents the configured quota limit of the resource in the namespace.
This metric is retrieved from the
hard
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.cpu.request.hard'
- K8S_RESOURCEQUOTA_CPU_REQUEST_USED =
Note:
Stability Level: development
The CPU requests in a specific namespace. The value represents the current observed total usage of the resource in the namespace.
This metric is retrieved from the
used
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.cpu.request.used'
- K8S_RESOURCEQUOTA_EPHEMERAL_STORAGE_LIMIT_HARD =
Note:
Stability Level: development
The sum of local ephemeral storage limits in the namespace. The value represents the configured quota limit of the resource in the namespace.
This metric is retrieved from the
hard
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.ephemeral_storage.limit.hard'
- K8S_RESOURCEQUOTA_EPHEMERAL_STORAGE_LIMIT_USED =
Note:
Stability Level: development
The sum of local ephemeral storage limits in the namespace. The value represents the current observed total usage of the resource in the namespace.
This metric is retrieved from the
used
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.ephemeral_storage.limit.used'
- K8S_RESOURCEQUOTA_EPHEMERAL_STORAGE_REQUEST_HARD =
Note:
Stability Level: development
The sum of local ephemeral storage requests in the namespace. The value represents the configured quota limit of the resource in the namespace.
This metric is retrieved from the
hard
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.ephemeral_storage.request.hard'
- K8S_RESOURCEQUOTA_EPHEMERAL_STORAGE_REQUEST_USED =
Note:
Stability Level: development
The sum of local ephemeral storage requests in the namespace. The value represents the current observed total usage of the resource in the namespace.
This metric is retrieved from the
used
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.ephemeral_storage.request.used'
- K8S_RESOURCEQUOTA_HUGEPAGE_COUNT_REQUEST_HARD =
Note:
Stability Level: development
The huge page requests in a specific namespace. The value represents the configured quota limit of the resource in the namespace.
This metric is retrieved from the
hard
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.hugepage_count.request.hard'
- K8S_RESOURCEQUOTA_HUGEPAGE_COUNT_REQUEST_USED =
Note:
Stability Level: development
The huge page requests in a specific namespace. The value represents the current observed total usage of the resource in the namespace.
This metric is retrieved from the
used
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.hugepage_count.request.used'
- K8S_RESOURCEQUOTA_MEMORY_LIMIT_HARD =
Note:
Stability Level: development
The memory limits in a specific namespace. The value represents the configured quota limit of the resource in the namespace.
This metric is retrieved from the
hard
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.memory.limit.hard'
- K8S_RESOURCEQUOTA_MEMORY_LIMIT_USED =
Note:
Stability Level: development
The memory limits in a specific namespace. The value represents the current observed total usage of the resource in the namespace.
This metric is retrieved from the
used
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.memory.limit.used'
- K8S_RESOURCEQUOTA_MEMORY_REQUEST_HARD =
Note:
Stability Level: development
The memory requests in a specific namespace. The value represents the configured quota limit of the resource in the namespace.
This metric is retrieved from the
hard
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.memory.request.hard'
- K8S_RESOURCEQUOTA_MEMORY_REQUEST_USED =
Note:
Stability Level: development
The memory requests in a specific namespace. The value represents the current observed total usage of the resource in the namespace.
This metric is retrieved from the
used
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.memory.request.used'
- K8S_RESOURCEQUOTA_OBJECT_COUNT_HARD =
Note:
Stability Level: development
The object count limits in a specific namespace. The value represents the configured quota limit of the resource in the namespace.
This metric is retrieved from the
hard
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.object_count.hard'
- K8S_RESOURCEQUOTA_OBJECT_COUNT_USED =
Note:
Stability Level: development
The object count limits in a specific namespace. The value represents the current observed total usage of the resource in the namespace.
This metric is retrieved from the
used
field of the K8s ResourceQuotaStatus. 'k8s.resourcequota.object_count.used'
- K8S_RESOURCEQUOTA_PERSISTENTVOLUMECLAIM_COUNT_HARD =
Note:
Stability Level: development
The total number of PersistentVolumeClaims that can exist in the namespace. The value represents the configured quota limit of the resource in the namespace.
This metric is retrieved from the
hard
field of the K8s ResourceQuotaStatus.The
k8s.storageclass.name
should be required when a resource quota is defined for a specific storage class. 'k8s.resourcequota.persistentvolumeclaim_count.hard'
- K8S_RESOURCEQUOTA_PERSISTENTVOLUMECLAIM_COUNT_USED =
Note:
Stability Level: development
The total number of PersistentVolumeClaims that can exist in the namespace. The value represents the current observed total usage of the resource in the namespace.
This metric is retrieved from the
used
field of the K8s ResourceQuotaStatus.The
k8s.storageclass.name
should be required when a resource quota is defined for a specific storage class. 'k8s.resourcequota.persistentvolumeclaim_count.used'
- K8S_RESOURCEQUOTA_STORAGE_REQUEST_HARD =
Note:
Stability Level: development
The storage requests in a specific namespace. The value represents the configured quota limit of the resource in the namespace.
This metric is retrieved from the
hard
field of the K8s ResourceQuotaStatus.The
k8s.storageclass.name
should be required when a resource quota is defined for a specific storage class. 'k8s.resourcequota.storage.request.hard'
- K8S_RESOURCEQUOTA_STORAGE_REQUEST_USED =
Note:
Stability Level: development
The storage requests in a specific namespace. The value represents the current observed total usage of the resource in the namespace.
This metric is retrieved from the
used
field of the K8s ResourceQuotaStatus.The
k8s.storageclass.name
should be required when a resource quota is defined for a specific storage class. 'k8s.resourcequota.storage.request.used'
- K8S_STATEFULSET_CURRENT_PODS =
Note:
Stability Level: development
The number of replica pods created by the statefulset controller from the statefulset version indicated by currentRevision
This metric aligns with the
currentReplicas
field of the K8s StatefulSetStatus. 'k8s.statefulset.current_pods'
- K8S_STATEFULSET_DESIRED_PODS =
Note:
Stability Level: development
Number of desired replica pods in this statefulset
This metric aligns with the
replicas
field of the K8s StatefulSetSpec. 'k8s.statefulset.desired_pods'
- K8S_STATEFULSET_READY_PODS =
Note:
Stability Level: development
The number of replica pods created for this statefulset with a Ready Condition
This metric aligns with the
readyReplicas
field of the K8s StatefulSetStatus. 'k8s.statefulset.ready_pods'
- K8S_STATEFULSET_UPDATED_PODS =
Note:
Stability Level: development
Number of replica pods created by the statefulset controller from the statefulset version indicated by updateRevision
This metric aligns with the
updatedReplicas
field of the K8s StatefulSetStatus. 'k8s.statefulset.updated_pods'
Attribute Names collapse
- K8S_CONTAINER_RESTART_COUNT =
Note:
Stability Level: development
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.restart_count'
- K8S_CONTAINER_STATUS_REASON =
Note:
Stability Level: development
The reason for the container state. Corresponds to the
reason
field of the: K8s ContainerStateWaiting or K8s ContainerStateTerminated 'k8s.container.status.reason'
- K8S_CONTAINER_STATUS_STATE =
Note:
Stability Level: development
The state of the container. K8s ContainerState
'k8s.container.status.state'
- K8S_NAMESPACE_PHASE =
Note:
Stability Level: development
The phase of the K8s namespace.
This attribute aligns with the
phase
field of the K8s NamespaceStatus 'k8s.namespace.phase'
- K8S_NODE_CONDITION_STATUS =
Note:
Stability Level: development
The status of the condition, one of True, False, Unknown.
This attribute aligns with the
status
field of the NodeCondition 'k8s.node.condition.status'
- K8S_CLUSTER_NAME =
Note:
Stability Level: development
The name of the cluster.
'k8s.cluster.name'
- K8S_CLUSTER_UID =
Note:
Stability Level: development
A pseudo-ID for the cluster, set to the UID of the
kube-system
namespace.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 official APIs. In the meantime, we are able to use theuid
of thekube-system
namespace as a proxy for cluster ID. Read on for the rationale.Every object created in a K8s cluster is assigned a distinct UID. The
kube-system
namespace is used by Kubernetes itself and will exist for the lifetime of the cluster. Using theuid
of thekube-system
namespace is a reasonable proxy for the K8s ClusterID as it will only change if the cluster is rebuilt. Furthermore, Kubernetes UIDs are UUIDs as standardized by ISO/IEC 9834-8 and ITU-T X.667. Which states:If generated according to one of the mechanisms defined in Rec. ITU-T X.667 | ISO/IEC 9834-8, a UUID is either guaranteed to be different from all other UUIDs generated before 3603 A.D., or is extremely likely to be different (depending on the mechanism chosen).
Therefore, UIDs between clusters should be extremely unlikely to conflict.
'k8s.cluster.uid'
- K8S_CONTAINER_NAME =
Note:
Stability Level: development
The name of the Container from Pod specification, must be unique within a Pod. Container runtime usually uses different globally unique name (
container.name
). 'k8s.container.name'
- K8S_CONTAINER_STATUS_LAST_TERMINATED_REASON =
Note:
Stability Level: development
Last terminated reason of the Container.
'k8s.container.status.last_terminated_reason'
- K8S_CRONJOB_ANNOTATION_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The cronjob annotation placed on the CronJob, the
<key>
being the annotation name, the value being the annotation value.Examples:
- An annotation
retries
with value4
SHOULD be recorded as thek8s.cronjob.annotation.retries
attribute with value"4"
. - An annotation
data
with empty string value SHOULD be recorded as thek8s.cronjob.annotation.data
attribute with value""
.
- An annotation
->(key) { "k8s.cronjob.annotation.#{key}" }
- K8S_CRONJOB_LABEL_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The label placed on the CronJob, the
<key>
being the label name, the value being the label value.Examples:
- A label
type
with valueweekly
SHOULD be recorded as thek8s.cronjob.label.type
attribute with value"weekly"
. - A label
automated
with empty string value SHOULD be recorded as thek8s.cronjob.label.automated
attribute with value""
.
- A label
->(key) { "k8s.cronjob.label.#{key}" }
- K8S_CRONJOB_NAME =
Note:
Stability Level: development
The name of the CronJob.
'k8s.cronjob.name'
- K8S_CRONJOB_UID =
Note:
Stability Level: development
The UID of the CronJob.
'k8s.cronjob.uid'
- K8S_DAEMONSET_ANNOTATION_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The annotation placed on the DaemonSet, the
<key>
being the annotation name, the value being the annotation value, even if the value is empty.Examples:
- A label
replicas
with value1
SHOULD be recorded as thek8s.daemonset.annotation.replicas
attribute with value"1"
. - A label
data
with empty string value SHOULD be recorded as thek8s.daemonset.annotation.data
attribute with value""
.
- A label
->(key) { "k8s.daemonset.annotation.#{key}" }
- K8S_DAEMONSET_LABEL_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The label placed on the DaemonSet, the
<key>
being the label name, the value being the label value, even if the value is empty.Examples:
- A label
app
with valueguestbook
SHOULD be recorded as thek8s.daemonset.label.app
attribute with value"guestbook"
. - A label
data
with empty string value SHOULD be recorded as thek8s.daemonset.label.injected
attribute with value""
.
- A label
->(key) { "k8s.daemonset.label.#{key}" }
- K8S_DAEMONSET_NAME =
Note:
Stability Level: development
The name of the DaemonSet.
'k8s.daemonset.name'
- K8S_DAEMONSET_UID =
Note:
Stability Level: development
The UID of the DaemonSet.
'k8s.daemonset.uid'
- K8S_DEPLOYMENT_ANNOTATION_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The annotation placed on the Deployment, the
<key>
being the annotation name, the value being the annotation value, even if the value is empty.Examples:
- A label
replicas
with value1
SHOULD be recorded as thek8s.deployment.annotation.replicas
attribute with value"1"
. - A label
data
with empty string value SHOULD be recorded as thek8s.deployment.annotation.data
attribute with value""
.
- A label
->(key) { "k8s.deployment.annotation.#{key}" }
- K8S_DEPLOYMENT_LABEL_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The label placed on the Deployment, the
<key>
being the label name, the value being the label value, even if the value is empty.Examples:
- A label
replicas
with value0
SHOULD be recorded as thek8s.deployment.label.app
attribute with value"guestbook"
. - A label
injected
with empty string value SHOULD be recorded as thek8s.deployment.label.injected
attribute with value""
.
- A label
->(key) { "k8s.deployment.label.#{key}" }
- K8S_DEPLOYMENT_NAME =
Note:
Stability Level: development
The name of the Deployment.
'k8s.deployment.name'
- K8S_DEPLOYMENT_UID =
Note:
Stability Level: development
The UID of the Deployment.
'k8s.deployment.uid'
- K8S_HPA_METRIC_TYPE =
Note:
Stability Level: development
The type of metric source for the horizontal pod autoscaler.
This attribute reflects the
type
field of spec.metrics[] in the HPA. 'k8s.hpa.metric.type'
- K8S_HPA_NAME =
Note:
Stability Level: development
The name of the horizontal pod autoscaler.
'k8s.hpa.name'
- K8S_HPA_SCALETARGETREF_API_VERSION =
Note:
Stability Level: development
The API version of the target resource to scale for the HorizontalPodAutoscaler.
This maps to the
apiVersion
field in thescaleTargetRef
of the HPA spec. 'k8s.hpa.scaletargetref.api_version'
- K8S_HPA_SCALETARGETREF_KIND =
Note:
Stability Level: development
The kind of the target resource to scale for the HorizontalPodAutoscaler.
This maps to the
kind
field in thescaleTargetRef
of the HPA spec. 'k8s.hpa.scaletargetref.kind'
- K8S_HPA_SCALETARGETREF_NAME =
Note:
Stability Level: development
The name of the target resource to scale for the HorizontalPodAutoscaler.
This maps to the
name
field in thescaleTargetRef
of the HPA spec. 'k8s.hpa.scaletargetref.name'
- K8S_HPA_UID =
Note:
Stability Level: development
The UID of the horizontal pod autoscaler.
'k8s.hpa.uid'
- K8S_HUGEPAGE_SIZE =
Note:
Stability Level: development
The size (identifier) of the K8s huge page.
'k8s.hugepage.size'
- K8S_JOB_ANNOTATION_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The annotation placed on the Job, the
<key>
being the annotation name, the value being the annotation value, even if the value is empty.Examples:
- A label
number
with value1
SHOULD be recorded as thek8s.job.annotation.number
attribute with value"1"
. - A label
data
with empty string value SHOULD be recorded as thek8s.job.annotation.data
attribute with value""
.
- A label
->(key) { "k8s.job.annotation.#{key}" }
- K8S_JOB_LABEL_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The label placed on the Job, the
<key>
being the label name, the value being the label value, even if the value is empty.Examples:
- A label
jobtype
with valueci
SHOULD be recorded as thek8s.job.label.jobtype
attribute with value"ci"
. - A label
data
with empty string value SHOULD be recorded as thek8s.job.label.automated
attribute with value""
.
- A label
->(key) { "k8s.job.label.#{key}" }
- K8S_JOB_NAME =
Note:
Stability Level: development
The name of the Job.
'k8s.job.name'
- K8S_JOB_UID =
Note:
Stability Level: development
The UID of the Job.
'k8s.job.uid'
- K8S_NAMESPACE_ANNOTATION_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The annotation placed on the Namespace, the
<key>
being the annotation name, the value being the annotation value, even if the value is empty.Examples:
- A label
ttl
with value0
SHOULD be recorded as thek8s.namespace.annotation.ttl
attribute with value"0"
. - A label
data
with empty string value SHOULD be recorded as thek8s.namespace.annotation.data
attribute with value""
.
- A label
->(key) { "k8s.namespace.annotation.#{key}" }
- K8S_NAMESPACE_LABEL_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The label placed on the Namespace, the
<key>
being the label name, the value being the label value, even if the value is empty.Examples:
- A label
kubernetes.io/metadata.name
with valuedefault
SHOULD be recorded as thek8s.namespace.label.kubernetes.io/metadata.name
attribute with value"default"
. - A label
data
with empty string value SHOULD be recorded as thek8s.namespace.label.data
attribute with value""
.
- A label
->(key) { "k8s.namespace.label.#{key}" }
- K8S_NAMESPACE_NAME =
Note:
Stability Level: development
The name of the namespace that the pod is running in.
'k8s.namespace.name'
- K8S_NODE_ANNOTATION_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The annotation placed on the Node, the
<key>
being the annotation name, the value being the annotation value, even if the value is empty.Examples:
- An annotation
node.alpha.kubernetes.io/ttl
with value0
SHOULD be recorded as thek8s.node.annotation.node.alpha.kubernetes.io/ttl
attribute with value"0"
. - An annotation
data
with empty string value SHOULD be recorded as thek8s.node.annotation.data
attribute with value""
.
- An annotation
->(key) { "k8s.node.annotation.#{key}" }
- K8S_NODE_CONDITION_TYPE =
Note:
Stability Level: development
The condition type of a K8s Node.
K8s Node conditions as described by K8s documentation.
This attribute aligns with the
type
field of the NodeConditionThe set of possible values is not limited to those listed here. Managed Kubernetes environments, or custom controllers MAY introduce additional node condition types. When this occurs, the exact value as reported by the Kubernetes API SHOULD be used.
'k8s.node.condition.type'
- K8S_NODE_LABEL_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The label placed on the Node, the
<key>
being the label name, the value being the label value, even if the value is empty.Examples:
- A label
kubernetes.io/arch
with valuearm64
SHOULD be recorded as thek8s.node.label.kubernetes.io/arch
attribute with value"arm64"
. - A label
data
with empty string value SHOULD be recorded as thek8s.node.label.data
attribute with value""
.
- A label
->(key) { "k8s.node.label.#{key}" }
- K8S_NODE_NAME =
Note:
Stability Level: development
The name of the Node.
'k8s.node.name'
- K8S_NODE_UID =
Note:
Stability Level: development
The UID of the Node.
'k8s.node.uid'
- K8S_POD_ANNOTATION_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The annotation placed on the Pod, the
<key>
being the annotation name, the value being the annotation value.Examples:
- An annotation
kubernetes.io/enforce-mountable-secrets
with valuetrue
SHOULD be recorded as thek8s.pod.annotation.kubernetes.io/enforce-mountable-secrets
attribute with value"true"
. - An annotation
mycompany.io/arch
with valuex64
SHOULD be recorded as thek8s.pod.annotation.mycompany.io/arch
attribute with value"x64"
. - An annotation
data
with empty string value SHOULD be recorded as thek8s.pod.annotation.data
attribute with value""
.
- An annotation
->(key) { "k8s.pod.annotation.#{key}" }
- K8S_POD_LABEL_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The label placed on the Pod, the
<key>
being the label name, the value being the label value.Examples:
- A label
app
with valuemy-app
SHOULD be recorded as thek8s.pod.label.app
attribute with value"my-app"
. - A label
mycompany.io/arch
with valuex64
SHOULD be recorded as thek8s.pod.label.mycompany.io/arch
attribute with value"x64"
. - A label
data
with empty string value SHOULD be recorded as thek8s.pod.label.data
attribute with value""
.
- A label
->(key) { "k8s.pod.label.#{key}" }
- K8S_POD_LABELS_LAMBDA =
Deprecated.
“Replaced by
k8s.pod.label
.”, “reason”: “renamed”, “renamed_to”: “k8s.pod.label”Note:Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
Deprecated, use
k8s.pod.label
instead. ->(key) { "k8s.pod.labels.#{key}" }
- K8S_POD_NAME =
Note:
Stability Level: development
The name of the Pod.
'k8s.pod.name'
- K8S_POD_UID =
Note:
Stability Level: development
The UID of the Pod.
'k8s.pod.uid'
- K8S_REPLICASET_ANNOTATION_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The annotation placed on the ReplicaSet, the
<key>
being the annotation name, the value being the annotation value, even if the value is empty.Examples:
- A label
replicas
with value0
SHOULD be recorded as thek8s.replicaset.annotation.replicas
attribute with value"0"
. - A label
data
with empty string value SHOULD be recorded as thek8s.replicaset.annotation.data
attribute with value""
.
- A label
->(key) { "k8s.replicaset.annotation.#{key}" }
- K8S_REPLICASET_LABEL_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The label placed on the ReplicaSet, the
<key>
being the label name, the value being the label value, even if the value is empty.Examples:
- A label
app
with valueguestbook
SHOULD be recorded as thek8s.replicaset.label.app
attribute with value"guestbook"
. - A label
injected
with empty string value SHOULD be recorded as thek8s.replicaset.label.injected
attribute with value""
.
- A label
->(key) { "k8s.replicaset.label.#{key}" }
- K8S_REPLICASET_NAME =
Note:
Stability Level: development
The name of the ReplicaSet.
'k8s.replicaset.name'
- K8S_REPLICASET_UID =
Note:
Stability Level: development
The UID of the ReplicaSet.
'k8s.replicaset.uid'
- K8S_REPLICATIONCONTROLLER_NAME =
Note:
Stability Level: development
The name of the replication controller.
'k8s.replicationcontroller.name'
- K8S_REPLICATIONCONTROLLER_UID =
Note:
Stability Level: development
The UID of the replication controller.
'k8s.replicationcontroller.uid'
- K8S_RESOURCEQUOTA_NAME =
Note:
Stability Level: development
The name of the resource quota.
'k8s.resourcequota.name'
- K8S_RESOURCEQUOTA_RESOURCE_NAME =
Note:
Stability Level: development
The name of the K8s resource a resource quota defines.
The value for this attribute can be either the full
count/<resource>[.<group>]
string (e.g., count/deployments.apps, count/pods), or, for certain core Kubernetes resources, just the resource name (e.g., pods, services, configmaps). Both forms are supported by Kubernetes for object count quotas. See Kubernetes Resource Quotas documentation for more details. 'k8s.resourcequota.resource_name'
- K8S_RESOURCEQUOTA_UID =
Note:
Stability Level: development
The UID of the resource quota.
'k8s.resourcequota.uid'
- K8S_STATEFULSET_ANNOTATION_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The annotation placed on the StatefulSet, the
<key>
being the annotation name, the value being the annotation value, even if the value is empty.Examples:
- A label
replicas
with value1
SHOULD be recorded as thek8s.statefulset.annotation.replicas
attribute with value"1"
. - A label
data
with empty string value SHOULD be recorded as thek8s.statefulset.annotation.data
attribute with value""
.
- A label
->(key) { "k8s.statefulset.annotation.#{key}" }
- K8S_STATEFULSET_LABEL_LAMBDA =
Note:
Stability Level: development
Must be called with a key for the full attribute name. See notes below about the expectations for the state of the key.
The label placed on the StatefulSet, the
<key>
being the label name, the value being the label value, even if the value is empty.Examples:
- A label
replicas
with value0
SHOULD be recorded as thek8s.statefulset.label.app
attribute with value"guestbook"
. - A label
injected
with empty string value SHOULD be recorded as thek8s.statefulset.label.injected
attribute with value""
.
- A label
->(key) { "k8s.statefulset.label.#{key}" }
- K8S_STATEFULSET_NAME =
Note:
Stability Level: development
The name of the StatefulSet.
'k8s.statefulset.name'
- K8S_STATEFULSET_UID =
Note:
Stability Level: development
The UID of the StatefulSet.
'k8s.statefulset.uid'
- K8S_STORAGECLASS_NAME =
Note:
Stability Level: development
The name of K8s StorageClass object.
'k8s.storageclass.name'
- K8S_VOLUME_NAME =
Note:
Stability Level: development
The name of the K8s volume.
'k8s.volume.name'
- K8S_VOLUME_TYPE =
Note:
Stability Level: development
The type of the K8s volume.
'k8s.volume.type'