logo
Expand description

Resource Semantic Conventions

The resource semantic conventions define a set of standardized attributes to be used in Resources.

Usage

use opentelemetry::sdk;
use opentelemetry_semantic_conventions as semcov;

let _tracer = opentelemetry::sdk::export::trace::stdout::new_pipeline()
    .with_trace_config(sdk::trace::config().with_resource(sdk::Resource::new(vec![
        semcov::resource::SERVICE_NAME.string("my-service"),
        semcov::resource::SERVICE_NAMESPACE.string("my-namespace"),
    ])))
    .install_simple();

Constants

The Amazon Resource Name (ARN) of an ECS container instance.

The launch type for an ECS task.

The task definition family this task definition is a member of.

The revision for this task definition.

The ARN of an EKS cluster.

The Amazon Resource Name(s) (ARN) of the AWS log group(s).

The name(s) of the AWS log group(s) an application is writing to.

The ARN(s) of the AWS log stream(s).

The name(s) of the AWS log stream(s) an application is writing to.

The cloud account ID the resource is assigned to.

Cloud regions often have multiple, isolated locations known as zones to increase availability. Availability zone represents the zone where the resource is running.

The cloud platform in use.

Name of the cloud provider.

The geographical region the resource is running.

Container ID. Usually a UUID, as for example used to identify Docker containers. The UUID might be abbreviated.

Name of the image the container was built on.

Container image tag.

Container name used by container runtime.

The container runtime managing this container.

Name of the deployment environment (aka deployment tier).

A unique identifier representing the device.

The name of the device manufacturer.

The model identifier for the device.

The marketing name for the device model.

The unique ID of the single function that this runtime instance executes.

The execution environment ID as a string, that will be potentially reused for other invocations to the same function/function version.

The amount of memory available to the serverless function in MiB.

The name of the single function that this runtime instance executes.

The immutable version of the function being executed.

The CPU architecture the host system is running on.

Unique host ID. For Cloud, this must be the instance_id assigned by the cloud provider.

VM image ID. For Cloud, this value is from the provider.

Name of the VM image or OS install the host was instantiated from.

The version string of the VM image as defined in Version Attributes.

Name of the host. On Unix systems, it may contain what the hostname command returns, or the fully qualified hostname, or another name specified by the user.

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

The name of the cluster.

The name of the Container from Pod specification, must be unique within a Pod. Container runtime usually uses different globally unique name (container.name).

Number of times the container was restarted. This attribute can be used to identify a particular container (running or stopped) within a container spec.

The name of the CronJob.

The UID of the CronJob.

The name of the DaemonSet.

The UID of the DaemonSet.

The name of the Deployment.

The UID of the Deployment.

The name of the Job.

The UID of the Job.

The name of the namespace that the pod is running in.

The name of the Node.

The UID of the Node.

The name of the Pod.

The UID of the Pod.

The name of the ReplicaSet.

The UID of the ReplicaSet.

The name of the StatefulSet.

The UID of the StatefulSet.

Human readable (not intended to be parsed) OS version information, like e.g. reported by ver or lsb_release -a commands.

Human readable operating system name.

The operating system type.

The version string of the operating system as defined in Version Attributes.

The command used to launch the process (i.e. the command name). On Linux based systems, can be set to the zeroth string in proc/[pid]/cmdline. On Windows, can be set to the first parameter extracted from GetCommandLineW.

All the command arguments (including the command/executable itself) as received by the process. On Linux-based systems (and some other Unixoid systems supporting procfs), can be set according to the list of null-delimited strings extracted from proc/[pid]/cmdline. For libc-based executables, this would be the full argv vector passed to main.

The full command used to launch the process as a single string representing the full command. On Windows, can be set to the result of GetCommandLineW. Do not set this if you have to assemble it just for monitoring; use process.command_args instead.

The name of the process executable. On Linux based systems, can be set to the Name in proc/[pid]/status. On Windows, can be set to the base name of GetProcessImageFileNameW.

The full path to the process executable. On Linux based systems, can be set to the target of proc/[pid]/exe. On Windows, can be set to the result of GetProcessImageFileNameW.

The username of the user that owns the process.

Process identifier (PID).

An additional description about the runtime of the process, for example a specific vendor customization of the runtime environment.

The name of the runtime of this process. For compiled native binaries, this SHOULD be the name of the compiler.

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

The string ID of the service instance.

Logical name of the service.

A namespace for service.name.

The version string of the service API or implementation.

The version string of the auto instrumentation agent, if used.

The language of the telemetry SDK.

The name of the telemetry SDK as defined above.

The version string of the telemetry SDK.

Additional description of the web engine (e.g. detailed version and edition information).

The name of the web engine.

The version of the web engine.