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_LIMIT_UTILIZATION =
Note:

Stability Level: development

The ratio of container CPU usage to its CPU limit.

The value range is [0.0,1.0]. A value of 1.0 means the container is using 100% of its CPU limit. If the CPU limit is not set, this metric SHOULD NOT be emitted for that container.

'k8s.container.cpu.limit_utilization'
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_CPU_REQUEST_UTILIZATION =
Note:

Stability Level: development

The ratio of container CPU usage to its CPU request.

'k8s.container.cpu.request_utilization'
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 =
Deprecated.

Replaced by k8s.cronjob.job.active.

Note:

Stability Level: development

Deprecated, use k8s.cronjob.job.active instead.

This metric aligns with the active field of the K8s CronJobStatus.

'k8s.cronjob.active_jobs'
K8S_CRONJOB_JOB_ACTIVE =
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.job.active'
K8S_DAEMONSET_CURRENT_SCHEDULED_NODES =
Deprecated.

Replaced by k8s.daemonset.node.current_scheduled.

Note:

Stability Level: development

Deprecated, use k8s.daemonset.node.current_scheduled instead.

This metric aligns with the currentNumberScheduled field of the K8s DaemonSetStatus.

'k8s.daemonset.current_scheduled_nodes'
K8S_DAEMONSET_DESIRED_SCHEDULED_NODES =
Deprecated.

Replaced by k8s.daemonset.node.desired_scheduled.

Note:

Stability Level: development

Deprecated, use k8s.daemonset.node.desired_scheduled instead.

This metric aligns with the desiredNumberScheduled field of the K8s DaemonSetStatus.

'k8s.daemonset.desired_scheduled_nodes'
K8S_DAEMONSET_MISSCHEDULED_NODES =
Deprecated.

Replaced by k8s.daemonset.node.misscheduled.

Note:

Stability Level: development

Deprecated, use k8s.daemonset.node.misscheduled instead.

This metric aligns with the numberMisscheduled field of the K8s DaemonSetStatus.

'k8s.daemonset.misscheduled_nodes'
K8S_DAEMONSET_NODE_CURRENT_SCHEDULED =
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.node.current_scheduled'
K8S_DAEMONSET_NODE_DESIRED_SCHEDULED =
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.node.desired_scheduled'
K8S_DAEMONSET_NODE_MISSCHEDULED =
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.node.misscheduled'
K8S_DAEMONSET_NODE_READY =
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.node.ready'
K8S_DAEMONSET_READY_NODES =
Deprecated.

Replaced by k8s.daemonset.node.ready.

Note:

Stability Level: development

Deprecated, use k8s.daemonset.node.ready instead.

This metric aligns with the numberReady field of the K8s DaemonSetStatus.

'k8s.daemonset.ready_nodes'
K8S_DEPLOYMENT_AVAILABLE_PODS =
Deprecated.

Replaced by k8s.deployment.pod.available.

Note:

Stability Level: development

Deprecated, use k8s.deployment.pod.available instead.

This metric aligns with the availableReplicas field of the K8s DeploymentStatus.

'k8s.deployment.available_pods'
K8S_DEPLOYMENT_DESIRED_PODS =
Deprecated.

Replaced by k8s.deployment.pod.desired.

Note:

Stability Level: development

Deprecated, use k8s.deployment.pod.desired instead.

This metric aligns with the replicas field of the K8s DeploymentSpec.

'k8s.deployment.desired_pods'
K8S_DEPLOYMENT_POD_AVAILABLE =
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.pod.available'
K8S_DEPLOYMENT_POD_DESIRED =
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.pod.desired'
K8S_HPA_CURRENT_PODS =
Deprecated.

Replaced by k8s.hpa.pod.current.

Note:

Stability Level: development

Deprecated, use k8s.hpa.pod.current instead.

This metric aligns with the currentReplicas field of the K8s HorizontalPodAutoscalerStatus

'k8s.hpa.current_pods'
K8S_HPA_DESIRED_PODS =
Deprecated.

Replaced by k8s.hpa.pod.desired.

Note:

Stability Level: development

Deprecated, use k8s.hpa.pod.desired instead.

This metric aligns with the desiredReplicas field of the K8s HorizontalPodAutoscalerStatus

'k8s.hpa.desired_pods'
K8S_HPA_MAX_PODS =
Deprecated.

Replaced by k8s.hpa.pod.max.

Note:

Stability Level: development

Deprecated, use k8s.hpa.pod.max instead.

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 is ContainerResource, the k8s.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 is ContainerResource, the k8s.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 is ContainerResource, the k8s.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 =
Deprecated.

Replaced by k8s.hpa.pod.min.

Note:

Stability Level: development

Deprecated, use k8s.hpa.pod.min instead.

This metric aligns with the minReplicas field of the K8s HorizontalPodAutoscalerSpec

'k8s.hpa.min_pods'
K8S_HPA_POD_CURRENT =
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.pod.current'
K8S_HPA_POD_DESIRED =
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.pod.desired'
K8S_HPA_POD_MAX =
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.pod.max'
K8S_HPA_POD_MIN =
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.pod.min'
K8S_JOB_ACTIVE_PODS =
Deprecated.

Replaced by k8s.job.pod.active.

Note:

Stability Level: development

Deprecated, use k8s.job.pod.active instead.

This metric aligns with the active field of the K8s JobStatus.

'k8s.job.active_pods'
K8S_JOB_DESIRED_SUCCESSFUL_PODS =
Deprecated.

Replaced by k8s.job.pod.desired_successful.

Note:

Stability Level: development

Deprecated, use k8s.job.pod.desired_successful instead.

This metric aligns with the completions field of the K8s JobSpec..

'k8s.job.desired_successful_pods'
K8S_JOB_FAILED_PODS =
Deprecated.

Replaced by k8s.job.pod.failed.

Note:

Stability Level: development

Deprecated, use k8s.job.pod.failed instead.

This metric aligns with the failed field of the K8s JobStatus.

'k8s.job.failed_pods'
K8S_JOB_MAX_PARALLEL_PODS =
Deprecated.

Replaced by k8s.job.pod.max_parallel.

Note:

Stability Level: development

Deprecated, use k8s.job.pod.max_parallel instead.

This metric aligns with the parallelism field of the K8s JobSpec.

'k8s.job.max_parallel_pods'
K8S_JOB_POD_ACTIVE =
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.pod.active'
K8S_JOB_POD_DESIRED_SUCCESSFUL =
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.pod.desired_successful'
K8S_JOB_POD_FAILED =
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.pod.failed'
K8S_JOB_POD_MAX_PARALLEL =
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.pod.max_parallel'
K8S_JOB_POD_SUCCESSFUL =
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.pod.successful'
K8S_JOB_SUCCESSFUL_PODS =
Deprecated.

Replaced by k8s.job.pod.successful.

Note:

Stability Level: development

Deprecated, use k8s.job.pod.successful instead.

This metric aligns with the succeeded field of the K8s JobStatus.

'k8s.job.successful_pods'
K8S_NODE_ALLOCATABLE_CPU =
Deprecated.

Replaced by k8s.node.cpu.allocatable.

Note:

Stability Level: development

Deprecated, use k8s.node.cpu.allocatable instead.

'k8s.node.allocatable.cpu'
K8S_NODE_ALLOCATABLE_EPHEMERAL_STORAGE =
Deprecated.

Replaced by k8s.node.ephemeral_storage.allocatable.

Note:

Stability Level: development

Deprecated, use k8s.node.ephemeral_storage.allocatable instead.

'k8s.node.allocatable.ephemeral_storage'
K8S_NODE_ALLOCATABLE_MEMORY =
Deprecated.

Replaced by k8s.node.memory.allocatable.

Note:

Stability Level: development

Deprecated, use k8s.node.memory.allocatable instead.

'k8s.node.allocatable.memory'
K8S_NODE_ALLOCATABLE_PODS =
Deprecated.

Replaced by k8s.node.pod.allocatable.

Note:

Stability Level: development

Deprecated, use k8s.node.pod.allocatable instead.

'k8s.node.allocatable.pods'
K8S_NODE_CPU_ALLOCATABLE =
Note:

Stability Level: development

Amount of cpu allocatable on the node.

'k8s.node.cpu.allocatable'
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_EPHEMERAL_STORAGE_ALLOCATABLE =
Note:

Stability Level: development

Amount of ephemeral-storage allocatable on the node.

'k8s.node.ephemeral_storage.allocatable'
K8S_NODE_FILESYSTEM_AVAILABLE =
Note:

Stability Level: development

Node filesystem available bytes.

This metric is derived from the FsStats.AvailableBytes field of the NodeStats.Fs of the Kubelet's stats API.

'k8s.node.filesystem.available'
K8S_NODE_FILESYSTEM_CAPACITY =
Note:

Stability Level: development

Node filesystem capacity.

This metric is derived from the FsStats.CapacityBytes field of the NodeStats.Fs of the Kubelet's stats API.

'k8s.node.filesystem.capacity'
K8S_NODE_FILESYSTEM_USAGE =
Note:

Stability Level: development

Node filesystem usage.

This may not equal capacity - available.

This metric is derived from the FsStats.UsedBytes field of the NodeStats.Fs of the Kubelet's stats API.

'k8s.node.filesystem.usage'
K8S_NODE_MEMORY_ALLOCATABLE =
Note:

Stability Level: development

Amount of memory allocatable on the node.

'k8s.node.memory.allocatable'
K8S_NODE_MEMORY_AVAILABLE =
Note:

Stability Level: development

Node memory available.

Available memory for use. This is defined as the memory limit - workingSetBytes. If memory limit is undefined, the available bytes is omitted. This metric is derived from the MemoryStats.AvailableBytes field of the NodeStats.Memory of the Kubelet's stats API.

'k8s.node.memory.available'
K8S_NODE_MEMORY_PAGING_FAULTS =
Note:

Stability Level: development

Node memory paging faults.

Cumulative number of major/minor page faults. This metric is derived from the MemoryStats.PageFaults and MemoryStats.MajorPageFaults fields of the NodeStats.Memory of the Kubelet's stats API.

'k8s.node.memory.paging.faults'
K8S_NODE_MEMORY_RSS =
Note:

Stability Level: development

Node memory RSS.

The amount of anonymous and swap cache memory (includes transparent hugepages). This metric is derived from the MemoryStats.RSSBytes field of the NodeStats.Memory of the Kubelet's stats API.

'k8s.node.memory.rss'
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_MEMORY_WORKING_SET =
Note:

Stability Level: development

Node memory working set.

The amount of working set memory. This includes recently accessed memory, dirty memory, and kernel memory. WorkingSetBytes is <= UsageBytes. This metric is derived from the MemoryStats.WorkingSetBytes field of the NodeStats.Memory of the Kubelet's stats API.

'k8s.node.memory.working_set'
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_POD_ALLOCATABLE =
Note:

Stability Level: development

Amount of pods allocatable on the node.

'k8s.node.pod.allocatable'
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_FILESYSTEM_AVAILABLE =
Note:

Stability Level: development

Pod filesystem available bytes.

This metric is derived from the FsStats.AvailableBytes field of the PodStats.EphemeralStorage of the Kubelet's stats API.

'k8s.pod.filesystem.available'
K8S_POD_FILESYSTEM_CAPACITY =
Note:

Stability Level: development

Pod filesystem capacity.

This metric is derived from the FsStats.CapacityBytes field of the PodStats.EphemeralStorage of the Kubelet's stats API.

'k8s.pod.filesystem.capacity'
K8S_POD_FILESYSTEM_USAGE =
Note:

Stability Level: development

Pod filesystem usage.

This may not equal capacity - available.

This metric is derived from the FsStats.UsedBytes field of the PodStats.EphemeralStorage of the Kubelet's stats API.

'k8s.pod.filesystem.usage'
K8S_POD_MEMORY_AVAILABLE =
Note:

Stability Level: development

Pod memory available.

Available memory for use. This is defined as the memory limit - workingSetBytes. If memory limit is undefined, the available bytes is omitted. This metric is derived from the MemoryStats.AvailableBytes field of the PodStats.Memory of the Kubelet's stats API.

'k8s.pod.memory.available'
K8S_POD_MEMORY_PAGING_FAULTS =
Note:

Stability Level: development

Pod memory paging faults.

Cumulative number of major/minor page faults. This metric is derived from the MemoryStats.PageFaults and MemoryStats.MajorPageFaults field of the PodStats.Memory of the Kubelet's stats API.

'k8s.pod.memory.paging.faults'
K8S_POD_MEMORY_RSS =
Note:

Stability Level: development

Pod memory RSS.

The amount of anonymous and swap cache memory (includes transparent hugepages). This metric is derived from the MemoryStats.RSSBytes field of the PodStats.Memory of the Kubelet's stats API.

'k8s.pod.memory.rss'
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_MEMORY_WORKING_SET =
Note:

Stability Level: development

Pod memory working set.

The amount of working set memory. This includes recently accessed memory, dirty memory, and kernel memory. WorkingSetBytes is <= UsageBytes. This metric is derived from the MemoryStats.WorkingSetBytes field of the PodStats.Memory of the Kubelet's stats API.

'k8s.pod.memory.working_set'
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_POD_VOLUME_AVAILABLE =
Note:

Stability Level: development

Pod volume storage space available.

This metric is derived from the VolumeStats.AvailableBytes field of the PodStats of the Kubelet's stats API.

'k8s.pod.volume.available'
K8S_POD_VOLUME_CAPACITY =
Note:

Stability Level: development

Pod volume total capacity.

This metric is derived from the VolumeStats.CapacityBytes field of the PodStats of the Kubelet's stats API.

'k8s.pod.volume.capacity'
K8S_POD_VOLUME_INODE_COUNT =
Note:

Stability Level: development

The total inodes in the filesystem of the Pod's volume.

This metric is derived from the VolumeStats.Inodes field of the PodStats of the Kubelet's stats API.

'k8s.pod.volume.inode.count'
K8S_POD_VOLUME_INODE_FREE =
Note:

Stability Level: development

The free inodes in the filesystem of the Pod's volume.

This metric is derived from the VolumeStats.InodesFree field of the PodStats of the Kubelet's stats API.

'k8s.pod.volume.inode.free'
K8S_POD_VOLUME_INODE_USED =
Note:

Stability Level: development

The inodes used by the filesystem of the Pod's volume.

This metric is derived from the VolumeStats.InodesUsed field of the PodStats of the Kubelet's stats API.

This may not be equal to inodes - free because filesystem may share inodes with other filesystems.

'k8s.pod.volume.inode.used'
K8S_POD_VOLUME_USAGE =
Note:

Stability Level: development

Pod volume usage.

This may not equal capacity - available.

This metric is derived from the VolumeStats.UsedBytes field of the PodStats of the Kubelet's stats API.

'k8s.pod.volume.usage'
K8S_REPLICASET_AVAILABLE_PODS =
Deprecated.

Replaced by k8s.replicaset.pod.available.

Note:

Stability Level: development

Deprecated, use k8s.replicaset.pod.available instead.

This metric aligns with the availableReplicas field of the K8s ReplicaSetStatus.

'k8s.replicaset.available_pods'
K8S_REPLICASET_DESIRED_PODS =
Deprecated.

Replaced by k8s.replicaset.pod.desired.

Note:

Stability Level: development

Deprecated, use k8s.replicaset.pod.desired instead.

This metric aligns with the replicas field of the K8s ReplicaSetSpec.

'k8s.replicaset.desired_pods'
K8S_REPLICASET_POD_AVAILABLE =
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.pod.available'
K8S_REPLICASET_POD_DESIRED =
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.pod.desired'
K8S_REPLICATION_CONTROLLER_AVAILABLE_PODS =
Deprecated.

Replaced by k8s.replicationcontroller.pod.available.

Note:

Stability Level: development

Deprecated, use k8s.replicationcontroller.pod.available instead.

'k8s.replication_controller.available_pods'
K8S_REPLICATION_CONTROLLER_DESIRED_PODS =
Deprecated.

Replaced by k8s.replicationcontroller.pod.desired.

Note:

Stability Level: development

Deprecated, use k8s.replicationcontroller.pod.desired instead.

'k8s.replication_controller.desired_pods'
K8S_REPLICATIONCONTROLLER_AVAILABLE_PODS =
Deprecated.

Replaced by k8s.replicationcontroller.pod.available.

Note:

Stability Level: development

Deprecated, use k8s.replicationcontroller.pod.available instead.

'k8s.replicationcontroller.available_pods'
K8S_REPLICATIONCONTROLLER_DESIRED_PODS =
Deprecated.

Replaced by k8s.replicationcontroller.pod.desired.

Note:

Stability Level: development

Deprecated, use k8s.replicationcontroller.pod.desired instead.

'k8s.replicationcontroller.desired_pods'
K8S_REPLICATIONCONTROLLER_POD_AVAILABLE =
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.pod.available'
K8S_REPLICATIONCONTROLLER_POD_DESIRED =
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.pod.desired'
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 =
Deprecated.

Replaced by k8s.statefulset.pod.current.

Note:

Stability Level: development

Deprecated, use k8s.statefulset.pod.current instead.

This metric aligns with the currentReplicas field of the K8s StatefulSetStatus.

'k8s.statefulset.current_pods'
K8S_STATEFULSET_DESIRED_PODS =
Deprecated.

Replaced by k8s.statefulset.pod.desired.

Note:

Stability Level: development

Deprecated, use k8s.statefulset.pod.desired instead.

This metric aligns with the replicas field of the K8s StatefulSetSpec.

'k8s.statefulset.desired_pods'
K8S_STATEFULSET_POD_CURRENT =
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.pod.current'
K8S_STATEFULSET_POD_DESIRED =
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.pod.desired'
K8S_STATEFULSET_POD_READY =
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.pod.ready'
K8S_STATEFULSET_POD_UPDATED =
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.pod.updated'
K8S_STATEFULSET_READY_PODS =
Deprecated.

Replaced by k8s.statefulset.pod.ready.

Note:

Stability Level: development

Deprecated, use k8s.statefulset.pod.ready instead.

This metric aligns with the readyReplicas field of the K8s StatefulSetStatus.

'k8s.statefulset.ready_pods'
K8S_STATEFULSET_UPDATED_PODS =
Deprecated.

Replaced by k8s.statefulset.pod.updated.

Note:

Stability Level: development

Deprecated, use k8s.statefulset.pod.updated instead.

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_POD_STATUS_PHASE =
Note:

Stability Level: development

The phase for the pod. Corresponds to the phase field of the: K8s PodStatus

'k8s.pod.status.phase'
K8S_POD_STATUS_REASON =
Note:

Stability Level: development

The reason for the pod state. Corresponds to the reason field of the: K8s PodStatus

'k8s.pod.status.reason'
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 the uid of the kube-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 the uid of the kube-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 value 4 SHOULD be recorded as the k8s.cronjob.annotation.retries attribute with value "4".
  • An annotation data with empty string value SHOULD be recorded as the k8s.cronjob.annotation.data attribute with value "".

Examples:

Usage

K8S_CRONJOB_ANNOTATION_LAMBDA.call('some-cool-key') #=> 'k8s.cronjob.annotation.some-cool-key'
->(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 value weekly SHOULD be recorded as the k8s.cronjob.label.type attribute with value "weekly".
  • A label automated with empty string value SHOULD be recorded as the k8s.cronjob.label.automated attribute with value "".

Examples:

Usage

K8S_CRONJOB_LABEL_LAMBDA.call('some-cool-key') #=> 'k8s.cronjob.label.some-cool-key'
->(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 value 1 SHOULD be recorded as the k8s.daemonset.annotation.replicas attribute with value "1".
  • A label data with empty string value SHOULD be recorded as the k8s.daemonset.annotation.data attribute with value "".

Examples:

Usage

K8S_DAEMONSET_ANNOTATION_LAMBDA.call('some-cool-key') #=> 'k8s.daemonset.annotation.some-cool-key'
->(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 value guestbook SHOULD be recorded as the k8s.daemonset.label.app attribute with value "guestbook".
  • A label data with empty string value SHOULD be recorded as the k8s.daemonset.label.injected attribute with value "".

Examples:

Usage

K8S_DAEMONSET_LABEL_LAMBDA.call('some-cool-key') #=> 'k8s.daemonset.label.some-cool-key'
->(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 value 1 SHOULD be recorded as the k8s.deployment.annotation.replicas attribute with value "1".
  • A label data with empty string value SHOULD be recorded as the k8s.deployment.annotation.data attribute with value "".

Examples:

Usage

K8S_DEPLOYMENT_ANNOTATION_LAMBDA.call('some-cool-key') #=> 'k8s.deployment.annotation.some-cool-key'
->(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 value 0 SHOULD be recorded as the k8s.deployment.label.app attribute with value "guestbook".
  • A label injected with empty string value SHOULD be recorded as the k8s.deployment.label.injected attribute with value "".

Examples:

Usage

K8S_DEPLOYMENT_LABEL_LAMBDA.call('some-cool-key') #=> 'k8s.deployment.label.some-cool-key'
->(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 the scaleTargetRef 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 the scaleTargetRef 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 the scaleTargetRef 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 value 1 SHOULD be recorded as the k8s.job.annotation.number attribute with value "1".
  • A label data with empty string value SHOULD be recorded as the k8s.job.annotation.data attribute with value "".

Examples:

Usage

K8S_JOB_ANNOTATION_LAMBDA.call('some-cool-key') #=> 'k8s.job.annotation.some-cool-key'
->(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 value ci SHOULD be recorded as the k8s.job.label.jobtype attribute with value "ci".
  • A label data with empty string value SHOULD be recorded as the k8s.job.label.automated attribute with value "".

Examples:

Usage

K8S_JOB_LABEL_LAMBDA.call('some-cool-key') #=> 'k8s.job.label.some-cool-key'
->(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 value 0 SHOULD be recorded as the k8s.namespace.annotation.ttl attribute with value "0".
  • A label data with empty string value SHOULD be recorded as the k8s.namespace.annotation.data attribute with value "".

Examples:

Usage

K8S_NAMESPACE_ANNOTATION_LAMBDA.call('some-cool-key') #=> 'k8s.namespace.annotation.some-cool-key'
->(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 value default SHOULD be recorded as the k8s.namespace.label.kubernetes.io/metadata.name attribute with value "default".
  • A label data with empty string value SHOULD be recorded as the k8s.namespace.label.data attribute with value "".

Examples:

Usage

K8S_NAMESPACE_LABEL_LAMBDA.call('some-cool-key') #=> 'k8s.namespace.label.some-cool-key'
->(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 value 0 SHOULD be recorded as the k8s.node.annotation.node.alpha.kubernetes.io/ttl attribute with value "0".
  • An annotation data with empty string value SHOULD be recorded as the k8s.node.annotation.data attribute with value "".

Examples:

Usage

K8S_NODE_ANNOTATION_LAMBDA.call('some-cool-key') #=> 'k8s.node.annotation.some-cool-key'
->(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 NodeCondition

The 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 value arm64 SHOULD be recorded as the k8s.node.label.kubernetes.io/arch attribute with value "arm64".
  • A label data with empty string value SHOULD be recorded as the k8s.node.label.data attribute with value "".

Examples:

Usage

K8S_NODE_LABEL_LAMBDA.call('some-cool-key') #=> 'k8s.node.label.some-cool-key'
->(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 value true SHOULD be recorded as the k8s.pod.annotation.kubernetes.io/enforce-mountable-secrets attribute with value "true".
  • An annotation mycompany.io/arch with value x64 SHOULD be recorded as the k8s.pod.annotation.mycompany.io/arch attribute with value "x64".
  • An annotation data with empty string value SHOULD be recorded as the k8s.pod.annotation.data attribute with value "".

Examples:

Usage

K8S_POD_ANNOTATION_LAMBDA.call('some-cool-key') #=> 'k8s.pod.annotation.some-cool-key'
->(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 value my-app SHOULD be recorded as the k8s.pod.label.app attribute with value "my-app".
  • A label mycompany.io/arch with value x64 SHOULD be recorded as the k8s.pod.label.mycompany.io/arch attribute with value "x64".
  • A label data with empty string value SHOULD be recorded as the k8s.pod.label.data attribute with value "".

Examples:

Usage

K8S_POD_LABEL_LAMBDA.call('some-cool-key') #=> 'k8s.pod.label.some-cool-key'
->(key) { "k8s.pod.label.#{key}" }
K8S_POD_LABELS_LAMBDA =
Deprecated.

Replaced by 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.

Examples:

Usage

K8S_POD_LABELS_LAMBDA.call('some-cool-key') #=> 'k8s.pod.labels.some-cool-key'
->(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 value 0 SHOULD be recorded as the k8s.replicaset.annotation.replicas attribute with value "0".
  • A label data with empty string value SHOULD be recorded as the k8s.replicaset.annotation.data attribute with value "".

Examples:

Usage

K8S_REPLICASET_ANNOTATION_LAMBDA.call('some-cool-key') #=> 'k8s.replicaset.annotation.some-cool-key'
->(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 value guestbook SHOULD be recorded as the k8s.replicaset.label.app attribute with value "guestbook".
  • A label injected with empty string value SHOULD be recorded as the k8s.replicaset.label.injected attribute with value "".

Examples:

Usage

K8S_REPLICASET_LABEL_LAMBDA.call('some-cool-key') #=> 'k8s.replicaset.label.some-cool-key'
->(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 value 1 SHOULD be recorded as the k8s.statefulset.annotation.replicas attribute with value "1".
  • A label data with empty string value SHOULD be recorded as the k8s.statefulset.annotation.data attribute with value "".

Examples:

Usage

K8S_STATEFULSET_ANNOTATION_LAMBDA.call('some-cool-key') #=> 'k8s.statefulset.annotation.some-cool-key'
->(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 value 0 SHOULD be recorded as the k8s.statefulset.label.app attribute with value "guestbook".
  • A label injected with empty string value SHOULD be recorded as the k8s.statefulset.label.injected attribute with value "".

Examples:

Usage

K8S_STATEFULSET_LABEL_LAMBDA.call('some-cool-key') #=> 'k8s.statefulset.label.some-cool-key'
->(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'