/* * Copyright The OpenTelemetry Authors * SPDX-License-Identifier: Apache-2.0 */ /* * DO NOT EDIT, this is an Auto-generated file from: * buildscripts/semantic-convention/templates/registry/semantic_metrics-h.j2 */ #pragma once #include "opentelemetry/common/macros.h" #include "opentelemetry/metrics/meter.h" #include "opentelemetry/version.h" OPENTELEMETRY_BEGIN_NAMESPACE namespace semconv { namespace k8s { /** * The number of actively running jobs for a cronjob *

* This metric aligns with the @code active @endcode field of the * K8s * CronJobStatus.

This metric SHOULD, at a minimum, be reported against a @code k8s.cronjob @endcode resource.

updowncounter */ static constexpr const char *kMetricK8sCronjobActiveJobs = "k8s.cronjob.active_jobs"; static constexpr const char *descrMetricK8sCronjobActiveJobs = "The number of actively running jobs for a cronjob"; static constexpr const char *unitMetricK8sCronjobActiveJobs = "{job}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sCronjobActiveJobs(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter( kMetricK8sCronjobActiveJobs, descrMetricK8sCronjobActiveJobs, unitMetricK8sCronjobActiveJobs); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sCronjobActiveJobs(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter( kMetricK8sCronjobActiveJobs, descrMetricK8sCronjobActiveJobs, unitMetricK8sCronjobActiveJobs); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sCronjobActiveJobs(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter( kMetricK8sCronjobActiveJobs, descrMetricK8sCronjobActiveJobs, unitMetricK8sCronjobActiveJobs); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sCronjobActiveJobs(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter( kMetricK8sCronjobActiveJobs, descrMetricK8sCronjobActiveJobs, unitMetricK8sCronjobActiveJobs); } /** * Number of nodes that are running at least 1 daemon pod and are supposed to run the daemon pod *

* This metric aligns with the @code currentNumberScheduled @endcode field of the * K8s * DaemonSetStatus.

This metric SHOULD, at a minimum, be reported against a @code k8s.daemonset @endcode resource.

updowncounter */ static constexpr const char *kMetricK8sDaemonsetCurrentScheduledNodes = "k8s.daemonset.current_scheduled_nodes"; static constexpr const char *descrMetricK8sDaemonsetCurrentScheduledNodes = "Number of nodes that are running at least 1 daemon pod and are supposed to run the daemon pod"; static constexpr const char *unitMetricK8sDaemonsetCurrentScheduledNodes = "{node}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sDaemonsetCurrentScheduledNodes(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sDaemonsetCurrentScheduledNodes, descrMetricK8sDaemonsetCurrentScheduledNodes, unitMetricK8sDaemonsetCurrentScheduledNodes); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sDaemonsetCurrentScheduledNodes(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sDaemonsetCurrentScheduledNodes, descrMetricK8sDaemonsetCurrentScheduledNodes, unitMetricK8sDaemonsetCurrentScheduledNodes); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sDaemonsetCurrentScheduledNodes(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sDaemonsetCurrentScheduledNodes, descrMetricK8sDaemonsetCurrentScheduledNodes, unitMetricK8sDaemonsetCurrentScheduledNodes); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sDaemonsetCurrentScheduledNodes(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sDaemonsetCurrentScheduledNodes, descrMetricK8sDaemonsetCurrentScheduledNodes, unitMetricK8sDaemonsetCurrentScheduledNodes); } /** * Number of nodes that should be running the daemon pod (including nodes currently running the * daemon pod)

This metric aligns with the @code desiredNumberScheduled @endcode field of the K8s * DaemonSetStatus.

This metric SHOULD, at a minimum, be reported against a @code k8s.daemonset @endcode resource.

updowncounter */ static constexpr const char *kMetricK8sDaemonsetDesiredScheduledNodes = "k8s.daemonset.desired_scheduled_nodes"; static constexpr const char *descrMetricK8sDaemonsetDesiredScheduledNodes = "Number of nodes that should be running the daemon pod (including nodes currently running the " "daemon pod)"; static constexpr const char *unitMetricK8sDaemonsetDesiredScheduledNodes = "{node}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sDaemonsetDesiredScheduledNodes(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sDaemonsetDesiredScheduledNodes, descrMetricK8sDaemonsetDesiredScheduledNodes, unitMetricK8sDaemonsetDesiredScheduledNodes); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sDaemonsetDesiredScheduledNodes(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sDaemonsetDesiredScheduledNodes, descrMetricK8sDaemonsetDesiredScheduledNodes, unitMetricK8sDaemonsetDesiredScheduledNodes); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sDaemonsetDesiredScheduledNodes(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sDaemonsetDesiredScheduledNodes, descrMetricK8sDaemonsetDesiredScheduledNodes, unitMetricK8sDaemonsetDesiredScheduledNodes); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sDaemonsetDesiredScheduledNodes(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sDaemonsetDesiredScheduledNodes, descrMetricK8sDaemonsetDesiredScheduledNodes, unitMetricK8sDaemonsetDesiredScheduledNodes); } /** * Number of nodes that are running the daemon pod, but are not supposed to run the daemon pod *

* This metric aligns with the @code numberMisscheduled @endcode field of the * K8s * DaemonSetStatus.

This metric SHOULD, at a minimum, be reported against a @code k8s.daemonset @endcode resource.

updowncounter */ static constexpr const char *kMetricK8sDaemonsetMisscheduledNodes = "k8s.daemonset.misscheduled_nodes"; static constexpr const char *descrMetricK8sDaemonsetMisscheduledNodes = "Number of nodes that are running the daemon pod, but are not supposed to run the daemon pod"; static constexpr const char *unitMetricK8sDaemonsetMisscheduledNodes = "{node}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sDaemonsetMisscheduledNodes(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sDaemonsetMisscheduledNodes, descrMetricK8sDaemonsetMisscheduledNodes, unitMetricK8sDaemonsetMisscheduledNodes); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sDaemonsetMisscheduledNodes(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sDaemonsetMisscheduledNodes, descrMetricK8sDaemonsetMisscheduledNodes, unitMetricK8sDaemonsetMisscheduledNodes); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sDaemonsetMisscheduledNodes(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sDaemonsetMisscheduledNodes, descrMetricK8sDaemonsetMisscheduledNodes, unitMetricK8sDaemonsetMisscheduledNodes); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sDaemonsetMisscheduledNodes(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sDaemonsetMisscheduledNodes, descrMetricK8sDaemonsetMisscheduledNodes, unitMetricK8sDaemonsetMisscheduledNodes); } /** * 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 @code numberReady @endcode field of the K8s * DaemonSetStatus.

This metric SHOULD, at a minimum, be reported against a @code k8s.daemonset @endcode resource.

updowncounter */ static constexpr const char *kMetricK8sDaemonsetReadyNodes = "k8s.daemonset.ready_nodes"; static constexpr const char *descrMetricK8sDaemonsetReadyNodes = "Number of nodes that should be running the daemon pod and have one or more of the daemon pod " "running and ready"; static constexpr const char *unitMetricK8sDaemonsetReadyNodes = "{node}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sDaemonsetReadyNodes(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sDaemonsetReadyNodes, descrMetricK8sDaemonsetReadyNodes, unitMetricK8sDaemonsetReadyNodes); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sDaemonsetReadyNodes(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sDaemonsetReadyNodes, descrMetricK8sDaemonsetReadyNodes, unitMetricK8sDaemonsetReadyNodes); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sDaemonsetReadyNodes(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sDaemonsetReadyNodes, descrMetricK8sDaemonsetReadyNodes, unitMetricK8sDaemonsetReadyNodes); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sDaemonsetReadyNodes(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sDaemonsetReadyNodes, descrMetricK8sDaemonsetReadyNodes, unitMetricK8sDaemonsetReadyNodes); } /** * Total number of available replica pods (ready for at least minReadySeconds) targeted by this * deployment

This metric aligns with the @code availableReplicas @endcode field of the K8s * DeploymentStatus.

This metric SHOULD, at a minimum, be reported against a @code k8s.deployment @endcode resource.

* updowncounter */ static constexpr const char *kMetricK8sDeploymentAvailablePods = "k8s.deployment.available_pods"; static constexpr const char *descrMetricK8sDeploymentAvailablePods = "Total number of available replica pods (ready for at least minReadySeconds) targeted by this " "deployment"; static constexpr const char *unitMetricK8sDeploymentAvailablePods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sDeploymentAvailablePods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sDeploymentAvailablePods, descrMetricK8sDeploymentAvailablePods, unitMetricK8sDeploymentAvailablePods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sDeploymentAvailablePods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sDeploymentAvailablePods, descrMetricK8sDeploymentAvailablePods, unitMetricK8sDeploymentAvailablePods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sDeploymentAvailablePods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sDeploymentAvailablePods, descrMetricK8sDeploymentAvailablePods, unitMetricK8sDeploymentAvailablePods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sDeploymentAvailablePods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sDeploymentAvailablePods, descrMetricK8sDeploymentAvailablePods, unitMetricK8sDeploymentAvailablePods); } /** * Number of desired replica pods in this deployment *

* This metric aligns with the @code replicas @endcode field of the * K8s * DeploymentSpec.

This metric SHOULD, at a minimum, be reported against a @code k8s.deployment @endcode resource.

* updowncounter */ static constexpr const char *kMetricK8sDeploymentDesiredPods = "k8s.deployment.desired_pods"; static constexpr const char *descrMetricK8sDeploymentDesiredPods = "Number of desired replica pods in this deployment"; static constexpr const char *unitMetricK8sDeploymentDesiredPods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sDeploymentDesiredPods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sDeploymentDesiredPods, descrMetricK8sDeploymentDesiredPods, unitMetricK8sDeploymentDesiredPods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sDeploymentDesiredPods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sDeploymentDesiredPods, descrMetricK8sDeploymentDesiredPods, unitMetricK8sDeploymentDesiredPods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sDeploymentDesiredPods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sDeploymentDesiredPods, descrMetricK8sDeploymentDesiredPods, unitMetricK8sDeploymentDesiredPods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sDeploymentDesiredPods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sDeploymentDesiredPods, descrMetricK8sDeploymentDesiredPods, unitMetricK8sDeploymentDesiredPods); } /** * Current number of replica pods managed by this horizontal pod autoscaler, as last seen by the * autoscaler

This metric aligns with the @code currentReplicas @endcode field of the K8s * HorizontalPodAutoscalerStatus

This metric SHOULD, at a minimum, be reported against a @code k8s.hpa @endcode resource.

* updowncounter */ static constexpr const char *kMetricK8sHpaCurrentPods = "k8s.hpa.current_pods"; static constexpr const char *descrMetricK8sHpaCurrentPods = "Current number of replica pods managed by this horizontal pod autoscaler, as last seen by the " "autoscaler"; static constexpr const char *unitMetricK8sHpaCurrentPods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sHpaCurrentPods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sHpaCurrentPods, descrMetricK8sHpaCurrentPods, unitMetricK8sHpaCurrentPods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sHpaCurrentPods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sHpaCurrentPods, descrMetricK8sHpaCurrentPods, unitMetricK8sHpaCurrentPods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sHpaCurrentPods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter( kMetricK8sHpaCurrentPods, descrMetricK8sHpaCurrentPods, unitMetricK8sHpaCurrentPods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sHpaCurrentPods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter( kMetricK8sHpaCurrentPods, descrMetricK8sHpaCurrentPods, unitMetricK8sHpaCurrentPods); } /** * Desired number of replica pods managed by this horizontal pod autoscaler, as last calculated by * the autoscaler

This metric aligns with the @code desiredReplicas @endcode field of the K8s * HorizontalPodAutoscalerStatus

This metric SHOULD, at a minimum, be reported against a @code k8s.hpa @endcode resource.

* updowncounter */ static constexpr const char *kMetricK8sHpaDesiredPods = "k8s.hpa.desired_pods"; static constexpr const char *descrMetricK8sHpaDesiredPods = "Desired number of replica pods managed by this horizontal pod autoscaler, as last calculated " "by the autoscaler"; static constexpr const char *unitMetricK8sHpaDesiredPods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sHpaDesiredPods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sHpaDesiredPods, descrMetricK8sHpaDesiredPods, unitMetricK8sHpaDesiredPods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sHpaDesiredPods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sHpaDesiredPods, descrMetricK8sHpaDesiredPods, unitMetricK8sHpaDesiredPods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sHpaDesiredPods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter( kMetricK8sHpaDesiredPods, descrMetricK8sHpaDesiredPods, unitMetricK8sHpaDesiredPods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sHpaDesiredPods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter( kMetricK8sHpaDesiredPods, descrMetricK8sHpaDesiredPods, unitMetricK8sHpaDesiredPods); } /** * The upper limit for the number of replica pods to which the autoscaler can scale up *

* This metric aligns with the @code maxReplicas @endcode field of the * K8s * HorizontalPodAutoscalerSpec

This metric SHOULD, at a minimum, be reported against a @code k8s.hpa @endcode resource.

* updowncounter */ static constexpr const char *kMetricK8sHpaMaxPods = "k8s.hpa.max_pods"; static constexpr const char *descrMetricK8sHpaMaxPods = "The upper limit for the number of replica pods to which the autoscaler can scale up"; static constexpr const char *unitMetricK8sHpaMaxPods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sHpaMaxPods( metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sHpaMaxPods, descrMetricK8sHpaMaxPods, unitMetricK8sHpaMaxPods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sHpaMaxPods( metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sHpaMaxPods, descrMetricK8sHpaMaxPods, unitMetricK8sHpaMaxPods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sHpaMaxPods( metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sHpaMaxPods, descrMetricK8sHpaMaxPods, unitMetricK8sHpaMaxPods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sHpaMaxPods( metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sHpaMaxPods, descrMetricK8sHpaMaxPods, unitMetricK8sHpaMaxPods); } /** * The lower limit for the number of replica pods to which the autoscaler can scale down *

* This metric aligns with the @code minReplicas @endcode field of the * K8s * HorizontalPodAutoscalerSpec

This metric SHOULD, at a minimum, be reported against a @code k8s.hpa @endcode resource.

* updowncounter */ static constexpr const char *kMetricK8sHpaMinPods = "k8s.hpa.min_pods"; static constexpr const char *descrMetricK8sHpaMinPods = "The lower limit for the number of replica pods to which the autoscaler can scale down"; static constexpr const char *unitMetricK8sHpaMinPods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sHpaMinPods( metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sHpaMinPods, descrMetricK8sHpaMinPods, unitMetricK8sHpaMinPods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sHpaMinPods( metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sHpaMinPods, descrMetricK8sHpaMinPods, unitMetricK8sHpaMinPods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sHpaMinPods( metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sHpaMinPods, descrMetricK8sHpaMinPods, unitMetricK8sHpaMinPods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sHpaMinPods( metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sHpaMinPods, descrMetricK8sHpaMinPods, unitMetricK8sHpaMinPods); } /** * The number of pending and actively running pods for a job *

* This metric aligns with the @code active @endcode field of the * K8s * JobStatus.

This metric SHOULD, at a minimum, be reported against a @code k8s.job @endcode resource.

updowncounter */ static constexpr const char *kMetricK8sJobActivePods = "k8s.job.active_pods"; static constexpr const char *descrMetricK8sJobActivePods = "The number of pending and actively running pods for a job"; static constexpr const char *unitMetricK8sJobActivePods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sJobActivePods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sJobActivePods, descrMetricK8sJobActivePods, unitMetricK8sJobActivePods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sJobActivePods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sJobActivePods, descrMetricK8sJobActivePods, unitMetricK8sJobActivePods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sJobActivePods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter( kMetricK8sJobActivePods, descrMetricK8sJobActivePods, unitMetricK8sJobActivePods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sJobActivePods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter( kMetricK8sJobActivePods, descrMetricK8sJobActivePods, unitMetricK8sJobActivePods); } /** * The desired number of successfully finished pods the job should be run with *

* This metric aligns with the @code completions @endcode field of the * K8s * JobSpec.

This metric SHOULD, at a minimum, be reported against a @code k8s.job @endcode resource.

updowncounter */ static constexpr const char *kMetricK8sJobDesiredSuccessfulPods = "k8s.job.desired_successful_pods"; static constexpr const char *descrMetricK8sJobDesiredSuccessfulPods = "The desired number of successfully finished pods the job should be run with"; static constexpr const char *unitMetricK8sJobDesiredSuccessfulPods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sJobDesiredSuccessfulPods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sJobDesiredSuccessfulPods, descrMetricK8sJobDesiredSuccessfulPods, unitMetricK8sJobDesiredSuccessfulPods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sJobDesiredSuccessfulPods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sJobDesiredSuccessfulPods, descrMetricK8sJobDesiredSuccessfulPods, unitMetricK8sJobDesiredSuccessfulPods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sJobDesiredSuccessfulPods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sJobDesiredSuccessfulPods, descrMetricK8sJobDesiredSuccessfulPods, unitMetricK8sJobDesiredSuccessfulPods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sJobDesiredSuccessfulPods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sJobDesiredSuccessfulPods, descrMetricK8sJobDesiredSuccessfulPods, unitMetricK8sJobDesiredSuccessfulPods); } /** * The number of pods which reached phase Failed for a job *

* This metric aligns with the @code failed @endcode field of the * K8s * JobStatus.

This metric SHOULD, at a minimum, be reported against a @code k8s.job @endcode resource.

updowncounter */ static constexpr const char *kMetricK8sJobFailedPods = "k8s.job.failed_pods"; static constexpr const char *descrMetricK8sJobFailedPods = "The number of pods which reached phase Failed for a job"; static constexpr const char *unitMetricK8sJobFailedPods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sJobFailedPods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sJobFailedPods, descrMetricK8sJobFailedPods, unitMetricK8sJobFailedPods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sJobFailedPods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sJobFailedPods, descrMetricK8sJobFailedPods, unitMetricK8sJobFailedPods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sJobFailedPods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter( kMetricK8sJobFailedPods, descrMetricK8sJobFailedPods, unitMetricK8sJobFailedPods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sJobFailedPods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter( kMetricK8sJobFailedPods, descrMetricK8sJobFailedPods, unitMetricK8sJobFailedPods); } /** * The max desired number of pods the job should run at any given time *

* This metric aligns with the @code parallelism @endcode field of the * K8s * JobSpec.

This metric SHOULD, at a minimum, be reported against a @code k8s.job @endcode resource.

updowncounter */ static constexpr const char *kMetricK8sJobMaxParallelPods = "k8s.job.max_parallel_pods"; static constexpr const char *descrMetricK8sJobMaxParallelPods = "The max desired number of pods the job should run at any given time"; static constexpr const char *unitMetricK8sJobMaxParallelPods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sJobMaxParallelPods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sJobMaxParallelPods, descrMetricK8sJobMaxParallelPods, unitMetricK8sJobMaxParallelPods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sJobMaxParallelPods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sJobMaxParallelPods, descrMetricK8sJobMaxParallelPods, unitMetricK8sJobMaxParallelPods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sJobMaxParallelPods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sJobMaxParallelPods, descrMetricK8sJobMaxParallelPods, unitMetricK8sJobMaxParallelPods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sJobMaxParallelPods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sJobMaxParallelPods, descrMetricK8sJobMaxParallelPods, unitMetricK8sJobMaxParallelPods); } /** * The number of pods which reached phase Succeeded for a job *

* This metric aligns with the @code succeeded @endcode field of the * K8s * JobStatus.

This metric SHOULD, at a minimum, be reported against a @code k8s.job @endcode resource.

updowncounter */ static constexpr const char *kMetricK8sJobSuccessfulPods = "k8s.job.successful_pods"; static constexpr const char *descrMetricK8sJobSuccessfulPods = "The number of pods which reached phase Succeeded for a job"; static constexpr const char *unitMetricK8sJobSuccessfulPods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sJobSuccessfulPods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter( kMetricK8sJobSuccessfulPods, descrMetricK8sJobSuccessfulPods, unitMetricK8sJobSuccessfulPods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sJobSuccessfulPods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter( kMetricK8sJobSuccessfulPods, descrMetricK8sJobSuccessfulPods, unitMetricK8sJobSuccessfulPods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sJobSuccessfulPods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter( kMetricK8sJobSuccessfulPods, descrMetricK8sJobSuccessfulPods, unitMetricK8sJobSuccessfulPods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sJobSuccessfulPods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter( kMetricK8sJobSuccessfulPods, descrMetricK8sJobSuccessfulPods, unitMetricK8sJobSuccessfulPods); } /** * Describes number of K8s namespaces that are currently in a given phase. *

* This metric SHOULD, at a minimum, be reported against a * @code k8s.namespace @endcode resource. *

* updowncounter */ static constexpr const char *kMetricK8sNamespacePhase = "k8s.namespace.phase"; static constexpr const char *descrMetricK8sNamespacePhase = "Describes number of K8s namespaces that are currently in a given phase."; static constexpr const char *unitMetricK8sNamespacePhase = "{namespace}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sNamespacePhase(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sNamespacePhase, descrMetricK8sNamespacePhase, unitMetricK8sNamespacePhase); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sNamespacePhase(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sNamespacePhase, descrMetricK8sNamespacePhase, unitMetricK8sNamespacePhase); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sNamespacePhase(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter( kMetricK8sNamespacePhase, descrMetricK8sNamespacePhase, unitMetricK8sNamespacePhase); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sNamespacePhase(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter( kMetricK8sNamespacePhase, descrMetricK8sNamespacePhase, unitMetricK8sNamespacePhase); } /** * Total CPU time consumed *

* Total CPU time consumed by the specific Node on all available CPU cores *

* counter */ static constexpr const char *kMetricK8sNodeCpuTime = "k8s.node.cpu.time"; static constexpr const char *descrMetricK8sNodeCpuTime = "Total CPU time consumed"; static constexpr const char *unitMetricK8sNodeCpuTime = "s"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sNodeCpuTime( metrics::Meter *meter) { return meter->CreateUInt64Counter(kMetricK8sNodeCpuTime, descrMetricK8sNodeCpuTime, unitMetricK8sNodeCpuTime); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sNodeCpuTime( metrics::Meter *meter) { return meter->CreateDoubleCounter(kMetricK8sNodeCpuTime, descrMetricK8sNodeCpuTime, unitMetricK8sNodeCpuTime); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sNodeCpuTime( metrics::Meter *meter) { return meter->CreateInt64ObservableCounter(kMetricK8sNodeCpuTime, descrMetricK8sNodeCpuTime, unitMetricK8sNodeCpuTime); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sNodeCpuTime(metrics::Meter *meter) { return meter->CreateDoubleObservableCounter(kMetricK8sNodeCpuTime, descrMetricK8sNodeCpuTime, unitMetricK8sNodeCpuTime); } /** * 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 *

* gauge */ static constexpr const char *kMetricK8sNodeCpuUsage = "k8s.node.cpu.usage"; static constexpr const char *descrMetricK8sNodeCpuUsage = "Node's CPU usage, measured in cpus. Range from 0 to the number of allocatable CPUs"; static constexpr const char *unitMetricK8sNodeCpuUsage = "{cpu}"; #if OPENTELEMETRY_ABI_VERSION_NO >= 2 static inline nostd::unique_ptr> CreateSyncInt64MetricK8sNodeCpuUsage( metrics::Meter *meter) { return meter->CreateInt64Gauge(kMetricK8sNodeCpuUsage, descrMetricK8sNodeCpuUsage, unitMetricK8sNodeCpuUsage); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sNodeCpuUsage( metrics::Meter *meter) { return meter->CreateDoubleGauge(kMetricK8sNodeCpuUsage, descrMetricK8sNodeCpuUsage, unitMetricK8sNodeCpuUsage); } #endif /* OPENTELEMETRY_ABI_VERSION_NO */ static inline nostd::shared_ptr CreateAsyncInt64MetricK8sNodeCpuUsage(metrics::Meter *meter) { return meter->CreateInt64ObservableGauge(kMetricK8sNodeCpuUsage, descrMetricK8sNodeCpuUsage, unitMetricK8sNodeCpuUsage); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sNodeCpuUsage(metrics::Meter *meter) { return meter->CreateDoubleObservableGauge(kMetricK8sNodeCpuUsage, descrMetricK8sNodeCpuUsage, unitMetricK8sNodeCpuUsage); } /** * Memory usage of the Node *

* Total memory usage of the Node *

* gauge */ static constexpr const char *kMetricK8sNodeMemoryUsage = "k8s.node.memory.usage"; static constexpr const char *descrMetricK8sNodeMemoryUsage = "Memory usage of the Node"; static constexpr const char *unitMetricK8sNodeMemoryUsage = "By"; #if OPENTELEMETRY_ABI_VERSION_NO >= 2 static inline nostd::unique_ptr> CreateSyncInt64MetricK8sNodeMemoryUsage( metrics::Meter *meter) { return meter->CreateInt64Gauge(kMetricK8sNodeMemoryUsage, descrMetricK8sNodeMemoryUsage, unitMetricK8sNodeMemoryUsage); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sNodeMemoryUsage( metrics::Meter *meter) { return meter->CreateDoubleGauge(kMetricK8sNodeMemoryUsage, descrMetricK8sNodeMemoryUsage, unitMetricK8sNodeMemoryUsage); } #endif /* OPENTELEMETRY_ABI_VERSION_NO */ static inline nostd::shared_ptr CreateAsyncInt64MetricK8sNodeMemoryUsage(metrics::Meter *meter) { return meter->CreateInt64ObservableGauge(kMetricK8sNodeMemoryUsage, descrMetricK8sNodeMemoryUsage, unitMetricK8sNodeMemoryUsage); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sNodeMemoryUsage(metrics::Meter *meter) { return meter->CreateDoubleObservableGauge( kMetricK8sNodeMemoryUsage, descrMetricK8sNodeMemoryUsage, unitMetricK8sNodeMemoryUsage); } /** * Node network errors *

* counter */ static constexpr const char *kMetricK8sNodeNetworkErrors = "k8s.node.network.errors"; static constexpr const char *descrMetricK8sNodeNetworkErrors = "Node network errors"; static constexpr const char *unitMetricK8sNodeNetworkErrors = "{error}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sNodeNetworkErrors(metrics::Meter *meter) { return meter->CreateUInt64Counter(kMetricK8sNodeNetworkErrors, descrMetricK8sNodeNetworkErrors, unitMetricK8sNodeNetworkErrors); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sNodeNetworkErrors(metrics::Meter *meter) { return meter->CreateDoubleCounter(kMetricK8sNodeNetworkErrors, descrMetricK8sNodeNetworkErrors, unitMetricK8sNodeNetworkErrors); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sNodeNetworkErrors(metrics::Meter *meter) { return meter->CreateInt64ObservableCounter( kMetricK8sNodeNetworkErrors, descrMetricK8sNodeNetworkErrors, unitMetricK8sNodeNetworkErrors); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sNodeNetworkErrors(metrics::Meter *meter) { return meter->CreateDoubleObservableCounter( kMetricK8sNodeNetworkErrors, descrMetricK8sNodeNetworkErrors, unitMetricK8sNodeNetworkErrors); } /** * Network bytes for the Node *

* counter */ static constexpr const char *kMetricK8sNodeNetworkIo = "k8s.node.network.io"; static constexpr const char *descrMetricK8sNodeNetworkIo = "Network bytes for the Node"; static constexpr const char *unitMetricK8sNodeNetworkIo = "By"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sNodeNetworkIo( metrics::Meter *meter) { return meter->CreateUInt64Counter(kMetricK8sNodeNetworkIo, descrMetricK8sNodeNetworkIo, unitMetricK8sNodeNetworkIo); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sNodeNetworkIo( metrics::Meter *meter) { return meter->CreateDoubleCounter(kMetricK8sNodeNetworkIo, descrMetricK8sNodeNetworkIo, unitMetricK8sNodeNetworkIo); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sNodeNetworkIo(metrics::Meter *meter) { return meter->CreateInt64ObservableCounter(kMetricK8sNodeNetworkIo, descrMetricK8sNodeNetworkIo, unitMetricK8sNodeNetworkIo); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sNodeNetworkIo(metrics::Meter *meter) { return meter->CreateDoubleObservableCounter(kMetricK8sNodeNetworkIo, descrMetricK8sNodeNetworkIo, unitMetricK8sNodeNetworkIo); } /** * The time the Node has been running *

* Instrumentations SHOULD use a gauge with type @code double @endcode 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.

gauge */ static constexpr const char *kMetricK8sNodeUptime = "k8s.node.uptime"; static constexpr const char *descrMetricK8sNodeUptime = "The time the Node has been running"; static constexpr const char *unitMetricK8sNodeUptime = "s"; #if OPENTELEMETRY_ABI_VERSION_NO >= 2 static inline nostd::unique_ptr> CreateSyncInt64MetricK8sNodeUptime( metrics::Meter *meter) { return meter->CreateInt64Gauge(kMetricK8sNodeUptime, descrMetricK8sNodeUptime, unitMetricK8sNodeUptime); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sNodeUptime( metrics::Meter *meter) { return meter->CreateDoubleGauge(kMetricK8sNodeUptime, descrMetricK8sNodeUptime, unitMetricK8sNodeUptime); } #endif /* OPENTELEMETRY_ABI_VERSION_NO */ static inline nostd::shared_ptr CreateAsyncInt64MetricK8sNodeUptime( metrics::Meter *meter) { return meter->CreateInt64ObservableGauge(kMetricK8sNodeUptime, descrMetricK8sNodeUptime, unitMetricK8sNodeUptime); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sNodeUptime( metrics::Meter *meter) { return meter->CreateDoubleObservableGauge(kMetricK8sNodeUptime, descrMetricK8sNodeUptime, unitMetricK8sNodeUptime); } /** * Total CPU time consumed *

* Total CPU time consumed by the specific Pod on all available CPU cores *

* counter */ static constexpr const char *kMetricK8sPodCpuTime = "k8s.pod.cpu.time"; static constexpr const char *descrMetricK8sPodCpuTime = "Total CPU time consumed"; static constexpr const char *unitMetricK8sPodCpuTime = "s"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sPodCpuTime( metrics::Meter *meter) { return meter->CreateUInt64Counter(kMetricK8sPodCpuTime, descrMetricK8sPodCpuTime, unitMetricK8sPodCpuTime); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sPodCpuTime( metrics::Meter *meter) { return meter->CreateDoubleCounter(kMetricK8sPodCpuTime, descrMetricK8sPodCpuTime, unitMetricK8sPodCpuTime); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sPodCpuTime( metrics::Meter *meter) { return meter->CreateInt64ObservableCounter(kMetricK8sPodCpuTime, descrMetricK8sPodCpuTime, unitMetricK8sPodCpuTime); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sPodCpuTime( metrics::Meter *meter) { return meter->CreateDoubleObservableCounter(kMetricK8sPodCpuTime, descrMetricK8sPodCpuTime, unitMetricK8sPodCpuTime); } /** * 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 *

* gauge */ static constexpr const char *kMetricK8sPodCpuUsage = "k8s.pod.cpu.usage"; static constexpr const char *descrMetricK8sPodCpuUsage = "Pod's CPU usage, measured in cpus. Range from 0 to the number of allocatable CPUs"; static constexpr const char *unitMetricK8sPodCpuUsage = "{cpu}"; #if OPENTELEMETRY_ABI_VERSION_NO >= 2 static inline nostd::unique_ptr> CreateSyncInt64MetricK8sPodCpuUsage( metrics::Meter *meter) { return meter->CreateInt64Gauge(kMetricK8sPodCpuUsage, descrMetricK8sPodCpuUsage, unitMetricK8sPodCpuUsage); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sPodCpuUsage( metrics::Meter *meter) { return meter->CreateDoubleGauge(kMetricK8sPodCpuUsage, descrMetricK8sPodCpuUsage, unitMetricK8sPodCpuUsage); } #endif /* OPENTELEMETRY_ABI_VERSION_NO */ static inline nostd::shared_ptr CreateAsyncInt64MetricK8sPodCpuUsage( metrics::Meter *meter) { return meter->CreateInt64ObservableGauge(kMetricK8sPodCpuUsage, descrMetricK8sPodCpuUsage, unitMetricK8sPodCpuUsage); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sPodCpuUsage(metrics::Meter *meter) { return meter->CreateDoubleObservableGauge(kMetricK8sPodCpuUsage, descrMetricK8sPodCpuUsage, unitMetricK8sPodCpuUsage); } /** * Memory usage of the Pod *

* Total memory usage of the Pod *

* gauge */ static constexpr const char *kMetricK8sPodMemoryUsage = "k8s.pod.memory.usage"; static constexpr const char *descrMetricK8sPodMemoryUsage = "Memory usage of the Pod"; static constexpr const char *unitMetricK8sPodMemoryUsage = "By"; #if OPENTELEMETRY_ABI_VERSION_NO >= 2 static inline nostd::unique_ptr> CreateSyncInt64MetricK8sPodMemoryUsage( metrics::Meter *meter) { return meter->CreateInt64Gauge(kMetricK8sPodMemoryUsage, descrMetricK8sPodMemoryUsage, unitMetricK8sPodMemoryUsage); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sPodMemoryUsage( metrics::Meter *meter) { return meter->CreateDoubleGauge(kMetricK8sPodMemoryUsage, descrMetricK8sPodMemoryUsage, unitMetricK8sPodMemoryUsage); } #endif /* OPENTELEMETRY_ABI_VERSION_NO */ static inline nostd::shared_ptr CreateAsyncInt64MetricK8sPodMemoryUsage(metrics::Meter *meter) { return meter->CreateInt64ObservableGauge(kMetricK8sPodMemoryUsage, descrMetricK8sPodMemoryUsage, unitMetricK8sPodMemoryUsage); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sPodMemoryUsage(metrics::Meter *meter) { return meter->CreateDoubleObservableGauge(kMetricK8sPodMemoryUsage, descrMetricK8sPodMemoryUsage, unitMetricK8sPodMemoryUsage); } /** * Pod network errors *

* counter */ static constexpr const char *kMetricK8sPodNetworkErrors = "k8s.pod.network.errors"; static constexpr const char *descrMetricK8sPodNetworkErrors = "Pod network errors"; static constexpr const char *unitMetricK8sPodNetworkErrors = "{error}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sPodNetworkErrors(metrics::Meter *meter) { return meter->CreateUInt64Counter(kMetricK8sPodNetworkErrors, descrMetricK8sPodNetworkErrors, unitMetricK8sPodNetworkErrors); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sPodNetworkErrors( metrics::Meter *meter) { return meter->CreateDoubleCounter(kMetricK8sPodNetworkErrors, descrMetricK8sPodNetworkErrors, unitMetricK8sPodNetworkErrors); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sPodNetworkErrors(metrics::Meter *meter) { return meter->CreateInt64ObservableCounter( kMetricK8sPodNetworkErrors, descrMetricK8sPodNetworkErrors, unitMetricK8sPodNetworkErrors); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sPodNetworkErrors(metrics::Meter *meter) { return meter->CreateDoubleObservableCounter( kMetricK8sPodNetworkErrors, descrMetricK8sPodNetworkErrors, unitMetricK8sPodNetworkErrors); } /** * Network bytes for the Pod *

* counter */ static constexpr const char *kMetricK8sPodNetworkIo = "k8s.pod.network.io"; static constexpr const char *descrMetricK8sPodNetworkIo = "Network bytes for the Pod"; static constexpr const char *unitMetricK8sPodNetworkIo = "By"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sPodNetworkIo( metrics::Meter *meter) { return meter->CreateUInt64Counter(kMetricK8sPodNetworkIo, descrMetricK8sPodNetworkIo, unitMetricK8sPodNetworkIo); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sPodNetworkIo( metrics::Meter *meter) { return meter->CreateDoubleCounter(kMetricK8sPodNetworkIo, descrMetricK8sPodNetworkIo, unitMetricK8sPodNetworkIo); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sPodNetworkIo(metrics::Meter *meter) { return meter->CreateInt64ObservableCounter(kMetricK8sPodNetworkIo, descrMetricK8sPodNetworkIo, unitMetricK8sPodNetworkIo); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sPodNetworkIo(metrics::Meter *meter) { return meter->CreateDoubleObservableCounter(kMetricK8sPodNetworkIo, descrMetricK8sPodNetworkIo, unitMetricK8sPodNetworkIo); } /** * The time the Pod has been running *

* Instrumentations SHOULD use a gauge with type @code double @endcode 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.

gauge */ static constexpr const char *kMetricK8sPodUptime = "k8s.pod.uptime"; static constexpr const char *descrMetricK8sPodUptime = "The time the Pod has been running"; static constexpr const char *unitMetricK8sPodUptime = "s"; #if OPENTELEMETRY_ABI_VERSION_NO >= 2 static inline nostd::unique_ptr> CreateSyncInt64MetricK8sPodUptime( metrics::Meter *meter) { return meter->CreateInt64Gauge(kMetricK8sPodUptime, descrMetricK8sPodUptime, unitMetricK8sPodUptime); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sPodUptime( metrics::Meter *meter) { return meter->CreateDoubleGauge(kMetricK8sPodUptime, descrMetricK8sPodUptime, unitMetricK8sPodUptime); } #endif /* OPENTELEMETRY_ABI_VERSION_NO */ static inline nostd::shared_ptr CreateAsyncInt64MetricK8sPodUptime( metrics::Meter *meter) { return meter->CreateInt64ObservableGauge(kMetricK8sPodUptime, descrMetricK8sPodUptime, unitMetricK8sPodUptime); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sPodUptime( metrics::Meter *meter) { return meter->CreateDoubleObservableGauge(kMetricK8sPodUptime, descrMetricK8sPodUptime, unitMetricK8sPodUptime); } /** * Total number of available replica pods (ready for at least minReadySeconds) targeted by this * replicaset

This metric aligns with the @code availableReplicas @endcode field of the K8s * ReplicaSetStatus.

This metric SHOULD, at a minimum, be reported against a @code k8s.replicaset @endcode resource.

* updowncounter */ static constexpr const char *kMetricK8sReplicasetAvailablePods = "k8s.replicaset.available_pods"; static constexpr const char *descrMetricK8sReplicasetAvailablePods = "Total number of available replica pods (ready for at least minReadySeconds) targeted by this " "replicaset"; static constexpr const char *unitMetricK8sReplicasetAvailablePods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sReplicasetAvailablePods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sReplicasetAvailablePods, descrMetricK8sReplicasetAvailablePods, unitMetricK8sReplicasetAvailablePods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sReplicasetAvailablePods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sReplicasetAvailablePods, descrMetricK8sReplicasetAvailablePods, unitMetricK8sReplicasetAvailablePods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sReplicasetAvailablePods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sReplicasetAvailablePods, descrMetricK8sReplicasetAvailablePods, unitMetricK8sReplicasetAvailablePods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sReplicasetAvailablePods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sReplicasetAvailablePods, descrMetricK8sReplicasetAvailablePods, unitMetricK8sReplicasetAvailablePods); } /** * Number of desired replica pods in this replicaset *

* This metric aligns with the @code replicas @endcode field of the * K8s * ReplicaSetSpec.

This metric SHOULD, at a minimum, be reported against a @code k8s.replicaset @endcode resource.

* updowncounter */ static constexpr const char *kMetricK8sReplicasetDesiredPods = "k8s.replicaset.desired_pods"; static constexpr const char *descrMetricK8sReplicasetDesiredPods = "Number of desired replica pods in this replicaset"; static constexpr const char *unitMetricK8sReplicasetDesiredPods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sReplicasetDesiredPods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sReplicasetDesiredPods, descrMetricK8sReplicasetDesiredPods, unitMetricK8sReplicasetDesiredPods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sReplicasetDesiredPods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sReplicasetDesiredPods, descrMetricK8sReplicasetDesiredPods, unitMetricK8sReplicasetDesiredPods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sReplicasetDesiredPods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sReplicasetDesiredPods, descrMetricK8sReplicasetDesiredPods, unitMetricK8sReplicasetDesiredPods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sReplicasetDesiredPods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sReplicasetDesiredPods, descrMetricK8sReplicasetDesiredPods, unitMetricK8sReplicasetDesiredPods); } /** * Deprecated, use @code k8s.replicationcontroller.available_pods @endcode instead. * * @deprecated * {"note": "Replaced by @code k8s.replicationcontroller.available_pods @endcode.", "reason": * "uncategorized"}

This metric aligns with the @code availableReplicas @endcode field of the K8s * ReplicationControllerStatus

This metric SHOULD, at a minimum, be reported against a @code k8s.replicationcontroller @endcode * resource.

updowncounter */ OPENTELEMETRY_DEPRECATED static constexpr const char *kMetricK8sReplicationControllerAvailablePods = "k8s.replication_controller.available_pods"; OPENTELEMETRY_DEPRECATED static constexpr const char *descrMetricK8sReplicationControllerAvailablePods = "Deprecated, use `k8s.replicationcontroller.available_pods` instead."; OPENTELEMETRY_DEPRECATED static constexpr const char *unitMetricK8sReplicationControllerAvailablePods = "{pod}"; OPENTELEMETRY_DEPRECATED static inline nostd::unique_ptr> CreateSyncInt64MetricK8sReplicationControllerAvailablePods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sReplicationControllerAvailablePods, descrMetricK8sReplicationControllerAvailablePods, unitMetricK8sReplicationControllerAvailablePods); } OPENTELEMETRY_DEPRECATED static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sReplicationControllerAvailablePods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sReplicationControllerAvailablePods, descrMetricK8sReplicationControllerAvailablePods, unitMetricK8sReplicationControllerAvailablePods); } OPENTELEMETRY_DEPRECATED static inline nostd::shared_ptr CreateAsyncInt64MetricK8sReplicationControllerAvailablePods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sReplicationControllerAvailablePods, descrMetricK8sReplicationControllerAvailablePods, unitMetricK8sReplicationControllerAvailablePods); } OPENTELEMETRY_DEPRECATED static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sReplicationControllerAvailablePods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter( kMetricK8sReplicationControllerAvailablePods, descrMetricK8sReplicationControllerAvailablePods, unitMetricK8sReplicationControllerAvailablePods); } /** * Deprecated, use @code k8s.replicationcontroller.desired_pods @endcode instead. * * @deprecated * {"note": "Replaced by @code k8s.replicationcontroller.desired_pods @endcode.", "reason": * "uncategorized"}

This metric aligns with the @code replicas @endcode field of the K8s * ReplicationControllerSpec

This metric SHOULD, at a minimum, be reported against a @code k8s.replicationcontroller @endcode * resource.

updowncounter */ OPENTELEMETRY_DEPRECATED static constexpr const char *kMetricK8sReplicationControllerDesiredPods = "k8s.replication_controller.desired_pods"; OPENTELEMETRY_DEPRECATED static constexpr const char *descrMetricK8sReplicationControllerDesiredPods = "Deprecated, use `k8s.replicationcontroller.desired_pods` instead."; OPENTELEMETRY_DEPRECATED static constexpr const char *unitMetricK8sReplicationControllerDesiredPods = "{pod}"; OPENTELEMETRY_DEPRECATED static inline nostd::unique_ptr> CreateSyncInt64MetricK8sReplicationControllerDesiredPods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sReplicationControllerDesiredPods, descrMetricK8sReplicationControllerDesiredPods, unitMetricK8sReplicationControllerDesiredPods); } OPENTELEMETRY_DEPRECATED static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sReplicationControllerDesiredPods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sReplicationControllerDesiredPods, descrMetricK8sReplicationControllerDesiredPods, unitMetricK8sReplicationControllerDesiredPods); } OPENTELEMETRY_DEPRECATED static inline nostd::shared_ptr CreateAsyncInt64MetricK8sReplicationControllerDesiredPods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sReplicationControllerDesiredPods, descrMetricK8sReplicationControllerDesiredPods, unitMetricK8sReplicationControllerDesiredPods); } OPENTELEMETRY_DEPRECATED static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sReplicationControllerDesiredPods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sReplicationControllerDesiredPods, descrMetricK8sReplicationControllerDesiredPods, unitMetricK8sReplicationControllerDesiredPods); } /** * Total number of available replica pods (ready for at least minReadySeconds) targeted by this * replication controller

This metric aligns with the @code availableReplicas @endcode field of * the K8s * ReplicationControllerStatus

This metric SHOULD, at a minimum, be reported against a @code k8s.replicationcontroller @endcode * resource.

updowncounter */ static constexpr const char *kMetricK8sReplicationcontrollerAvailablePods = "k8s.replicationcontroller.available_pods"; static constexpr const char *descrMetricK8sReplicationcontrollerAvailablePods = "Total number of available replica pods (ready for at least minReadySeconds) targeted by this " "replication controller"; static constexpr const char *unitMetricK8sReplicationcontrollerAvailablePods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sReplicationcontrollerAvailablePods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sReplicationcontrollerAvailablePods, descrMetricK8sReplicationcontrollerAvailablePods, unitMetricK8sReplicationcontrollerAvailablePods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sReplicationcontrollerAvailablePods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sReplicationcontrollerAvailablePods, descrMetricK8sReplicationcontrollerAvailablePods, unitMetricK8sReplicationcontrollerAvailablePods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sReplicationcontrollerAvailablePods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sReplicationcontrollerAvailablePods, descrMetricK8sReplicationcontrollerAvailablePods, unitMetricK8sReplicationcontrollerAvailablePods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sReplicationcontrollerAvailablePods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter( kMetricK8sReplicationcontrollerAvailablePods, descrMetricK8sReplicationcontrollerAvailablePods, unitMetricK8sReplicationcontrollerAvailablePods); } /** * Number of desired replica pods in this replication controller *

* This metric aligns with the @code replicas @endcode field of the * K8s * ReplicationControllerSpec

This metric SHOULD, at a minimum, be reported against a @code k8s.replicationcontroller @endcode * resource.

updowncounter */ static constexpr const char *kMetricK8sReplicationcontrollerDesiredPods = "k8s.replicationcontroller.desired_pods"; static constexpr const char *descrMetricK8sReplicationcontrollerDesiredPods = "Number of desired replica pods in this replication controller"; static constexpr const char *unitMetricK8sReplicationcontrollerDesiredPods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sReplicationcontrollerDesiredPods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sReplicationcontrollerDesiredPods, descrMetricK8sReplicationcontrollerDesiredPods, unitMetricK8sReplicationcontrollerDesiredPods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sReplicationcontrollerDesiredPods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sReplicationcontrollerDesiredPods, descrMetricK8sReplicationcontrollerDesiredPods, unitMetricK8sReplicationcontrollerDesiredPods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sReplicationcontrollerDesiredPods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sReplicationcontrollerDesiredPods, descrMetricK8sReplicationcontrollerDesiredPods, unitMetricK8sReplicationcontrollerDesiredPods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sReplicationcontrollerDesiredPods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sReplicationcontrollerDesiredPods, descrMetricK8sReplicationcontrollerDesiredPods, unitMetricK8sReplicationcontrollerDesiredPods); } /** * The number of replica pods created by the statefulset controller from the statefulset version * indicated by currentRevision

This metric aligns with the @code currentReplicas @endcode field * of the K8s * StatefulSetStatus.

This metric SHOULD, at a minimum, be reported against a @code k8s.statefulset @endcode resource.

* updowncounter */ static constexpr const char *kMetricK8sStatefulsetCurrentPods = "k8s.statefulset.current_pods"; static constexpr const char *descrMetricK8sStatefulsetCurrentPods = "The number of replica pods created by the statefulset controller from the statefulset version " "indicated by currentRevision"; static constexpr const char *unitMetricK8sStatefulsetCurrentPods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sStatefulsetCurrentPods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sStatefulsetCurrentPods, descrMetricK8sStatefulsetCurrentPods, unitMetricK8sStatefulsetCurrentPods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sStatefulsetCurrentPods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sStatefulsetCurrentPods, descrMetricK8sStatefulsetCurrentPods, unitMetricK8sStatefulsetCurrentPods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sStatefulsetCurrentPods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sStatefulsetCurrentPods, descrMetricK8sStatefulsetCurrentPods, unitMetricK8sStatefulsetCurrentPods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sStatefulsetCurrentPods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sStatefulsetCurrentPods, descrMetricK8sStatefulsetCurrentPods, unitMetricK8sStatefulsetCurrentPods); } /** * Number of desired replica pods in this statefulset *

* This metric aligns with the @code replicas @endcode field of the * K8s * StatefulSetSpec.

This metric SHOULD, at a minimum, be reported against a @code k8s.statefulset @endcode resource.

* updowncounter */ static constexpr const char *kMetricK8sStatefulsetDesiredPods = "k8s.statefulset.desired_pods"; static constexpr const char *descrMetricK8sStatefulsetDesiredPods = "Number of desired replica pods in this statefulset"; static constexpr const char *unitMetricK8sStatefulsetDesiredPods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sStatefulsetDesiredPods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sStatefulsetDesiredPods, descrMetricK8sStatefulsetDesiredPods, unitMetricK8sStatefulsetDesiredPods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sStatefulsetDesiredPods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sStatefulsetDesiredPods, descrMetricK8sStatefulsetDesiredPods, unitMetricK8sStatefulsetDesiredPods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sStatefulsetDesiredPods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sStatefulsetDesiredPods, descrMetricK8sStatefulsetDesiredPods, unitMetricK8sStatefulsetDesiredPods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sStatefulsetDesiredPods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sStatefulsetDesiredPods, descrMetricK8sStatefulsetDesiredPods, unitMetricK8sStatefulsetDesiredPods); } /** * The number of replica pods created for this statefulset with a Ready Condition *

* This metric aligns with the @code readyReplicas @endcode field of the * K8s * StatefulSetStatus.

This metric SHOULD, at a minimum, be reported against a @code k8s.statefulset @endcode resource.

* updowncounter */ static constexpr const char *kMetricK8sStatefulsetReadyPods = "k8s.statefulset.ready_pods"; static constexpr const char *descrMetricK8sStatefulsetReadyPods = "The number of replica pods created for this statefulset with a Ready Condition"; static constexpr const char *unitMetricK8sStatefulsetReadyPods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sStatefulsetReadyPods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sStatefulsetReadyPods, descrMetricK8sStatefulsetReadyPods, unitMetricK8sStatefulsetReadyPods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sStatefulsetReadyPods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sStatefulsetReadyPods, descrMetricK8sStatefulsetReadyPods, unitMetricK8sStatefulsetReadyPods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sStatefulsetReadyPods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sStatefulsetReadyPods, descrMetricK8sStatefulsetReadyPods, unitMetricK8sStatefulsetReadyPods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sStatefulsetReadyPods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sStatefulsetReadyPods, descrMetricK8sStatefulsetReadyPods, unitMetricK8sStatefulsetReadyPods); } /** * Number of replica pods created by the statefulset controller from the statefulset version * indicated by updateRevision

This metric aligns with the @code updatedReplicas @endcode field * of the K8s * StatefulSetStatus.

This metric SHOULD, at a minimum, be reported against a @code k8s.statefulset @endcode resource.

* updowncounter */ static constexpr const char *kMetricK8sStatefulsetUpdatedPods = "k8s.statefulset.updated_pods"; static constexpr const char *descrMetricK8sStatefulsetUpdatedPods = "Number of replica pods created by the statefulset controller from the statefulset version " "indicated by updateRevision"; static constexpr const char *unitMetricK8sStatefulsetUpdatedPods = "{pod}"; static inline nostd::unique_ptr> CreateSyncInt64MetricK8sStatefulsetUpdatedPods(metrics::Meter *meter) { return meter->CreateInt64UpDownCounter(kMetricK8sStatefulsetUpdatedPods, descrMetricK8sStatefulsetUpdatedPods, unitMetricK8sStatefulsetUpdatedPods); } static inline nostd::unique_ptr> CreateSyncDoubleMetricK8sStatefulsetUpdatedPods(metrics::Meter *meter) { return meter->CreateDoubleUpDownCounter(kMetricK8sStatefulsetUpdatedPods, descrMetricK8sStatefulsetUpdatedPods, unitMetricK8sStatefulsetUpdatedPods); } static inline nostd::shared_ptr CreateAsyncInt64MetricK8sStatefulsetUpdatedPods(metrics::Meter *meter) { return meter->CreateInt64ObservableUpDownCounter(kMetricK8sStatefulsetUpdatedPods, descrMetricK8sStatefulsetUpdatedPods, unitMetricK8sStatefulsetUpdatedPods); } static inline nostd::shared_ptr CreateAsyncDoubleMetricK8sStatefulsetUpdatedPods(metrics::Meter *meter) { return meter->CreateDoubleObservableUpDownCounter(kMetricK8sStatefulsetUpdatedPods, descrMetricK8sStatefulsetUpdatedPods, unitMetricK8sStatefulsetUpdatedPods); } } // namespace k8s } // namespace semconv OPENTELEMETRY_END_NAMESPACE