Module: OpenTelemetry::SDK::Resources::Constants

Defined in:
lib/opentelemetry/sdk/resources/constants.rb

Constant Summary collapse

SERVICE_RESOURCE =

Attributes describing a service instance.

{
  # Logical name of the service.
  name: 'service.name',

  # A namespace for `service.name`.
  namespace: 'service.namespace',

  # The string ID of the service instance.
  instance_id: 'service.instance.id',

  # The version string of the service API or implementation.
  version: 'service.version'
}.freeze
TELEMETRY_SDK_RESOURCE =

Attributes describing the telemetry library.

{
  # The name of the telemetry library.
  name: 'telemetry.sdk.name',

  # The language of the telemetry library and of the code instrumented with it.
  language: 'telemetry.sdk.language',

  # The version string of the telemetry library
  version: 'telemetry.sdk.version'
}.freeze
CONTAINER_RESOURCE =

Attributes defining a compute unit (e.g. Container, Process, Lambda Function).

{
  # The container name.
  name: 'container.name',

  # The name of the image the container was built on.
  image_name: 'container.image.name',

  # The container image tag.
  image_tag: 'container.image.tag'
}.freeze
FAAS_RESOURCE =
{
  # The name of the function being executed.
  name: 'faas.name',

  # The unique name of the function being executed.
  id: 'faas.id',

  # The version string of the function being executed.
  version: 'faas.version',

  # The execution environment ID as a string.
  instance: 'faas.instance'
}.freeze
K8S_RESOURCE =

Attributes defining a deployment service (e.g. Kubernetes).

{
  # The name of the cluster that the pod is running in.
  cluster_name: 'k8s.cluster.name',

  # The name of the Node.
  node_name: 'k8s.node.name',

  # The UID of the Node.
  node_uid: 'k8s.node.uid',

  # The name of the namespace that the pod is running in.
  namespace_name: 'k8s.namespace.name',

  # The name of the pod.
  pod_name: 'k8s.pod.name',

  # The UID of the Pod.
  pod_uid: 'k8s.pod.uid',

  #  The name of the Container in a Pod template.
  container_name: 'k8s.container.name',

  # The UID of the ReplicaSet.
  replicaset_uid: 'k8s.replicaset.uid',

  # The name of the ReplicaSet.
  replicaset_name: 'k8s.replicaset.name',

  # The UID of the Deployment.
  deployment_uid: 'k8s.deployment.uid',

  # The name of the deployment.
  deployment_name: 'k8s.deployment.name',

  # The UID of the StatefulSet.
  statefulset_uid: 'k8s.statefulset.uid',

  # The name of the StatefulSet.
  statefulset_name: 'k8s.statefulset.name',

  # The UID of the DaemonSet.
  daemonset_uid: 'k8s.daemonset.uid',

  # The name of the DaemonSet.
  daemonset_name: 'k8s.daemonset.name',

  # The UID of the Job.
  job_uid: 'k8s.job.uid',

  # The name of the Job.
  job_name: 'k8s.job.name',

  # The UID of the CronJob.
  cronjob_uid: 'k8s.cronjob.uid',

  # The name of the CronJob.
  cronjob_name: 'k8s.cronjob.name'
}.freeze
PROCESS_RESOURCE =

Attributes defining an operating system process.

{
  # Process identifier (PID).
  pid: 'process.pid',

  # The name of the process executable.
  executable_name: 'process.executable.name',

  # The full path to the process executable.
  executable_path: 'process.executable.path',

  # The command used to launch the process (i.e. the command name).
  command: 'process.command',

  # The full command used to launch the process as a single string
  # representing the full command.
  command_line: 'process.command_line',

  # All the command arguments (including the command/executable itself)
  # as received by the process.
  command_args: 'process.command_args',

  # The username of the user that owns the process.
  owner: 'process.owner'
}.freeze
PROCESS_RUNTIME_RESOURCE =

Attributes defining the single (language) runtime instance which is monitored.

{
  # The name of the runtime of this process.
  name: 'process.runtime.name',

  # The version of the runtime of this process, as returned by the runtime
  # without modification.
  version: 'process.runtime.version',

  # An additional description about the runtime of the process, for example
  # a specific vendor customization of the runtime environment.
  description: 'process.runtime.description'
}.freeze
HOST_RESOURCE =

Attributes defining a computing instance (e.g. host).

{
  # Unique host id. For Cloud this must be the instance_id assigned by the
  # cloud provider
  id: 'host.id',

  # Name of the host. It may contain what hostname returns on Unix systems,
  # the fully qualified, or a name specified by the user.
  name: 'host.name',

  # Type of host. For Cloud this must be the machine type.
  type: 'host.type',

  # Name of the VM image or OS install the host was instantiated from.
  image_name: 'host.image.name',

  # VM image id. For Cloud, this value is from the provider.
  image_id: 'host.image.id',

  # The version string of the VM image.
  image_version: 'host.image.version'
}.freeze
CLOUD_RESOURCE =

Attributes defining a running environment (e.g. Cloud, Data Center).

{
  # Name of the cloud provider. Example values are aws, azure, gcp.
  provider: 'cloud.provider',

  # The cloud account id used to identify different entities.
  account_id: 'cloud.account.id',

  # A specific geographical location where different entities can run.
  region: 'cloud.region',

  # Zones are a sub set of the region connected through low-latency links.
  zone: 'cloud.zone'
}.freeze