diff --git a/script/semantic-conventions/semconv.sh b/script/semantic-conventions/semconv.sh index 610b565f8..778baa15c 100755 --- a/script/semantic-conventions/semconv.sh +++ b/script/semantic-conventions/semconv.sh @@ -17,10 +17,10 @@ SPEC_DIR="${ROOT_DIR}/var/semantic-conventions" CODE_DIR="${ROOT_DIR}/src/SemConv" # freeze the spec & generator tools versions to make SemanticAttributes generation reproducible -SEMCONV_VERSION=${SEMCONV_VERSION:=1.26.0} +SEMCONV_VERSION=${SEMCONV_VERSION:=1.27.0} SPEC_VERSION=v$SEMCONV_VERSION SCHEMA_URL=https://opentelemetry.io/schemas/$SEMCONV_VERSION -GENERATOR_VERSION=0.24.0 +GENERATOR_VERSION=0.25.0 cd "${SCRIPT_DIR}" @@ -45,7 +45,7 @@ docker run --rm \ -v "${CODE_DIR}:/output" \ -u "${UID}" \ otel/semconvgen:$GENERATOR_VERSION \ - --only span,event,attribute_group,scope \ + --only span,event,attribute_group \ --yaml-root /source \ code \ --template /templates/Attributes.php.j2 \ @@ -77,7 +77,7 @@ docker run --rm \ -v "${CODE_DIR}:/output" \ -u "${UID}" \ otel/semconvgen:$GENERATOR_VERSION \ - --only span,event,attribute_group,scope \ + --only span,event,attribute_group \ --yaml-root /source \ code \ --template /templates/AttributeValues.php.j2 \ diff --git a/script/semantic-conventions/templates/AttributeValues.php.j2 b/script/semantic-conventions/templates/AttributeValues.php.j2 index b6d493bcd..c7a836fd7 100644 --- a/script/semantic-conventions/templates/AttributeValues.php.j2 +++ b/script/semantic-conventions/templates/AttributeValues.php.j2 @@ -18,11 +18,16 @@ interface {{ class }}AttributeValues {%- for member in attribute.attr_type.members %} {%- if member.brief %} /** - * @see {{ class }}Attributes::{{ attribute.fqn | to_const_name }} {% filter escape %}{{member.brief | to_doc_brief}}{% endfilter %} + * {% filter escape %}{{member.brief | to_doc_brief}}{% endfilter %} + * + * @see {{ class }}Attributes::{{ attribute.fqn | to_const_name }} {%- if member.note %} * * {{ member.note | render_markdown(code="{0}", paragraph="{0}") | regex_replace(pattern="\n", replace="\n * ") }} {%- endif %} + {%- if member | is_deprecated %} + * @deprecated {{ member.deprecated | to_doc_brief }}. + {%- endif %} */ {%- endif %} public const {{ attribute.fqn | to_const_name }}_{{ member.member_id | to_const_name }} = '{{ member.value }}'; diff --git a/script/semantic-conventions/templates/resource_deprecations.php.partial b/script/semantic-conventions/templates/resource_deprecations.php.partial index 9aa1bbb41..94b78e9b3 100644 --- a/script/semantic-conventions/templates/resource_deprecations.php.partial +++ b/script/semantic-conventions/templates/resource_deprecations.php.partial @@ -27,3 +27,8 @@ * @deprecated Use `otel.scope.version` */ public const OTEL_LIBRARY_VERSION = 'otel.library.version'; + + /** + * @deprecated Use `deployment.environment.name` + */ + public const DEPLOYMENT_ENVIRONMENT = 'deployment.environment'; \ No newline at end of file diff --git a/src/SDK/Trace/SpanLimitsBuilder.php b/src/SDK/Trace/SpanLimitsBuilder.php index 11ed5a82b..c8c8189f3 100644 --- a/src/SDK/Trace/SpanLimitsBuilder.php +++ b/src/SDK/Trace/SpanLimitsBuilder.php @@ -107,6 +107,7 @@ public function retainGeneralIdentityAttributes(bool $retain = true): SpanLimits /** * @see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#span-limits + * @phan-suppress PhanDeprecatedClassConstant */ public function build(): SpanLimits { @@ -131,9 +132,8 @@ public function build(): SpanLimits if (!$this->retainGeneralIdentityAttributes) { $spanAttributesFactory = new FilteredAttributesFactory($spanAttributesFactory, [ - TraceAttributes::ENDUSER_ID, - TraceAttributes::ENDUSER_ROLE, - TraceAttributes::ENDUSER_SCOPE, + TraceAttributes::USER_ID, + TraceAttributes::USER_ROLES, ]); } diff --git a/src/SemConv/ResourceAttributeValues.php b/src/SemConv/ResourceAttributeValues.php index 93a333b85..6be5fbb90 100644 --- a/src/SemConv/ResourceAttributeValues.php +++ b/src/SemConv/ResourceAttributeValues.php @@ -11,344 +11,480 @@ interface ResourceAttributeValues /** * The URL of the OpenTelemetry schema for these keys and values. */ - public const SCHEMA_URL = 'https://opentelemetry.io/schemas/1.26.0'; + public const SCHEMA_URL = 'https://opentelemetry.io/schemas/1.27.0'; /** - * @see ResourceAttributes::AWS_ECS_LAUNCHTYPE ec2 + * ec2 + * + * @see ResourceAttributes::AWS_ECS_LAUNCHTYPE */ public const AWS_ECS_LAUNCHTYPE_EC2 = 'ec2'; /** - * @see ResourceAttributes::AWS_ECS_LAUNCHTYPE fargate + * fargate + * + * @see ResourceAttributes::AWS_ECS_LAUNCHTYPE */ public const AWS_ECS_LAUNCHTYPE_FARGATE = 'fargate'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Alibaba Cloud Elastic Compute Service + * Alibaba Cloud Elastic Compute Service + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_ALIBABA_CLOUD_ECS = 'alibaba_cloud_ecs'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Alibaba Cloud Function Compute + * Alibaba Cloud Function Compute + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_ALIBABA_CLOUD_FC = 'alibaba_cloud_fc'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Red Hat OpenShift on Alibaba Cloud + * Red Hat OpenShift on Alibaba Cloud + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_ALIBABA_CLOUD_OPENSHIFT = 'alibaba_cloud_openshift'; /** - * @see ResourceAttributes::CLOUD_PLATFORM AWS Elastic Compute Cloud + * AWS Elastic Compute Cloud + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AWS_EC2 = 'aws_ec2'; /** - * @see ResourceAttributes::CLOUD_PLATFORM AWS Elastic Container Service + * AWS Elastic Container Service + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AWS_ECS = 'aws_ecs'; /** - * @see ResourceAttributes::CLOUD_PLATFORM AWS Elastic Kubernetes Service + * AWS Elastic Kubernetes Service + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AWS_EKS = 'aws_eks'; /** - * @see ResourceAttributes::CLOUD_PLATFORM AWS Lambda + * AWS Lambda + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AWS_LAMBDA = 'aws_lambda'; /** - * @see ResourceAttributes::CLOUD_PLATFORM AWS Elastic Beanstalk + * AWS Elastic Beanstalk + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AWS_ELASTIC_BEANSTALK = 'aws_elastic_beanstalk'; /** - * @see ResourceAttributes::CLOUD_PLATFORM AWS App Runner + * AWS App Runner + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AWS_APP_RUNNER = 'aws_app_runner'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Red Hat OpenShift on AWS (ROSA) + * Red Hat OpenShift on AWS (ROSA) + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AWS_OPENSHIFT = 'aws_openshift'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Azure Virtual Machines + * Azure Virtual Machines + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AZURE_VM = 'azure_vm'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Azure Container Apps + * Azure Container Apps + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AZURE_CONTAINER_APPS = 'azure_container_apps'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Azure Container Instances + * Azure Container Instances + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AZURE_CONTAINER_INSTANCES = 'azure_container_instances'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Azure Kubernetes Service + * Azure Kubernetes Service + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AZURE_AKS = 'azure_aks'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Azure Functions + * Azure Functions + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AZURE_FUNCTIONS = 'azure_functions'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Azure App Service + * Azure App Service + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AZURE_APP_SERVICE = 'azure_app_service'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Azure Red Hat OpenShift + * Azure Red Hat OpenShift + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AZURE_OPENSHIFT = 'azure_openshift'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Google Bare Metal Solution (BMS) + * Google Bare Metal Solution (BMS) + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_GCP_BARE_METAL_SOLUTION = 'gcp_bare_metal_solution'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Google Cloud Compute Engine (GCE) + * Google Cloud Compute Engine (GCE) + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_GCP_COMPUTE_ENGINE = 'gcp_compute_engine'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Google Cloud Run + * Google Cloud Run + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_GCP_CLOUD_RUN = 'gcp_cloud_run'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Google Cloud Kubernetes Engine (GKE) + * Google Cloud Kubernetes Engine (GKE) + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_GCP_KUBERNETES_ENGINE = 'gcp_kubernetes_engine'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Google Cloud Functions (GCF) + * Google Cloud Functions (GCF) + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_GCP_CLOUD_FUNCTIONS = 'gcp_cloud_functions'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Google Cloud App Engine (GAE) + * Google Cloud App Engine (GAE) + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_GCP_APP_ENGINE = 'gcp_app_engine'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Red Hat OpenShift on Google Cloud + * Red Hat OpenShift on Google Cloud + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_GCP_OPENSHIFT = 'gcp_openshift'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Red Hat OpenShift on IBM Cloud + * Red Hat OpenShift on IBM Cloud + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_IBM_CLOUD_OPENSHIFT = 'ibm_cloud_openshift'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Tencent Cloud Cloud Virtual Machine (CVM) + * Tencent Cloud Cloud Virtual Machine (CVM) + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_TENCENT_CLOUD_CVM = 'tencent_cloud_cvm'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Tencent Cloud Elastic Kubernetes Service (EKS) + * Tencent Cloud Elastic Kubernetes Service (EKS) + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_TENCENT_CLOUD_EKS = 'tencent_cloud_eks'; /** - * @see ResourceAttributes::CLOUD_PLATFORM Tencent Cloud Serverless Cloud Function (SCF) + * Tencent Cloud Serverless Cloud Function (SCF) + * + * @see ResourceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_TENCENT_CLOUD_SCF = 'tencent_cloud_scf'; /** - * @see ResourceAttributes::CLOUD_PROVIDER Alibaba Cloud + * Alibaba Cloud + * + * @see ResourceAttributes::CLOUD_PROVIDER */ public const CLOUD_PROVIDER_ALIBABA_CLOUD = 'alibaba_cloud'; /** - * @see ResourceAttributes::CLOUD_PROVIDER Amazon Web Services + * Amazon Web Services + * + * @see ResourceAttributes::CLOUD_PROVIDER */ public const CLOUD_PROVIDER_AWS = 'aws'; /** - * @see ResourceAttributes::CLOUD_PROVIDER Microsoft Azure + * Microsoft Azure + * + * @see ResourceAttributes::CLOUD_PROVIDER */ public const CLOUD_PROVIDER_AZURE = 'azure'; /** - * @see ResourceAttributes::CLOUD_PROVIDER Google Cloud Platform + * Google Cloud Platform + * + * @see ResourceAttributes::CLOUD_PROVIDER */ public const CLOUD_PROVIDER_GCP = 'gcp'; /** - * @see ResourceAttributes::CLOUD_PROVIDER Heroku Platform as a Service + * Heroku Platform as a Service + * + * @see ResourceAttributes::CLOUD_PROVIDER */ public const CLOUD_PROVIDER_HEROKU = 'heroku'; /** - * @see ResourceAttributes::CLOUD_PROVIDER IBM Cloud + * IBM Cloud + * + * @see ResourceAttributes::CLOUD_PROVIDER */ public const CLOUD_PROVIDER_IBM_CLOUD = 'ibm_cloud'; /** - * @see ResourceAttributes::CLOUD_PROVIDER Tencent Cloud + * Tencent Cloud + * + * @see ResourceAttributes::CLOUD_PROVIDER */ public const CLOUD_PROVIDER_TENCENT_CLOUD = 'tencent_cloud'; /** - * @see ResourceAttributes::HOST_ARCH AMD64 + * AMD64 + * + * @see ResourceAttributes::HOST_ARCH */ public const HOST_ARCH_AMD64 = 'amd64'; /** - * @see ResourceAttributes::HOST_ARCH ARM32 + * ARM32 + * + * @see ResourceAttributes::HOST_ARCH */ public const HOST_ARCH_ARM32 = 'arm32'; /** - * @see ResourceAttributes::HOST_ARCH ARM64 + * ARM64 + * + * @see ResourceAttributes::HOST_ARCH */ public const HOST_ARCH_ARM64 = 'arm64'; /** - * @see ResourceAttributes::HOST_ARCH Itanium + * Itanium + * + * @see ResourceAttributes::HOST_ARCH */ public const HOST_ARCH_IA64 = 'ia64'; /** - * @see ResourceAttributes::HOST_ARCH 32-bit PowerPC + * 32-bit PowerPC + * + * @see ResourceAttributes::HOST_ARCH */ public const HOST_ARCH_PPC32 = 'ppc32'; /** - * @see ResourceAttributes::HOST_ARCH 64-bit PowerPC + * 64-bit PowerPC + * + * @see ResourceAttributes::HOST_ARCH */ public const HOST_ARCH_PPC64 = 'ppc64'; /** - * @see ResourceAttributes::HOST_ARCH IBM z/Architecture + * IBM z/Architecture + * + * @see ResourceAttributes::HOST_ARCH */ public const HOST_ARCH_S390X = 's390x'; /** - * @see ResourceAttributes::HOST_ARCH 32-bit x86 + * 32-bit x86 + * + * @see ResourceAttributes::HOST_ARCH */ public const HOST_ARCH_X86 = 'x86'; /** - * @see ResourceAttributes::OS_TYPE Microsoft Windows + * Microsoft Windows + * + * @see ResourceAttributes::OS_TYPE */ public const OS_TYPE_WINDOWS = 'windows'; /** - * @see ResourceAttributes::OS_TYPE Linux + * Linux + * + * @see ResourceAttributes::OS_TYPE */ public const OS_TYPE_LINUX = 'linux'; /** - * @see ResourceAttributes::OS_TYPE Apple Darwin + * Apple Darwin + * + * @see ResourceAttributes::OS_TYPE */ public const OS_TYPE_DARWIN = 'darwin'; /** - * @see ResourceAttributes::OS_TYPE FreeBSD + * FreeBSD + * + * @see ResourceAttributes::OS_TYPE */ public const OS_TYPE_FREEBSD = 'freebsd'; /** - * @see ResourceAttributes::OS_TYPE NetBSD + * NetBSD + * + * @see ResourceAttributes::OS_TYPE */ public const OS_TYPE_NETBSD = 'netbsd'; /** - * @see ResourceAttributes::OS_TYPE OpenBSD + * OpenBSD + * + * @see ResourceAttributes::OS_TYPE */ public const OS_TYPE_OPENBSD = 'openbsd'; /** - * @see ResourceAttributes::OS_TYPE DragonFly BSD + * DragonFly BSD + * + * @see ResourceAttributes::OS_TYPE */ public const OS_TYPE_DRAGONFLYBSD = 'dragonflybsd'; /** - * @see ResourceAttributes::OS_TYPE HP-UX (Hewlett Packard Unix) + * HP-UX (Hewlett Packard Unix) + * + * @see ResourceAttributes::OS_TYPE */ public const OS_TYPE_HPUX = 'hpux'; /** - * @see ResourceAttributes::OS_TYPE AIX (Advanced Interactive eXecutive) + * AIX (Advanced Interactive eXecutive) + * + * @see ResourceAttributes::OS_TYPE */ public const OS_TYPE_AIX = 'aix'; /** - * @see ResourceAttributes::OS_TYPE SunOS, Oracle Solaris + * SunOS, Oracle Solaris + * + * @see ResourceAttributes::OS_TYPE */ public const OS_TYPE_SOLARIS = 'solaris'; /** - * @see ResourceAttributes::OS_TYPE IBM z/OS + * IBM z/OS + * + * @see ResourceAttributes::OS_TYPE */ public const OS_TYPE_Z_OS = 'z_os'; /** - * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE cpp + * cpp + * + * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_CPP = 'cpp'; /** - * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE dotnet + * dotnet + * + * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_DOTNET = 'dotnet'; /** - * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE erlang + * erlang + * + * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_ERLANG = 'erlang'; /** - * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE go + * go + * + * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_GO = 'go'; /** - * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE java + * java + * + * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_JAVA = 'java'; /** - * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE nodejs + * nodejs + * + * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_NODEJS = 'nodejs'; /** - * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE php + * php + * + * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_PHP = 'php'; /** - * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE python + * python + * + * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_PYTHON = 'python'; /** - * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE ruby + * ruby + * + * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_RUBY = 'ruby'; /** - * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE rust + * rust + * + * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_RUST = 'rust'; /** - * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE swift + * swift + * + * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_SWIFT = 'swift'; /** - * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE webjs + * webjs + * + * @see ResourceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_WEBJS = 'webjs'; } diff --git a/src/SemConv/ResourceAttributes.php b/src/SemConv/ResourceAttributes.php index 7c87a64c3..8f1084b5b 100644 --- a/src/SemConv/ResourceAttributes.php +++ b/src/SemConv/ResourceAttributes.php @@ -11,7 +11,7 @@ interface ResourceAttributes /** * The URL of the OpenTelemetry schema for these keys and values. */ - public const SCHEMA_URL = 'https://opentelemetry.io/schemas/1.26.0'; + public const SCHEMA_URL = 'https://opentelemetry.io/schemas/1.27.0'; /** * Uniquely identifies the framework API revision offered by a version (`os.version`) of the android operating system. More information can be found here. @@ -203,7 +203,7 @@ interface ResourceAttributes *
  • AWS Lambda: The function ARN. * Take care not to use the "invoked ARN" directly but replace any * alias suffix - * with the resolved function version, as the same runtime instance may be invokable with + * with the resolved function version, as the same runtime instance may be invocable with * multiple different aliases.
  • *
  • GCP: The URI of the resource
  • *
  • Azure: The Fully Qualified Resource ID of the invoked function, @@ -304,18 +304,18 @@ interface ResourceAttributes /** * Name of the deployment environment (aka deployment tier). * - * `deployment.environment` does not affect the uniqueness constraints defined through + * `deployment.environment.name` does not affect the uniqueness constraints defined through * the `service.namespace`, `service.name` and `service.instance.id` resource attributes. * This implies that resources carrying the following attribute combinations MUST be * considered to be identifying the same service: * * @example staging * @example production */ - public const DEPLOYMENT_ENVIRONMENT = 'deployment.environment'; + public const DEPLOYMENT_ENVIRONMENT_NAME = 'deployment.environment.name'; /** * A unique identifier representing the device. @@ -883,7 +883,7 @@ interface ResourceAttributes public const PROCESS_RUNTIME_DESCRIPTION = 'process.runtime.description'; /** - * The name of the runtime of this process. For compiled native binaries, this SHOULD be the name of the compiler. + * The name of the runtime of this process. * * @example OpenJDK Runtime Environment */ @@ -1050,4 +1050,9 @@ interface ResourceAttributes * @deprecated Use `otel.scope.version` */ public const OTEL_LIBRARY_VERSION = 'otel.library.version'; + + /** + * @deprecated Use `deployment.environment.name` + */ + public const DEPLOYMENT_ENVIRONMENT = 'deployment.environment'; } diff --git a/src/SemConv/TraceAttributeValues.php b/src/SemConv/TraceAttributeValues.php index 7a25d74bb..65151d3ad 100644 --- a/src/SemConv/TraceAttributeValues.php +++ b/src/SemConv/TraceAttributeValues.php @@ -11,1986 +11,3137 @@ interface TraceAttributeValues /** * The URL of the OpenTelemetry schema for these keys and values. */ - public const SCHEMA_URL = 'https://opentelemetry.io/schemas/1.26.0'; + public const SCHEMA_URL = 'https://opentelemetry.io/schemas/1.27.0'; /** - * @see TraceAttributes::ANDROID_STATE Any time before Activity.onResume() or, if the app has no Activity, Context.startService() has been called in the app for the first time + * Any time before Activity.onResume() or, if the app has no Activity, Context.startService() has been called in the app for the first time + * + * @see TraceAttributes::ANDROID_STATE */ public const ANDROID_STATE_CREATED = 'created'; /** - * @see TraceAttributes::ANDROID_STATE Any time after Activity.onPause() or, if the app has no Activity, Context.stopService() has been called when the app was in the foreground state + * Any time after Activity.onPause() or, if the app has no Activity, Context.stopService() has been called when the app was in the foreground state + * + * @see TraceAttributes::ANDROID_STATE */ public const ANDROID_STATE_BACKGROUND = 'background'; /** - * @see TraceAttributes::ANDROID_STATE Any time after Activity.onResume() or, if the app has no Activity, Context.startService() has been called when the app was in either the created or background states + * Any time after Activity.onResume() or, if the app has no Activity, Context.startService() has been called when the app was in either the created or background states + * + * @see TraceAttributes::ANDROID_STATE */ public const ANDROID_STATE_FOREGROUND = 'foreground'; /** - * @see TraceAttributes::ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT Exception was handled by the exception handling middleware + * Exception was handled by the exception handling middleware + * + * @see TraceAttributes::ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT */ public const ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_HANDLED = 'handled'; /** - * @see TraceAttributes::ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT Exception was not handled by the exception handling middleware + * Exception was not handled by the exception handling middleware + * + * @see TraceAttributes::ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT */ public const ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_UNHANDLED = 'unhandled'; /** - * @see TraceAttributes::ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT Exception handling was skipped because the response had started + * Exception handling was skipped because the response had started + * + * @see TraceAttributes::ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT */ public const ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_SKIPPED = 'skipped'; /** - * @see TraceAttributes::ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT Exception handling didn't run because the request was aborted + * Exception handling didn't run because the request was aborted + * + * @see TraceAttributes::ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT */ public const ASPNETCORE_DIAGNOSTICS_EXCEPTION_RESULT_ABORTED = 'aborted'; /** - * @see TraceAttributes::ASPNETCORE_RATE_LIMITING_RESULT Lease was acquired + * Lease was acquired + * + * @see TraceAttributes::ASPNETCORE_RATE_LIMITING_RESULT */ public const ASPNETCORE_RATE_LIMITING_RESULT_ACQUIRED = 'acquired'; /** - * @see TraceAttributes::ASPNETCORE_RATE_LIMITING_RESULT Lease request was rejected by the endpoint limiter + * Lease request was rejected by the endpoint limiter + * + * @see TraceAttributes::ASPNETCORE_RATE_LIMITING_RESULT */ public const ASPNETCORE_RATE_LIMITING_RESULT_ENDPOINT_LIMITER = 'endpoint_limiter'; /** - * @see TraceAttributes::ASPNETCORE_RATE_LIMITING_RESULT Lease request was rejected by the global limiter + * Lease request was rejected by the global limiter + * + * @see TraceAttributes::ASPNETCORE_RATE_LIMITING_RESULT */ public const ASPNETCORE_RATE_LIMITING_RESULT_GLOBAL_LIMITER = 'global_limiter'; /** - * @see TraceAttributes::ASPNETCORE_RATE_LIMITING_RESULT Lease request was canceled + * Lease request was canceled + * + * @see TraceAttributes::ASPNETCORE_RATE_LIMITING_RESULT */ public const ASPNETCORE_RATE_LIMITING_RESULT_REQUEST_CANCELED = 'request_canceled'; /** - * @see TraceAttributes::ASPNETCORE_ROUTING_MATCH_STATUS Match succeeded + * Match succeeded + * + * @see TraceAttributes::ASPNETCORE_ROUTING_MATCH_STATUS */ public const ASPNETCORE_ROUTING_MATCH_STATUS_SUCCESS = 'success'; /** - * @see TraceAttributes::ASPNETCORE_ROUTING_MATCH_STATUS Match failed + * Match failed + * + * @see TraceAttributes::ASPNETCORE_ROUTING_MATCH_STATUS */ public const ASPNETCORE_ROUTING_MATCH_STATUS_FAILURE = 'failure'; /** - * @see TraceAttributes::AWS_ECS_LAUNCHTYPE ec2 + * ec2 + * + * @see TraceAttributes::AWS_ECS_LAUNCHTYPE */ public const AWS_ECS_LAUNCHTYPE_EC2 = 'ec2'; /** - * @see TraceAttributes::AWS_ECS_LAUNCHTYPE fargate + * fargate + * + * @see TraceAttributes::AWS_ECS_LAUNCHTYPE */ public const AWS_ECS_LAUNCHTYPE_FARGATE = 'fargate'; /** - * @see TraceAttributes::CLOUD_PLATFORM Alibaba Cloud Elastic Compute Service + * build + * + * @see TraceAttributes::CICD_PIPELINE_TASK_TYPE + */ + public const CICD_PIPELINE_TASK_TYPE_BUILD = 'build'; + + /** + * test + * + * @see TraceAttributes::CICD_PIPELINE_TASK_TYPE + */ + public const CICD_PIPELINE_TASK_TYPE_TEST = 'test'; + + /** + * deploy + * + * @see TraceAttributes::CICD_PIPELINE_TASK_TYPE + */ + public const CICD_PIPELINE_TASK_TYPE_DEPLOY = 'deploy'; + + /** + * Alibaba Cloud Elastic Compute Service + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_ALIBABA_CLOUD_ECS = 'alibaba_cloud_ecs'; /** - * @see TraceAttributes::CLOUD_PLATFORM Alibaba Cloud Function Compute + * Alibaba Cloud Function Compute + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_ALIBABA_CLOUD_FC = 'alibaba_cloud_fc'; /** - * @see TraceAttributes::CLOUD_PLATFORM Red Hat OpenShift on Alibaba Cloud + * Red Hat OpenShift on Alibaba Cloud + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_ALIBABA_CLOUD_OPENSHIFT = 'alibaba_cloud_openshift'; /** - * @see TraceAttributes::CLOUD_PLATFORM AWS Elastic Compute Cloud + * AWS Elastic Compute Cloud + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AWS_EC2 = 'aws_ec2'; /** - * @see TraceAttributes::CLOUD_PLATFORM AWS Elastic Container Service + * AWS Elastic Container Service + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AWS_ECS = 'aws_ecs'; /** - * @see TraceAttributes::CLOUD_PLATFORM AWS Elastic Kubernetes Service + * AWS Elastic Kubernetes Service + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AWS_EKS = 'aws_eks'; /** - * @see TraceAttributes::CLOUD_PLATFORM AWS Lambda + * AWS Lambda + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AWS_LAMBDA = 'aws_lambda'; /** - * @see TraceAttributes::CLOUD_PLATFORM AWS Elastic Beanstalk + * AWS Elastic Beanstalk + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AWS_ELASTIC_BEANSTALK = 'aws_elastic_beanstalk'; /** - * @see TraceAttributes::CLOUD_PLATFORM AWS App Runner + * AWS App Runner + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AWS_APP_RUNNER = 'aws_app_runner'; /** - * @see TraceAttributes::CLOUD_PLATFORM Red Hat OpenShift on AWS (ROSA) + * Red Hat OpenShift on AWS (ROSA) + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AWS_OPENSHIFT = 'aws_openshift'; /** - * @see TraceAttributes::CLOUD_PLATFORM Azure Virtual Machines + * Azure Virtual Machines + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AZURE_VM = 'azure_vm'; /** - * @see TraceAttributes::CLOUD_PLATFORM Azure Container Apps + * Azure Container Apps + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AZURE_CONTAINER_APPS = 'azure_container_apps'; /** - * @see TraceAttributes::CLOUD_PLATFORM Azure Container Instances + * Azure Container Instances + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AZURE_CONTAINER_INSTANCES = 'azure_container_instances'; /** - * @see TraceAttributes::CLOUD_PLATFORM Azure Kubernetes Service + * Azure Kubernetes Service + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AZURE_AKS = 'azure_aks'; /** - * @see TraceAttributes::CLOUD_PLATFORM Azure Functions + * Azure Functions + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AZURE_FUNCTIONS = 'azure_functions'; /** - * @see TraceAttributes::CLOUD_PLATFORM Azure App Service + * Azure App Service + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AZURE_APP_SERVICE = 'azure_app_service'; /** - * @see TraceAttributes::CLOUD_PLATFORM Azure Red Hat OpenShift + * Azure Red Hat OpenShift + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_AZURE_OPENSHIFT = 'azure_openshift'; /** - * @see TraceAttributes::CLOUD_PLATFORM Google Bare Metal Solution (BMS) + * Google Bare Metal Solution (BMS) + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_GCP_BARE_METAL_SOLUTION = 'gcp_bare_metal_solution'; /** - * @see TraceAttributes::CLOUD_PLATFORM Google Cloud Compute Engine (GCE) + * Google Cloud Compute Engine (GCE) + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_GCP_COMPUTE_ENGINE = 'gcp_compute_engine'; /** - * @see TraceAttributes::CLOUD_PLATFORM Google Cloud Run + * Google Cloud Run + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_GCP_CLOUD_RUN = 'gcp_cloud_run'; /** - * @see TraceAttributes::CLOUD_PLATFORM Google Cloud Kubernetes Engine (GKE) + * Google Cloud Kubernetes Engine (GKE) + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_GCP_KUBERNETES_ENGINE = 'gcp_kubernetes_engine'; /** - * @see TraceAttributes::CLOUD_PLATFORM Google Cloud Functions (GCF) + * Google Cloud Functions (GCF) + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_GCP_CLOUD_FUNCTIONS = 'gcp_cloud_functions'; /** - * @see TraceAttributes::CLOUD_PLATFORM Google Cloud App Engine (GAE) + * Google Cloud App Engine (GAE) + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_GCP_APP_ENGINE = 'gcp_app_engine'; /** - * @see TraceAttributes::CLOUD_PLATFORM Red Hat OpenShift on Google Cloud + * Red Hat OpenShift on Google Cloud + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_GCP_OPENSHIFT = 'gcp_openshift'; /** - * @see TraceAttributes::CLOUD_PLATFORM Red Hat OpenShift on IBM Cloud + * Red Hat OpenShift on IBM Cloud + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_IBM_CLOUD_OPENSHIFT = 'ibm_cloud_openshift'; /** - * @see TraceAttributes::CLOUD_PLATFORM Tencent Cloud Cloud Virtual Machine (CVM) + * Tencent Cloud Cloud Virtual Machine (CVM) + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_TENCENT_CLOUD_CVM = 'tencent_cloud_cvm'; /** - * @see TraceAttributes::CLOUD_PLATFORM Tencent Cloud Elastic Kubernetes Service (EKS) + * Tencent Cloud Elastic Kubernetes Service (EKS) + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_TENCENT_CLOUD_EKS = 'tencent_cloud_eks'; /** - * @see TraceAttributes::CLOUD_PLATFORM Tencent Cloud Serverless Cloud Function (SCF) + * Tencent Cloud Serverless Cloud Function (SCF) + * + * @see TraceAttributes::CLOUD_PLATFORM */ public const CLOUD_PLATFORM_TENCENT_CLOUD_SCF = 'tencent_cloud_scf'; /** - * @see TraceAttributes::CLOUD_PROVIDER Alibaba Cloud + * Alibaba Cloud + * + * @see TraceAttributes::CLOUD_PROVIDER */ public const CLOUD_PROVIDER_ALIBABA_CLOUD = 'alibaba_cloud'; /** - * @see TraceAttributes::CLOUD_PROVIDER Amazon Web Services + * Amazon Web Services + * + * @see TraceAttributes::CLOUD_PROVIDER */ public const CLOUD_PROVIDER_AWS = 'aws'; /** - * @see TraceAttributes::CLOUD_PROVIDER Microsoft Azure + * Microsoft Azure + * + * @see TraceAttributes::CLOUD_PROVIDER */ public const CLOUD_PROVIDER_AZURE = 'azure'; /** - * @see TraceAttributes::CLOUD_PROVIDER Google Cloud Platform + * Google Cloud Platform + * + * @see TraceAttributes::CLOUD_PROVIDER */ public const CLOUD_PROVIDER_GCP = 'gcp'; /** - * @see TraceAttributes::CLOUD_PROVIDER Heroku Platform as a Service + * Heroku Platform as a Service + * + * @see TraceAttributes::CLOUD_PROVIDER */ public const CLOUD_PROVIDER_HEROKU = 'heroku'; /** - * @see TraceAttributes::CLOUD_PROVIDER IBM Cloud + * IBM Cloud + * + * @see TraceAttributes::CLOUD_PROVIDER */ public const CLOUD_PROVIDER_IBM_CLOUD = 'ibm_cloud'; /** - * @see TraceAttributes::CLOUD_PROVIDER Tencent Cloud + * Tencent Cloud + * + * @see TraceAttributes::CLOUD_PROVIDER */ public const CLOUD_PROVIDER_TENCENT_CLOUD = 'tencent_cloud'; /** - * @see TraceAttributes::CONTAINER_CPU_STATE When tasks of the cgroup are in user mode (Linux). When all container processes are in user mode (Windows) + * When tasks of the cgroup are in user mode (Linux). When all container processes are in user mode (Windows) + * + * @see TraceAttributes::CONTAINER_CPU_STATE */ public const CONTAINER_CPU_STATE_USER = 'user'; /** - * @see TraceAttributes::CONTAINER_CPU_STATE When CPU is used by the system (host OS) + * When CPU is used by the system (host OS) + * + * @see TraceAttributes::CONTAINER_CPU_STATE */ public const CONTAINER_CPU_STATE_SYSTEM = 'system'; /** - * @see TraceAttributes::CONTAINER_CPU_STATE When tasks of the cgroup are in kernel mode (Linux). When all container processes are in kernel mode (Windows) + * When tasks of the cgroup are in kernel mode (Linux). When all container processes are in kernel mode (Windows) + * + * @see TraceAttributes::CONTAINER_CPU_STATE */ public const CONTAINER_CPU_STATE_KERNEL = 'kernel'; /** - * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL all + * user + * + * @see TraceAttributes::CPU_MODE + */ + public const CPU_MODE_USER = 'user'; + + /** + * system + * + * @see TraceAttributes::CPU_MODE + */ + public const CPU_MODE_SYSTEM = 'system'; + + /** + * nice + * + * @see TraceAttributes::CPU_MODE + */ + public const CPU_MODE_NICE = 'nice'; + + /** + * idle + * + * @see TraceAttributes::CPU_MODE + */ + public const CPU_MODE_IDLE = 'idle'; + + /** + * iowait + * + * @see TraceAttributes::CPU_MODE + */ + public const CPU_MODE_IOWAIT = 'iowait'; + + /** + * interrupt + * + * @see TraceAttributes::CPU_MODE + */ + public const CPU_MODE_INTERRUPT = 'interrupt'; + + /** + * steal + * + * @see TraceAttributes::CPU_MODE + */ + public const CPU_MODE_STEAL = 'steal'; + + /** + * kernel + * + * @see TraceAttributes::CPU_MODE + */ + public const CPU_MODE_KERNEL = 'kernel'; + + /** + * all + * + * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL */ public const DB_CASSANDRA_CONSISTENCY_LEVEL_ALL = 'all'; /** - * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL each_quorum + * each_quorum + * + * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL */ public const DB_CASSANDRA_CONSISTENCY_LEVEL_EACH_QUORUM = 'each_quorum'; /** - * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL quorum + * quorum + * + * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL */ public const DB_CASSANDRA_CONSISTENCY_LEVEL_QUORUM = 'quorum'; /** - * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL local_quorum + * local_quorum + * + * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL */ public const DB_CASSANDRA_CONSISTENCY_LEVEL_LOCAL_QUORUM = 'local_quorum'; /** - * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL one + * one + * + * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL */ public const DB_CASSANDRA_CONSISTENCY_LEVEL_ONE = 'one'; /** - * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL two + * two + * + * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL */ public const DB_CASSANDRA_CONSISTENCY_LEVEL_TWO = 'two'; /** - * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL three + * three + * + * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL */ public const DB_CASSANDRA_CONSISTENCY_LEVEL_THREE = 'three'; /** - * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL local_one + * local_one + * + * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL */ public const DB_CASSANDRA_CONSISTENCY_LEVEL_LOCAL_ONE = 'local_one'; /** - * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL any + * any + * + * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL */ public const DB_CASSANDRA_CONSISTENCY_LEVEL_ANY = 'any'; /** - * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL serial + * serial + * + * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL */ public const DB_CASSANDRA_CONSISTENCY_LEVEL_SERIAL = 'serial'; /** - * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL local_serial + * local_serial + * + * @see TraceAttributes::DB_CASSANDRA_CONSISTENCY_LEVEL */ public const DB_CASSANDRA_CONSISTENCY_LEVEL_LOCAL_SERIAL = 'local_serial'; /** - * @see TraceAttributes::DB_CLIENT_CONNECTIONS_STATE idle + * idle + * + * @see TraceAttributes::DB_CLIENT_CONNECTION_STATE + */ + public const DB_CLIENT_CONNECTION_STATE_IDLE = 'idle'; + + /** + * used + * + * @see TraceAttributes::DB_CLIENT_CONNECTION_STATE + */ + public const DB_CLIENT_CONNECTION_STATE_USED = 'used'; + + /** + * idle + * + * @see TraceAttributes::DB_CLIENT_CONNECTIONS_STATE */ public const DB_CLIENT_CONNECTIONS_STATE_IDLE = 'idle'; /** - * @see TraceAttributes::DB_CLIENT_CONNECTIONS_STATE used + * used + * + * @see TraceAttributes::DB_CLIENT_CONNECTIONS_STATE */ public const DB_CLIENT_CONNECTIONS_STATE_USED = 'used'; /** - * @see TraceAttributes::DB_COSMOSDB_CONNECTION_MODE Gateway (HTTP) connections mode + * Gateway (HTTP) connections mode + * + * @see TraceAttributes::DB_COSMOSDB_CONNECTION_MODE */ public const DB_COSMOSDB_CONNECTION_MODE_GATEWAY = 'gateway'; /** - * @see TraceAttributes::DB_COSMOSDB_CONNECTION_MODE Direct connection + * Direct connection + * + * @see TraceAttributes::DB_COSMOSDB_CONNECTION_MODE */ public const DB_COSMOSDB_CONNECTION_MODE_DIRECT = 'direct'; /** - * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE invalid + * invalid + * + * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE */ public const DB_COSMOSDB_OPERATION_TYPE_INVALID = 'Invalid'; /** - * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE create + * create + * + * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE */ public const DB_COSMOSDB_OPERATION_TYPE_CREATE = 'Create'; /** - * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE patch + * patch + * + * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE */ public const DB_COSMOSDB_OPERATION_TYPE_PATCH = 'Patch'; /** - * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE read + * read + * + * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE */ public const DB_COSMOSDB_OPERATION_TYPE_READ = 'Read'; /** - * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE read_feed + * read_feed + * + * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE */ public const DB_COSMOSDB_OPERATION_TYPE_READ_FEED = 'ReadFeed'; /** - * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE delete + * delete + * + * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE */ public const DB_COSMOSDB_OPERATION_TYPE_DELETE = 'Delete'; /** - * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE replace + * replace + * + * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE */ public const DB_COSMOSDB_OPERATION_TYPE_REPLACE = 'Replace'; /** - * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE execute + * execute + * + * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE */ public const DB_COSMOSDB_OPERATION_TYPE_EXECUTE = 'Execute'; /** - * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE query + * query + * + * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE */ public const DB_COSMOSDB_OPERATION_TYPE_QUERY = 'Query'; /** - * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE head + * head + * + * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE */ public const DB_COSMOSDB_OPERATION_TYPE_HEAD = 'Head'; /** - * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE head_feed + * head_feed + * + * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE */ public const DB_COSMOSDB_OPERATION_TYPE_HEAD_FEED = 'HeadFeed'; /** - * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE upsert + * upsert + * + * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE */ public const DB_COSMOSDB_OPERATION_TYPE_UPSERT = 'Upsert'; /** - * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE batch + * batch + * + * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE */ public const DB_COSMOSDB_OPERATION_TYPE_BATCH = 'Batch'; /** - * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE query_plan + * query_plan + * + * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE */ public const DB_COSMOSDB_OPERATION_TYPE_QUERY_PLAN = 'QueryPlan'; /** - * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE execute_javascript + * execute_javascript + * + * @see TraceAttributes::DB_COSMOSDB_OPERATION_TYPE */ public const DB_COSMOSDB_OPERATION_TYPE_EXECUTE_JAVASCRIPT = 'ExecuteJavaScript'; /** - * @see TraceAttributes::DB_SYSTEM Some other SQL database. Fallback only. See notes + * Some other SQL database. Fallback only. See notes + * + * @see TraceAttributes::DB_SYSTEM */ public const DB_SYSTEM_OTHER_SQL = 'other_sql'; /** - * @see TraceAttributes::DB_SYSTEM Microsoft SQL Server + * Adabas (Adaptable Database System) + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_MSSQL = 'mssql'; + public const DB_SYSTEM_ADABAS = 'adabas'; /** - * @see TraceAttributes::DB_SYSTEM Microsoft SQL Server Compact + * Deprecated, use `intersystems_cache` instead + * + * @see TraceAttributes::DB_SYSTEM + * @deprecated Replaced by `intersystems_cache`. */ - public const DB_SYSTEM_MSSQLCOMPACT = 'mssqlcompact'; + public const DB_SYSTEM_CACHE = 'cache'; /** - * @see TraceAttributes::DB_SYSTEM MySQL + * InterSystems Caché + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_MYSQL = 'mysql'; + public const DB_SYSTEM_INTERSYSTEMS_CACHE = 'intersystems_cache'; /** - * @see TraceAttributes::DB_SYSTEM Oracle Database + * Apache Cassandra + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_ORACLE = 'oracle'; + public const DB_SYSTEM_CASSANDRA = 'cassandra'; /** - * @see TraceAttributes::DB_SYSTEM IBM Db2 + * ClickHouse + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_DB2 = 'db2'; + public const DB_SYSTEM_CLICKHOUSE = 'clickhouse'; /** - * @see TraceAttributes::DB_SYSTEM PostgreSQL + * Deprecated, use `other_sql` instead + * + * @see TraceAttributes::DB_SYSTEM + * @deprecated Replaced by `other_sql`. */ - public const DB_SYSTEM_POSTGRESQL = 'postgresql'; + public const DB_SYSTEM_CLOUDSCAPE = 'cloudscape'; /** - * @see TraceAttributes::DB_SYSTEM Amazon Redshift + * CockroachDB + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_REDSHIFT = 'redshift'; + public const DB_SYSTEM_COCKROACHDB = 'cockroachdb'; /** - * @see TraceAttributes::DB_SYSTEM Apache Hive + * Deprecated, no replacement at this time + * + * @see TraceAttributes::DB_SYSTEM + * @deprecated Removed. */ - public const DB_SYSTEM_HIVE = 'hive'; + public const DB_SYSTEM_COLDFUSION = 'coldfusion'; /** - * @see TraceAttributes::DB_SYSTEM Cloudscape + * Microsoft Azure Cosmos DB + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_CLOUDSCAPE = 'cloudscape'; + public const DB_SYSTEM_COSMOSDB = 'cosmosdb'; /** - * @see TraceAttributes::DB_SYSTEM HyperSQL DataBase + * Couchbase + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_HSQLDB = 'hsqldb'; + public const DB_SYSTEM_COUCHBASE = 'couchbase'; /** - * @see TraceAttributes::DB_SYSTEM Progress Database + * CouchDB + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_PROGRESS = 'progress'; + public const DB_SYSTEM_COUCHDB = 'couchdb'; /** - * @see TraceAttributes::DB_SYSTEM SAP MaxDB + * IBM Db2 + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_MAXDB = 'maxdb'; + public const DB_SYSTEM_DB2 = 'db2'; /** - * @see TraceAttributes::DB_SYSTEM SAP HANA + * Apache Derby + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_HANADB = 'hanadb'; + public const DB_SYSTEM_DERBY = 'derby'; /** - * @see TraceAttributes::DB_SYSTEM Ingres + * Amazon DynamoDB + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_INGRES = 'ingres'; + public const DB_SYSTEM_DYNAMODB = 'dynamodb'; /** - * @see TraceAttributes::DB_SYSTEM FirstSQL + * EnterpriseDB + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_FIRSTSQL = 'firstsql'; + public const DB_SYSTEM_EDB = 'edb'; /** - * @see TraceAttributes::DB_SYSTEM EnterpriseDB + * Elasticsearch + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_EDB = 'edb'; + public const DB_SYSTEM_ELASTICSEARCH = 'elasticsearch'; /** - * @see TraceAttributes::DB_SYSTEM InterSystems Caché + * FileMaker + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_CACHE = 'cache'; + public const DB_SYSTEM_FILEMAKER = 'filemaker'; /** - * @see TraceAttributes::DB_SYSTEM Adabas (Adaptable Database System) + * Firebird + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_ADABAS = 'adabas'; + public const DB_SYSTEM_FIREBIRD = 'firebird'; /** - * @see TraceAttributes::DB_SYSTEM Firebird + * Deprecated, use `other_sql` instead + * + * @see TraceAttributes::DB_SYSTEM + * @deprecated Replaced by `other_sql`. */ - public const DB_SYSTEM_FIREBIRD = 'firebird'; + public const DB_SYSTEM_FIRSTSQL = 'firstsql'; /** - * @see TraceAttributes::DB_SYSTEM Apache Derby + * Apache Geode + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_DERBY = 'derby'; + public const DB_SYSTEM_GEODE = 'geode'; /** - * @see TraceAttributes::DB_SYSTEM FileMaker + * H2 + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_FILEMAKER = 'filemaker'; + public const DB_SYSTEM_H2 = 'h2'; /** - * @see TraceAttributes::DB_SYSTEM Informix + * SAP HANA + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_INFORMIX = 'informix'; + public const DB_SYSTEM_HANADB = 'hanadb'; /** - * @see TraceAttributes::DB_SYSTEM InstantDB + * Apache HBase + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_INSTANTDB = 'instantdb'; + public const DB_SYSTEM_HBASE = 'hbase'; /** - * @see TraceAttributes::DB_SYSTEM InterBase + * Apache Hive + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_INTERBASE = 'interbase'; + public const DB_SYSTEM_HIVE = 'hive'; /** - * @see TraceAttributes::DB_SYSTEM MariaDB + * HyperSQL DataBase + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_MARIADB = 'mariadb'; + public const DB_SYSTEM_HSQLDB = 'hsqldb'; /** - * @see TraceAttributes::DB_SYSTEM Netezza + * InfluxDB + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_NETEZZA = 'netezza'; + public const DB_SYSTEM_INFLUXDB = 'influxdb'; /** - * @see TraceAttributes::DB_SYSTEM Pervasive PSQL + * Informix + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_PERVASIVE = 'pervasive'; + public const DB_SYSTEM_INFORMIX = 'informix'; /** - * @see TraceAttributes::DB_SYSTEM PointBase + * Ingres + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_POINTBASE = 'pointbase'; + public const DB_SYSTEM_INGRES = 'ingres'; /** - * @see TraceAttributes::DB_SYSTEM SQLite + * InstantDB + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_SQLITE = 'sqlite'; + public const DB_SYSTEM_INSTANTDB = 'instantdb'; /** - * @see TraceAttributes::DB_SYSTEM Sybase + * InterBase + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_SYBASE = 'sybase'; + public const DB_SYSTEM_INTERBASE = 'interbase'; /** - * @see TraceAttributes::DB_SYSTEM Teradata + * MariaDB + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_TERADATA = 'teradata'; + public const DB_SYSTEM_MARIADB = 'mariadb'; /** - * @see TraceAttributes::DB_SYSTEM Vertica + * SAP MaxDB + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_VERTICA = 'vertica'; + public const DB_SYSTEM_MAXDB = 'maxdb'; /** - * @see TraceAttributes::DB_SYSTEM H2 + * Memcached + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_H2 = 'h2'; + public const DB_SYSTEM_MEMCACHED = 'memcached'; /** - * @see TraceAttributes::DB_SYSTEM ColdFusion IMQ + * MongoDB + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_COLDFUSION = 'coldfusion'; + public const DB_SYSTEM_MONGODB = 'mongodb'; /** - * @see TraceAttributes::DB_SYSTEM Apache Cassandra + * Microsoft SQL Server + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_CASSANDRA = 'cassandra'; + public const DB_SYSTEM_MSSQL = 'mssql'; /** - * @see TraceAttributes::DB_SYSTEM Apache HBase + * Deprecated, Microsoft SQL Server Compact is discontinued + * + * @see TraceAttributes::DB_SYSTEM + * @deprecated Removed, use `other_sql` instead. */ - public const DB_SYSTEM_HBASE = 'hbase'; + public const DB_SYSTEM_MSSQLCOMPACT = 'mssqlcompact'; /** - * @see TraceAttributes::DB_SYSTEM MongoDB + * MySQL + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_MONGODB = 'mongodb'; + public const DB_SYSTEM_MYSQL = 'mysql'; /** - * @see TraceAttributes::DB_SYSTEM Redis + * Neo4j + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_REDIS = 'redis'; + public const DB_SYSTEM_NEO4J = 'neo4j'; /** - * @see TraceAttributes::DB_SYSTEM Couchbase + * Netezza + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_COUCHBASE = 'couchbase'; + public const DB_SYSTEM_NETEZZA = 'netezza'; /** - * @see TraceAttributes::DB_SYSTEM CouchDB + * OpenSearch + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_COUCHDB = 'couchdb'; + public const DB_SYSTEM_OPENSEARCH = 'opensearch'; /** - * @see TraceAttributes::DB_SYSTEM Microsoft Azure Cosmos DB + * Oracle Database + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_COSMOSDB = 'cosmosdb'; + public const DB_SYSTEM_ORACLE = 'oracle'; /** - * @see TraceAttributes::DB_SYSTEM Amazon DynamoDB + * Pervasive PSQL + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_DYNAMODB = 'dynamodb'; + public const DB_SYSTEM_PERVASIVE = 'pervasive'; /** - * @see TraceAttributes::DB_SYSTEM Neo4j + * PointBase + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_NEO4J = 'neo4j'; + public const DB_SYSTEM_POINTBASE = 'pointbase'; /** - * @see TraceAttributes::DB_SYSTEM Apache Geode + * PostgreSQL + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_GEODE = 'geode'; + public const DB_SYSTEM_POSTGRESQL = 'postgresql'; /** - * @see TraceAttributes::DB_SYSTEM Elasticsearch + * Progress Database + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_ELASTICSEARCH = 'elasticsearch'; + public const DB_SYSTEM_PROGRESS = 'progress'; /** - * @see TraceAttributes::DB_SYSTEM Memcached + * Redis + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_MEMCACHED = 'memcached'; + public const DB_SYSTEM_REDIS = 'redis'; /** - * @see TraceAttributes::DB_SYSTEM CockroachDB + * Amazon Redshift + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_COCKROACHDB = 'cockroachdb'; + public const DB_SYSTEM_REDSHIFT = 'redshift'; /** - * @see TraceAttributes::DB_SYSTEM OpenSearch + * Cloud Spanner + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_OPENSEARCH = 'opensearch'; + public const DB_SYSTEM_SPANNER = 'spanner'; /** - * @see TraceAttributes::DB_SYSTEM ClickHouse + * SQLite + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_CLICKHOUSE = 'clickhouse'; + public const DB_SYSTEM_SQLITE = 'sqlite'; /** - * @see TraceAttributes::DB_SYSTEM Cloud Spanner + * Sybase + * + * @see TraceAttributes::DB_SYSTEM */ - public const DB_SYSTEM_SPANNER = 'spanner'; + public const DB_SYSTEM_SYBASE = 'sybase'; + + /** + * Teradata + * + * @see TraceAttributes::DB_SYSTEM + */ + public const DB_SYSTEM_TERADATA = 'teradata'; /** - * @see TraceAttributes::DB_SYSTEM Trino + * Trino + * + * @see TraceAttributes::DB_SYSTEM */ public const DB_SYSTEM_TRINO = 'trino'; /** - * @see TraceAttributes::DISK_IO_DIRECTION read + * Vertica + * + * @see TraceAttributes::DB_SYSTEM + */ + public const DB_SYSTEM_VERTICA = 'vertica'; + + /** + * failed + * + * @see TraceAttributes::DEPLOYMENT_STATUS + */ + public const DEPLOYMENT_STATUS_FAILED = 'failed'; + + /** + * succeeded + * + * @see TraceAttributes::DEPLOYMENT_STATUS + */ + public const DEPLOYMENT_STATUS_SUCCEEDED = 'succeeded'; + + /** + * read + * + * @see TraceAttributes::DISK_IO_DIRECTION */ public const DISK_IO_DIRECTION_READ = 'read'; /** - * @see TraceAttributes::DISK_IO_DIRECTION write + * write + * + * @see TraceAttributes::DISK_IO_DIRECTION */ public const DISK_IO_DIRECTION_WRITE = 'write'; /** - * @see TraceAttributes::ERROR_TYPE A fallback error value to be used when the instrumentation doesn't define a custom value + * A fallback error value to be used when the instrumentation doesn't define a custom value + * + * @see TraceAttributes::ERROR_TYPE */ public const ERROR_TYPE_OTHER = '_OTHER'; /** - * @see TraceAttributes::FAAS_DOCUMENT_OPERATION When a new object is created + * When a new object is created + * + * @see TraceAttributes::FAAS_DOCUMENT_OPERATION */ public const FAAS_DOCUMENT_OPERATION_INSERT = 'insert'; /** - * @see TraceAttributes::FAAS_DOCUMENT_OPERATION When an object is modified + * When an object is modified + * + * @see TraceAttributes::FAAS_DOCUMENT_OPERATION */ public const FAAS_DOCUMENT_OPERATION_EDIT = 'edit'; /** - * @see TraceAttributes::FAAS_DOCUMENT_OPERATION When an object is deleted + * When an object is deleted + * + * @see TraceAttributes::FAAS_DOCUMENT_OPERATION */ public const FAAS_DOCUMENT_OPERATION_DELETE = 'delete'; /** - * @see TraceAttributes::FAAS_INVOKED_PROVIDER Alibaba Cloud + * Alibaba Cloud + * + * @see TraceAttributes::FAAS_INVOKED_PROVIDER */ public const FAAS_INVOKED_PROVIDER_ALIBABA_CLOUD = 'alibaba_cloud'; /** - * @see TraceAttributes::FAAS_INVOKED_PROVIDER Amazon Web Services + * Amazon Web Services + * + * @see TraceAttributes::FAAS_INVOKED_PROVIDER */ public const FAAS_INVOKED_PROVIDER_AWS = 'aws'; /** - * @see TraceAttributes::FAAS_INVOKED_PROVIDER Microsoft Azure + * Microsoft Azure + * + * @see TraceAttributes::FAAS_INVOKED_PROVIDER */ public const FAAS_INVOKED_PROVIDER_AZURE = 'azure'; /** - * @see TraceAttributes::FAAS_INVOKED_PROVIDER Google Cloud Platform + * Google Cloud Platform + * + * @see TraceAttributes::FAAS_INVOKED_PROVIDER */ public const FAAS_INVOKED_PROVIDER_GCP = 'gcp'; /** - * @see TraceAttributes::FAAS_INVOKED_PROVIDER Tencent Cloud + * Tencent Cloud + * + * @see TraceAttributes::FAAS_INVOKED_PROVIDER */ public const FAAS_INVOKED_PROVIDER_TENCENT_CLOUD = 'tencent_cloud'; /** - * @see TraceAttributes::FAAS_TRIGGER A response to some data source operation such as a database or filesystem read/write + * A response to some data source operation such as a database or filesystem read/write + * + * @see TraceAttributes::FAAS_TRIGGER */ public const FAAS_TRIGGER_DATASOURCE = 'datasource'; /** - * @see TraceAttributes::FAAS_TRIGGER To provide an answer to an inbound HTTP request + * To provide an answer to an inbound HTTP request + * + * @see TraceAttributes::FAAS_TRIGGER */ public const FAAS_TRIGGER_HTTP = 'http'; /** - * @see TraceAttributes::FAAS_TRIGGER A function is set to be executed when messages are sent to a messaging system + * A function is set to be executed when messages are sent to a messaging system + * + * @see TraceAttributes::FAAS_TRIGGER */ public const FAAS_TRIGGER_PUBSUB = 'pubsub'; /** - * @see TraceAttributes::FAAS_TRIGGER A function is scheduled to be executed regularly + * A function is scheduled to be executed regularly + * + * @see TraceAttributes::FAAS_TRIGGER */ public const FAAS_TRIGGER_TIMER = 'timer'; /** - * @see TraceAttributes::FAAS_TRIGGER If none of the others apply + * If none of the others apply + * + * @see TraceAttributes::FAAS_TRIGGER */ public const FAAS_TRIGGER_OTHER = 'other'; /** - * @see TraceAttributes::GEN_AI_SYSTEM OpenAI + * Chat completion operation such as [OpenAI Chat API](https://platform.openai.com/docs/api-reference/chat) + * + * @see TraceAttributes::GEN_AI_OPERATION_NAME + */ + public const GEN_AI_OPERATION_NAME_CHAT = 'chat'; + + /** + * Text completions operation such as [OpenAI Completions API (Legacy)](https://platform.openai.com/docs/api-reference/completions) + * + * @see TraceAttributes::GEN_AI_OPERATION_NAME + */ + public const GEN_AI_OPERATION_NAME_TEXT_COMPLETION = 'text_completion'; + + /** + * OpenAI + * + * @see TraceAttributes::GEN_AI_SYSTEM */ public const GEN_AI_SYSTEM_OPENAI = 'openai'; /** - * @see TraceAttributes::GRAPHQL_OPERATION_TYPE GraphQL query + * Vertex AI + * + * @see TraceAttributes::GEN_AI_SYSTEM + */ + public const GEN_AI_SYSTEM_VERTEX_AI = 'vertex_ai'; + + /** + * Anthropic + * + * @see TraceAttributes::GEN_AI_SYSTEM + */ + public const GEN_AI_SYSTEM_ANTHROPIC = 'anthropic'; + + /** + * Cohere + * + * @see TraceAttributes::GEN_AI_SYSTEM + */ + public const GEN_AI_SYSTEM_COHERE = 'cohere'; + + /** + * Input tokens (prompt, input, etc.) + * + * @see TraceAttributes::GEN_AI_TOKEN_TYPE + */ + public const GEN_AI_TOKEN_TYPE_INPUT = 'input'; + + /** + * Output tokens (completion, response, etc.) + * + * @see TraceAttributes::GEN_AI_TOKEN_TYPE + */ + public const GEN_AI_TOKEN_TYPE_COMPLETION = 'output'; + + /** + * Memory allocated from the heap that is reserved for stack space, whether or not it is currently in-use + * + * @see TraceAttributes::GO_MEMORY_TYPE + * + * Computed from /memory/classes/heap/stacks:bytes. + */ + public const GO_MEMORY_TYPE_STACK = 'stack'; + + /** + * Memory used by the Go runtime, excluding other categories of memory usage described in this enumeration + * + * @see TraceAttributes::GO_MEMORY_TYPE + */ + public const GO_MEMORY_TYPE_OTHER = 'other'; + + /** + * GraphQL query + * + * @see TraceAttributes::GRAPHQL_OPERATION_TYPE */ public const GRAPHQL_OPERATION_TYPE_QUERY = 'query'; /** - * @see TraceAttributes::GRAPHQL_OPERATION_TYPE GraphQL mutation + * GraphQL mutation + * + * @see TraceAttributes::GRAPHQL_OPERATION_TYPE */ public const GRAPHQL_OPERATION_TYPE_MUTATION = 'mutation'; /** - * @see TraceAttributes::GRAPHQL_OPERATION_TYPE GraphQL subscription + * GraphQL subscription + * + * @see TraceAttributes::GRAPHQL_OPERATION_TYPE */ public const GRAPHQL_OPERATION_TYPE_SUBSCRIPTION = 'subscription'; /** - * @see TraceAttributes::HOST_ARCH AMD64 + * AMD64 + * + * @see TraceAttributes::HOST_ARCH */ public const HOST_ARCH_AMD64 = 'amd64'; /** - * @see TraceAttributes::HOST_ARCH ARM32 + * ARM32 + * + * @see TraceAttributes::HOST_ARCH */ public const HOST_ARCH_ARM32 = 'arm32'; /** - * @see TraceAttributes::HOST_ARCH ARM64 + * ARM64 + * + * @see TraceAttributes::HOST_ARCH */ public const HOST_ARCH_ARM64 = 'arm64'; /** - * @see TraceAttributes::HOST_ARCH Itanium + * Itanium + * + * @see TraceAttributes::HOST_ARCH */ public const HOST_ARCH_IA64 = 'ia64'; /** - * @see TraceAttributes::HOST_ARCH 32-bit PowerPC + * 32-bit PowerPC + * + * @see TraceAttributes::HOST_ARCH */ public const HOST_ARCH_PPC32 = 'ppc32'; /** - * @see TraceAttributes::HOST_ARCH 64-bit PowerPC + * 64-bit PowerPC + * + * @see TraceAttributes::HOST_ARCH */ public const HOST_ARCH_PPC64 = 'ppc64'; /** - * @see TraceAttributes::HOST_ARCH IBM z/Architecture + * IBM z/Architecture + * + * @see TraceAttributes::HOST_ARCH */ public const HOST_ARCH_S390X = 's390x'; /** - * @see TraceAttributes::HOST_ARCH 32-bit x86 + * 32-bit x86 + * + * @see TraceAttributes::HOST_ARCH */ public const HOST_ARCH_X86 = 'x86'; /** - * @see TraceAttributes::HTTP_CONNECTION_STATE active state + * active state + * + * @see TraceAttributes::HTTP_CONNECTION_STATE */ public const HTTP_CONNECTION_STATE_ACTIVE = 'active'; /** - * @see TraceAttributes::HTTP_CONNECTION_STATE idle state + * idle state + * + * @see TraceAttributes::HTTP_CONNECTION_STATE */ public const HTTP_CONNECTION_STATE_IDLE = 'idle'; /** - * @see TraceAttributes::HTTP_FLAVOR HTTP/1.0 + * HTTP/1.0 + * + * @see TraceAttributes::HTTP_FLAVOR */ public const HTTP_FLAVOR_HTTP_1_0 = '1.0'; /** - * @see TraceAttributes::HTTP_FLAVOR HTTP/1.1 + * HTTP/1.1 + * + * @see TraceAttributes::HTTP_FLAVOR */ public const HTTP_FLAVOR_HTTP_1_1 = '1.1'; /** - * @see TraceAttributes::HTTP_FLAVOR HTTP/2 + * HTTP/2 + * + * @see TraceAttributes::HTTP_FLAVOR */ public const HTTP_FLAVOR_HTTP_2_0 = '2.0'; /** - * @see TraceAttributes::HTTP_FLAVOR HTTP/3 + * HTTP/3 + * + * @see TraceAttributes::HTTP_FLAVOR */ public const HTTP_FLAVOR_HTTP_3_0 = '3.0'; /** - * @see TraceAttributes::HTTP_FLAVOR SPDY protocol + * SPDY protocol + * + * @see TraceAttributes::HTTP_FLAVOR */ public const HTTP_FLAVOR_SPDY = 'SPDY'; /** - * @see TraceAttributes::HTTP_FLAVOR QUIC protocol + * QUIC protocol + * + * @see TraceAttributes::HTTP_FLAVOR */ public const HTTP_FLAVOR_QUIC = 'QUIC'; /** - * @see TraceAttributes::HTTP_REQUEST_METHOD CONNECT method + * CONNECT method + * + * @see TraceAttributes::HTTP_REQUEST_METHOD */ public const HTTP_REQUEST_METHOD_CONNECT = 'CONNECT'; /** - * @see TraceAttributes::HTTP_REQUEST_METHOD DELETE method + * DELETE method + * + * @see TraceAttributes::HTTP_REQUEST_METHOD */ public const HTTP_REQUEST_METHOD_DELETE = 'DELETE'; /** - * @see TraceAttributes::HTTP_REQUEST_METHOD GET method + * GET method + * + * @see TraceAttributes::HTTP_REQUEST_METHOD */ public const HTTP_REQUEST_METHOD_GET = 'GET'; /** - * @see TraceAttributes::HTTP_REQUEST_METHOD HEAD method + * HEAD method + * + * @see TraceAttributes::HTTP_REQUEST_METHOD */ public const HTTP_REQUEST_METHOD_HEAD = 'HEAD'; /** - * @see TraceAttributes::HTTP_REQUEST_METHOD OPTIONS method + * OPTIONS method + * + * @see TraceAttributes::HTTP_REQUEST_METHOD */ public const HTTP_REQUEST_METHOD_OPTIONS = 'OPTIONS'; /** - * @see TraceAttributes::HTTP_REQUEST_METHOD PATCH method + * PATCH method + * + * @see TraceAttributes::HTTP_REQUEST_METHOD */ public const HTTP_REQUEST_METHOD_PATCH = 'PATCH'; /** - * @see TraceAttributes::HTTP_REQUEST_METHOD POST method + * POST method + * + * @see TraceAttributes::HTTP_REQUEST_METHOD */ public const HTTP_REQUEST_METHOD_POST = 'POST'; /** - * @see TraceAttributes::HTTP_REQUEST_METHOD PUT method + * PUT method + * + * @see TraceAttributes::HTTP_REQUEST_METHOD */ public const HTTP_REQUEST_METHOD_PUT = 'PUT'; /** - * @see TraceAttributes::HTTP_REQUEST_METHOD TRACE method + * TRACE method + * + * @see TraceAttributes::HTTP_REQUEST_METHOD */ public const HTTP_REQUEST_METHOD_TRACE = 'TRACE'; /** - * @see TraceAttributes::HTTP_REQUEST_METHOD Any HTTP method that the instrumentation has no prior knowledge of + * Any HTTP method that the instrumentation has no prior knowledge of + * + * @see TraceAttributes::HTTP_REQUEST_METHOD */ public const HTTP_REQUEST_METHOD_OTHER = '_OTHER'; /** - * @see TraceAttributes::IOS_STATE The app has become `active`. Associated with UIKit notification `applicationDidBecomeActive` + * The app has become `active`. Associated with UIKit notification `applicationDidBecomeActive` + * + * @see TraceAttributes::IOS_STATE */ public const IOS_STATE_ACTIVE = 'active'; /** - * @see TraceAttributes::IOS_STATE The app is now `inactive`. Associated with UIKit notification `applicationWillResignActive` + * The app is now `inactive`. Associated with UIKit notification `applicationWillResignActive` + * + * @see TraceAttributes::IOS_STATE */ public const IOS_STATE_INACTIVE = 'inactive'; /** - * @see TraceAttributes::IOS_STATE The app is now in the background. This value is associated with UIKit notification `applicationDidEnterBackground` + * The app is now in the background. This value is associated with UIKit notification `applicationDidEnterBackground` + * + * @see TraceAttributes::IOS_STATE */ public const IOS_STATE_BACKGROUND = 'background'; /** - * @see TraceAttributes::IOS_STATE The app is now in the foreground. This value is associated with UIKit notification `applicationWillEnterForeground` + * The app is now in the foreground. This value is associated with UIKit notification `applicationWillEnterForeground` + * + * @see TraceAttributes::IOS_STATE */ public const IOS_STATE_FOREGROUND = 'foreground'; /** - * @see TraceAttributes::IOS_STATE The app is about to terminate. Associated with UIKit notification `applicationWillTerminate` + * The app is about to terminate. Associated with UIKit notification `applicationWillTerminate` + * + * @see TraceAttributes::IOS_STATE */ public const IOS_STATE_TERMINATE = 'terminate'; /** - * @see TraceAttributes::JVM_MEMORY_TYPE Heap memory + * Heap memory + * + * @see TraceAttributes::JVM_MEMORY_TYPE */ public const JVM_MEMORY_TYPE_HEAP = 'heap'; /** - * @see TraceAttributes::JVM_MEMORY_TYPE Non-heap memory + * Non-heap memory + * + * @see TraceAttributes::JVM_MEMORY_TYPE */ public const JVM_MEMORY_TYPE_NON_HEAP = 'non_heap'; /** - * @see TraceAttributes::JVM_THREAD_STATE A thread that has not yet started is in this state + * A thread that has not yet started is in this state + * + * @see TraceAttributes::JVM_THREAD_STATE */ public const JVM_THREAD_STATE_NEW = 'new'; /** - * @see TraceAttributes::JVM_THREAD_STATE A thread executing in the Java virtual machine is in this state + * A thread executing in the Java virtual machine is in this state + * + * @see TraceAttributes::JVM_THREAD_STATE */ public const JVM_THREAD_STATE_RUNNABLE = 'runnable'; /** - * @see TraceAttributes::JVM_THREAD_STATE A thread that is blocked waiting for a monitor lock is in this state + * A thread that is blocked waiting for a monitor lock is in this state + * + * @see TraceAttributes::JVM_THREAD_STATE */ public const JVM_THREAD_STATE_BLOCKED = 'blocked'; /** - * @see TraceAttributes::JVM_THREAD_STATE A thread that is waiting indefinitely for another thread to perform a particular action is in this state + * A thread that is waiting indefinitely for another thread to perform a particular action is in this state + * + * @see TraceAttributes::JVM_THREAD_STATE */ public const JVM_THREAD_STATE_WAITING = 'waiting'; /** - * @see TraceAttributes::JVM_THREAD_STATE A thread that is waiting for another thread to perform an action for up to a specified waiting time is in this state + * A thread that is waiting for another thread to perform an action for up to a specified waiting time is in this state + * + * @see TraceAttributes::JVM_THREAD_STATE */ public const JVM_THREAD_STATE_TIMED_WAITING = 'timed_waiting'; /** - * @see TraceAttributes::JVM_THREAD_STATE A thread that has exited is in this state + * A thread that has exited is in this state + * + * @see TraceAttributes::JVM_THREAD_STATE */ public const JVM_THREAD_STATE_TERMINATED = 'terminated'; /** - * @see TraceAttributes::LOG_IOSTREAM Logs from stdout stream + * reclaimable + * + * @see TraceAttributes::LINUX_MEMORY_SLAB_STATE + */ + public const LINUX_MEMORY_SLAB_STATE_RECLAIMABLE = 'reclaimable'; + + /** + * unreclaimable + * + * @see TraceAttributes::LINUX_MEMORY_SLAB_STATE + */ + public const LINUX_MEMORY_SLAB_STATE_UNRECLAIMABLE = 'unreclaimable'; + + /** + * Logs from stdout stream + * + * @see TraceAttributes::LOG_IOSTREAM */ public const LOG_IOSTREAM_STDOUT = 'stdout'; /** - * @see TraceAttributes::LOG_IOSTREAM Events from stderr stream + * Events from stderr stream + * + * @see TraceAttributes::LOG_IOSTREAM */ public const LOG_IOSTREAM_STDERR = 'stderr'; /** - * @see TraceAttributes::MESSAGE_TYPE sent + * sent + * + * @see TraceAttributes::MESSAGE_TYPE */ public const MESSAGE_TYPE_SENT = 'SENT'; /** - * @see TraceAttributes::MESSAGE_TYPE received + * received + * + * @see TraceAttributes::MESSAGE_TYPE */ public const MESSAGE_TYPE_RECEIVED = 'RECEIVED'; /** - * @see TraceAttributes::MESSAGING_OPERATION_TYPE One or more messages are provided for publishing to an intermediary. If a single message is published, the context of the "Publish" span can be used as the creation context and no "Create" span needs to be created + * One or more messages are provided for publishing to an intermediary. If a single message is published, the context of the "Publish" span can be used as the creation context and no "Create" span needs to be created + * + * @see TraceAttributes::MESSAGING_OPERATION_TYPE */ public const MESSAGING_OPERATION_TYPE_PUBLISH = 'publish'; /** - * @see TraceAttributes::MESSAGING_OPERATION_TYPE A message is created. "Create" spans always refer to a single message and are used to provide a unique creation context for messages in batch publishing scenarios + * A message is created. "Create" spans always refer to a single message and are used to provide a unique creation context for messages in batch publishing scenarios + * + * @see TraceAttributes::MESSAGING_OPERATION_TYPE */ public const MESSAGING_OPERATION_TYPE_CREATE = 'create'; /** - * @see TraceAttributes::MESSAGING_OPERATION_TYPE One or more messages are requested by a consumer. This operation refers to pull-based scenarios, where consumers explicitly call methods of messaging SDKs to receive messages + * One or more messages are requested by a consumer. This operation refers to pull-based scenarios, where consumers explicitly call methods of messaging SDKs to receive messages + * + * @see TraceAttributes::MESSAGING_OPERATION_TYPE */ public const MESSAGING_OPERATION_TYPE_RECEIVE = 'receive'; /** - * @see TraceAttributes::MESSAGING_OPERATION_TYPE One or more messages are delivered to or processed by a consumer + * One or more messages are processed by a consumer + * + * @see TraceAttributes::MESSAGING_OPERATION_TYPE */ - public const MESSAGING_OPERATION_TYPE_DELIVER = 'process'; + public const MESSAGING_OPERATION_TYPE_PROCESS = 'process'; /** - * @see TraceAttributes::MESSAGING_OPERATION_TYPE One or more messages are settled + * One or more messages are settled + * + * @see TraceAttributes::MESSAGING_OPERATION_TYPE */ public const MESSAGING_OPERATION_TYPE_SETTLE = 'settle'; /** - * @see TraceAttributes::MESSAGING_ROCKETMQ_CONSUMPTION_MODEL Clustering consumption model + * Deprecated. Use `process` instead + * + * @see TraceAttributes::MESSAGING_OPERATION_TYPE + * @deprecated Replaced by `process`. + */ + public const MESSAGING_OPERATION_TYPE_DELIVER = 'deliver'; + + /** + * Clustering consumption model + * + * @see TraceAttributes::MESSAGING_ROCKETMQ_CONSUMPTION_MODEL */ public const MESSAGING_ROCKETMQ_CONSUMPTION_MODEL_CLUSTERING = 'clustering'; /** - * @see TraceAttributes::MESSAGING_ROCKETMQ_CONSUMPTION_MODEL Broadcasting consumption model + * Broadcasting consumption model + * + * @see TraceAttributes::MESSAGING_ROCKETMQ_CONSUMPTION_MODEL */ public const MESSAGING_ROCKETMQ_CONSUMPTION_MODEL_BROADCASTING = 'broadcasting'; /** - * @see TraceAttributes::MESSAGING_ROCKETMQ_MESSAGE_TYPE Normal message + * Normal message + * + * @see TraceAttributes::MESSAGING_ROCKETMQ_MESSAGE_TYPE */ public const MESSAGING_ROCKETMQ_MESSAGE_TYPE_NORMAL = 'normal'; /** - * @see TraceAttributes::MESSAGING_ROCKETMQ_MESSAGE_TYPE FIFO message + * FIFO message + * + * @see TraceAttributes::MESSAGING_ROCKETMQ_MESSAGE_TYPE */ public const MESSAGING_ROCKETMQ_MESSAGE_TYPE_FIFO = 'fifo'; /** - * @see TraceAttributes::MESSAGING_ROCKETMQ_MESSAGE_TYPE Delay message + * Delay message + * + * @see TraceAttributes::MESSAGING_ROCKETMQ_MESSAGE_TYPE */ public const MESSAGING_ROCKETMQ_MESSAGE_TYPE_DELAY = 'delay'; /** - * @see TraceAttributes::MESSAGING_ROCKETMQ_MESSAGE_TYPE Transaction message + * Transaction message + * + * @see TraceAttributes::MESSAGING_ROCKETMQ_MESSAGE_TYPE */ public const MESSAGING_ROCKETMQ_MESSAGE_TYPE_TRANSACTION = 'transaction'; /** - * @see TraceAttributes::MESSAGING_SERVICEBUS_DISPOSITION_STATUS Message is completed + * Message is completed + * + * @see TraceAttributes::MESSAGING_SERVICEBUS_DISPOSITION_STATUS */ public const MESSAGING_SERVICEBUS_DISPOSITION_STATUS_COMPLETE = 'complete'; /** - * @see TraceAttributes::MESSAGING_SERVICEBUS_DISPOSITION_STATUS Message is abandoned + * Message is abandoned + * + * @see TraceAttributes::MESSAGING_SERVICEBUS_DISPOSITION_STATUS */ public const MESSAGING_SERVICEBUS_DISPOSITION_STATUS_ABANDON = 'abandon'; /** - * @see TraceAttributes::MESSAGING_SERVICEBUS_DISPOSITION_STATUS Message is sent to dead letter queue + * Message is sent to dead letter queue + * + * @see TraceAttributes::MESSAGING_SERVICEBUS_DISPOSITION_STATUS */ public const MESSAGING_SERVICEBUS_DISPOSITION_STATUS_DEAD_LETTER = 'dead_letter'; /** - * @see TraceAttributes::MESSAGING_SERVICEBUS_DISPOSITION_STATUS Message is deferred + * Message is deferred + * + * @see TraceAttributes::MESSAGING_SERVICEBUS_DISPOSITION_STATUS */ public const MESSAGING_SERVICEBUS_DISPOSITION_STATUS_DEFER = 'defer'; /** - * @see TraceAttributes::MESSAGING_SYSTEM Apache ActiveMQ + * Apache ActiveMQ + * + * @see TraceAttributes::MESSAGING_SYSTEM */ public const MESSAGING_SYSTEM_ACTIVEMQ = 'activemq'; /** - * @see TraceAttributes::MESSAGING_SYSTEM Amazon Simple Queue Service (SQS) + * Amazon Simple Queue Service (SQS) + * + * @see TraceAttributes::MESSAGING_SYSTEM */ public const MESSAGING_SYSTEM_AWS_SQS = 'aws_sqs'; /** - * @see TraceAttributes::MESSAGING_SYSTEM Azure Event Grid + * Azure Event Grid + * + * @see TraceAttributes::MESSAGING_SYSTEM */ public const MESSAGING_SYSTEM_EVENTGRID = 'eventgrid'; /** - * @see TraceAttributes::MESSAGING_SYSTEM Azure Event Hubs + * Azure Event Hubs + * + * @see TraceAttributes::MESSAGING_SYSTEM */ public const MESSAGING_SYSTEM_EVENTHUBS = 'eventhubs'; /** - * @see TraceAttributes::MESSAGING_SYSTEM Azure Service Bus + * Azure Service Bus + * + * @see TraceAttributes::MESSAGING_SYSTEM */ public const MESSAGING_SYSTEM_SERVICEBUS = 'servicebus'; /** - * @see TraceAttributes::MESSAGING_SYSTEM Google Cloud Pub/Sub + * Google Cloud Pub/Sub + * + * @see TraceAttributes::MESSAGING_SYSTEM */ public const MESSAGING_SYSTEM_GCP_PUBSUB = 'gcp_pubsub'; /** - * @see TraceAttributes::MESSAGING_SYSTEM Java Message Service + * Java Message Service + * + * @see TraceAttributes::MESSAGING_SYSTEM */ public const MESSAGING_SYSTEM_JMS = 'jms'; /** - * @see TraceAttributes::MESSAGING_SYSTEM Apache Kafka + * Apache Kafka + * + * @see TraceAttributes::MESSAGING_SYSTEM */ public const MESSAGING_SYSTEM_KAFKA = 'kafka'; /** - * @see TraceAttributes::MESSAGING_SYSTEM RabbitMQ + * RabbitMQ + * + * @see TraceAttributes::MESSAGING_SYSTEM */ public const MESSAGING_SYSTEM_RABBITMQ = 'rabbitmq'; /** - * @see TraceAttributes::MESSAGING_SYSTEM Apache RocketMQ + * Apache RocketMQ + * + * @see TraceAttributes::MESSAGING_SYSTEM + */ + public const MESSAGING_SYSTEM_ROCKETMQ = 'rocketmq'; + + /** + * Apache Pulsar + * + * @see TraceAttributes::MESSAGING_SYSTEM */ - public const MESSAGING_SYSTEM_ROCKETMQ = 'rocketmq'; + public const MESSAGING_SYSTEM_PULSAR = 'pulsar'; /** - * @see TraceAttributes::NET_SOCK_FAMILY IPv4 address + * IPv4 address + * + * @see TraceAttributes::NET_SOCK_FAMILY */ public const NET_SOCK_FAMILY_INET = 'inet'; /** - * @see TraceAttributes::NET_SOCK_FAMILY IPv6 address + * IPv6 address + * + * @see TraceAttributes::NET_SOCK_FAMILY */ public const NET_SOCK_FAMILY_INET6 = 'inet6'; /** - * @see TraceAttributes::NET_SOCK_FAMILY Unix domain socket path + * Unix domain socket path + * + * @see TraceAttributes::NET_SOCK_FAMILY */ public const NET_SOCK_FAMILY_UNIX = 'unix'; /** - * @see TraceAttributes::NET_TRANSPORT ip_tcp + * ip_tcp + * + * @see TraceAttributes::NET_TRANSPORT */ public const NET_TRANSPORT_IP_TCP = 'ip_tcp'; /** - * @see TraceAttributes::NET_TRANSPORT ip_udp + * ip_udp + * + * @see TraceAttributes::NET_TRANSPORT */ public const NET_TRANSPORT_IP_UDP = 'ip_udp'; /** - * @see TraceAttributes::NET_TRANSPORT Named or anonymous pipe + * Named or anonymous pipe + * + * @see TraceAttributes::NET_TRANSPORT */ public const NET_TRANSPORT_PIPE = 'pipe'; /** - * @see TraceAttributes::NET_TRANSPORT In-process communication + * In-process communication + * + * @see TraceAttributes::NET_TRANSPORT * * Signals that there is only in-process communication not using a "real" network protocol in cases where network attributes would normally be expected. Usually all other network attributes can be left out in that case. */ public const NET_TRANSPORT_INPROC = 'inproc'; /** - * @see TraceAttributes::NET_TRANSPORT Something else (non IP-based) + * Something else (non IP-based) + * + * @see TraceAttributes::NET_TRANSPORT */ public const NET_TRANSPORT_OTHER = 'other'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE GPRS + * GPRS + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_GPRS = 'gprs'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE EDGE + * EDGE + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_EDGE = 'edge'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE UMTS + * UMTS + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_UMTS = 'umts'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE CDMA + * CDMA + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_CDMA = 'cdma'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE EVDO Rel. 0 + * EVDO Rel. 0 + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_EVDO_0 = 'evdo_0'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE EVDO Rev. A + * EVDO Rev. A + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_EVDO_A = 'evdo_a'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE CDMA2000 1XRTT + * CDMA2000 1XRTT + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_CDMA2000_1XRTT = 'cdma2000_1xrtt'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE HSDPA + * HSDPA + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_HSDPA = 'hsdpa'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE HSUPA + * HSUPA + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_HSUPA = 'hsupa'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE HSPA + * HSPA + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_HSPA = 'hspa'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE IDEN + * IDEN + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_IDEN = 'iden'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE EVDO Rev. B + * EVDO Rev. B + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_EVDO_B = 'evdo_b'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE LTE + * LTE + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_LTE = 'lte'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE EHRPD + * EHRPD + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_EHRPD = 'ehrpd'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE HSPAP + * HSPAP + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_HSPAP = 'hspap'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE GSM + * GSM + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_GSM = 'gsm'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE TD-SCDMA + * TD-SCDMA + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_TD_SCDMA = 'td_scdma'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE IWLAN + * IWLAN + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_IWLAN = 'iwlan'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE 5G NR (New Radio) + * 5G NR (New Radio) + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_NR = 'nr'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE 5G NRNSA (New Radio Non-Standalone) + * 5G NRNSA (New Radio Non-Standalone) + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_NRNSA = 'nrnsa'; /** - * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE LTE CA + * LTE CA + * + * @see TraceAttributes::NETWORK_CONNECTION_SUBTYPE */ public const NETWORK_CONNECTION_SUBTYPE_LTE_CA = 'lte_ca'; /** - * @see TraceAttributes::NETWORK_CONNECTION_TYPE wifi + * wifi + * + * @see TraceAttributes::NETWORK_CONNECTION_TYPE */ public const NETWORK_CONNECTION_TYPE_WIFI = 'wifi'; /** - * @see TraceAttributes::NETWORK_CONNECTION_TYPE wired + * wired + * + * @see TraceAttributes::NETWORK_CONNECTION_TYPE */ public const NETWORK_CONNECTION_TYPE_WIRED = 'wired'; /** - * @see TraceAttributes::NETWORK_CONNECTION_TYPE cell + * cell + * + * @see TraceAttributes::NETWORK_CONNECTION_TYPE */ public const NETWORK_CONNECTION_TYPE_CELL = 'cell'; /** - * @see TraceAttributes::NETWORK_CONNECTION_TYPE unavailable + * unavailable + * + * @see TraceAttributes::NETWORK_CONNECTION_TYPE */ public const NETWORK_CONNECTION_TYPE_UNAVAILABLE = 'unavailable'; /** - * @see TraceAttributes::NETWORK_CONNECTION_TYPE unknown + * unknown + * + * @see TraceAttributes::NETWORK_CONNECTION_TYPE */ public const NETWORK_CONNECTION_TYPE_UNKNOWN = 'unknown'; /** - * @see TraceAttributes::NETWORK_IO_DIRECTION transmit + * transmit + * + * @see TraceAttributes::NETWORK_IO_DIRECTION */ public const NETWORK_IO_DIRECTION_TRANSMIT = 'transmit'; /** - * @see TraceAttributes::NETWORK_IO_DIRECTION receive + * receive + * + * @see TraceAttributes::NETWORK_IO_DIRECTION */ public const NETWORK_IO_DIRECTION_RECEIVE = 'receive'; /** - * @see TraceAttributes::NETWORK_TRANSPORT TCP + * TCP + * + * @see TraceAttributes::NETWORK_TRANSPORT */ public const NETWORK_TRANSPORT_TCP = 'tcp'; /** - * @see TraceAttributes::NETWORK_TRANSPORT UDP + * UDP + * + * @see TraceAttributes::NETWORK_TRANSPORT */ public const NETWORK_TRANSPORT_UDP = 'udp'; /** - * @see TraceAttributes::NETWORK_TRANSPORT Named or anonymous pipe + * Named or anonymous pipe + * + * @see TraceAttributes::NETWORK_TRANSPORT */ public const NETWORK_TRANSPORT_PIPE = 'pipe'; /** - * @see TraceAttributes::NETWORK_TRANSPORT Unix domain socket + * Unix domain socket + * + * @see TraceAttributes::NETWORK_TRANSPORT */ public const NETWORK_TRANSPORT_UNIX = 'unix'; /** - * @see TraceAttributes::NETWORK_TYPE IPv4 + * QUIC + * + * @see TraceAttributes::NETWORK_TRANSPORT + */ + public const NETWORK_TRANSPORT_QUIC = 'quic'; + + /** + * IPv4 + * + * @see TraceAttributes::NETWORK_TYPE */ public const NETWORK_TYPE_IPV4 = 'ipv4'; /** - * @see TraceAttributes::NETWORK_TYPE IPv6 + * IPv6 + * + * @see TraceAttributes::NETWORK_TYPE */ public const NETWORK_TYPE_IPV6 = 'ipv6'; /** - * @see TraceAttributes::OPENTRACING_REF_TYPE The parent Span depends on the child Span in some capacity + * The parent Span depends on the child Span in some capacity + * + * @see TraceAttributes::OPENTRACING_REF_TYPE */ public const OPENTRACING_REF_TYPE_CHILD_OF = 'child_of'; /** - * @see TraceAttributes::OPENTRACING_REF_TYPE The parent Span doesn't depend in any way on the result of the child Span + * The parent Span doesn't depend in any way on the result of the child Span + * + * @see TraceAttributes::OPENTRACING_REF_TYPE */ public const OPENTRACING_REF_TYPE_FOLLOWS_FROM = 'follows_from'; /** - * @see TraceAttributes::OS_TYPE Microsoft Windows + * Microsoft Windows + * + * @see TraceAttributes::OS_TYPE */ public const OS_TYPE_WINDOWS = 'windows'; /** - * @see TraceAttributes::OS_TYPE Linux + * Linux + * + * @see TraceAttributes::OS_TYPE */ public const OS_TYPE_LINUX = 'linux'; /** - * @see TraceAttributes::OS_TYPE Apple Darwin + * Apple Darwin + * + * @see TraceAttributes::OS_TYPE */ public const OS_TYPE_DARWIN = 'darwin'; /** - * @see TraceAttributes::OS_TYPE FreeBSD + * FreeBSD + * + * @see TraceAttributes::OS_TYPE */ public const OS_TYPE_FREEBSD = 'freebsd'; /** - * @see TraceAttributes::OS_TYPE NetBSD + * NetBSD + * + * @see TraceAttributes::OS_TYPE */ public const OS_TYPE_NETBSD = 'netbsd'; /** - * @see TraceAttributes::OS_TYPE OpenBSD + * OpenBSD + * + * @see TraceAttributes::OS_TYPE */ public const OS_TYPE_OPENBSD = 'openbsd'; /** - * @see TraceAttributes::OS_TYPE DragonFly BSD + * DragonFly BSD + * + * @see TraceAttributes::OS_TYPE */ public const OS_TYPE_DRAGONFLYBSD = 'dragonflybsd'; /** - * @see TraceAttributes::OS_TYPE HP-UX (Hewlett Packard Unix) + * HP-UX (Hewlett Packard Unix) + * + * @see TraceAttributes::OS_TYPE */ public const OS_TYPE_HPUX = 'hpux'; /** - * @see TraceAttributes::OS_TYPE AIX (Advanced Interactive eXecutive) + * AIX (Advanced Interactive eXecutive) + * + * @see TraceAttributes::OS_TYPE */ public const OS_TYPE_AIX = 'aix'; /** - * @see TraceAttributes::OS_TYPE SunOS, Oracle Solaris + * SunOS, Oracle Solaris + * + * @see TraceAttributes::OS_TYPE */ public const OS_TYPE_SOLARIS = 'solaris'; /** - * @see TraceAttributes::OS_TYPE IBM z/OS + * IBM z/OS + * + * @see TraceAttributes::OS_TYPE */ public const OS_TYPE_Z_OS = 'z_os'; /** - * @see TraceAttributes::OTEL_STATUS_CODE The operation has been validated by an Application developer or Operator to have completed successfully + * The operation has been validated by an Application developer or Operator to have completed successfully + * + * @see TraceAttributes::OTEL_STATUS_CODE */ public const OTEL_STATUS_CODE_OK = 'OK'; /** - * @see TraceAttributes::OTEL_STATUS_CODE The operation contains an error + * The operation contains an error + * + * @see TraceAttributes::OTEL_STATUS_CODE */ public const OTEL_STATUS_CODE_ERROR = 'ERROR'; /** - * @see TraceAttributes::PROCESS_CONTEXT_SWITCH_TYPE voluntary + * voluntary + * + * @see TraceAttributes::PROCESS_CONTEXT_SWITCH_TYPE */ public const PROCESS_CONTEXT_SWITCH_TYPE_VOLUNTARY = 'voluntary'; /** - * @see TraceAttributes::PROCESS_CONTEXT_SWITCH_TYPE involuntary + * involuntary + * + * @see TraceAttributes::PROCESS_CONTEXT_SWITCH_TYPE */ public const PROCESS_CONTEXT_SWITCH_TYPE_INVOLUNTARY = 'involuntary'; /** - * @see TraceAttributes::PROCESS_CPU_STATE system + * system + * + * @see TraceAttributes::PROCESS_CPU_STATE */ public const PROCESS_CPU_STATE_SYSTEM = 'system'; /** - * @see TraceAttributes::PROCESS_CPU_STATE user + * user + * + * @see TraceAttributes::PROCESS_CPU_STATE */ public const PROCESS_CPU_STATE_USER = 'user'; /** - * @see TraceAttributes::PROCESS_CPU_STATE wait + * wait + * + * @see TraceAttributes::PROCESS_CPU_STATE */ public const PROCESS_CPU_STATE_WAIT = 'wait'; /** - * @see TraceAttributes::PROCESS_PAGING_FAULT_TYPE major + * major + * + * @see TraceAttributes::PROCESS_PAGING_FAULT_TYPE */ public const PROCESS_PAGING_FAULT_TYPE_MAJOR = 'major'; /** - * @see TraceAttributes::PROCESS_PAGING_FAULT_TYPE minor + * minor + * + * @see TraceAttributes::PROCESS_PAGING_FAULT_TYPE */ public const PROCESS_PAGING_FAULT_TYPE_MINOR = 'minor'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE cancelled + * cancelled + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_CANCELLED = 'cancelled'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE unknown + * unknown + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_UNKNOWN = 'unknown'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE invalid_argument + * invalid_argument + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_INVALID_ARGUMENT = 'invalid_argument'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE deadline_exceeded + * deadline_exceeded + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_DEADLINE_EXCEEDED = 'deadline_exceeded'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE not_found + * not_found + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_NOT_FOUND = 'not_found'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE already_exists + * already_exists + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_ALREADY_EXISTS = 'already_exists'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE permission_denied + * permission_denied + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_PERMISSION_DENIED = 'permission_denied'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE resource_exhausted + * resource_exhausted + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_RESOURCE_EXHAUSTED = 'resource_exhausted'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE failed_precondition + * failed_precondition + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_FAILED_PRECONDITION = 'failed_precondition'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE aborted + * aborted + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_ABORTED = 'aborted'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE out_of_range + * out_of_range + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_OUT_OF_RANGE = 'out_of_range'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE unimplemented + * unimplemented + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_UNIMPLEMENTED = 'unimplemented'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE internal + * internal + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_INTERNAL = 'internal'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE unavailable + * unavailable + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_UNAVAILABLE = 'unavailable'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE data_loss + * data_loss + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_DATA_LOSS = 'data_loss'; /** - * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE unauthenticated + * unauthenticated + * + * @see TraceAttributes::RPC_CONNECT_RPC_ERROR_CODE */ public const RPC_CONNECT_RPC_ERROR_CODE_UNAUTHENTICATED = 'unauthenticated'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE OK + * OK + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_OK = '0'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE CANCELLED + * CANCELLED + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_CANCELLED = '1'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE UNKNOWN + * UNKNOWN + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_UNKNOWN = '2'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE INVALID_ARGUMENT + * INVALID_ARGUMENT + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_INVALID_ARGUMENT = '3'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE DEADLINE_EXCEEDED + * DEADLINE_EXCEEDED + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_DEADLINE_EXCEEDED = '4'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE NOT_FOUND + * NOT_FOUND + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_NOT_FOUND = '5'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE ALREADY_EXISTS + * ALREADY_EXISTS + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_ALREADY_EXISTS = '6'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE PERMISSION_DENIED + * PERMISSION_DENIED + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_PERMISSION_DENIED = '7'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE RESOURCE_EXHAUSTED + * RESOURCE_EXHAUSTED + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_RESOURCE_EXHAUSTED = '8'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE FAILED_PRECONDITION + * FAILED_PRECONDITION + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_FAILED_PRECONDITION = '9'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE ABORTED + * ABORTED + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_ABORTED = '10'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE OUT_OF_RANGE + * OUT_OF_RANGE + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_OUT_OF_RANGE = '11'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE UNIMPLEMENTED + * UNIMPLEMENTED + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_UNIMPLEMENTED = '12'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE INTERNAL + * INTERNAL + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_INTERNAL = '13'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE UNAVAILABLE + * UNAVAILABLE + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_UNAVAILABLE = '14'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE DATA_LOSS + * DATA_LOSS + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_DATA_LOSS = '15'; /** - * @see TraceAttributes::RPC_GRPC_STATUS_CODE UNAUTHENTICATED + * UNAUTHENTICATED + * + * @see TraceAttributes::RPC_GRPC_STATUS_CODE */ public const RPC_GRPC_STATUS_CODE_UNAUTHENTICATED = '16'; /** - * @see TraceAttributes::RPC_MESSAGE_TYPE sent + * sent + * + * @see TraceAttributes::RPC_MESSAGE_TYPE */ public const RPC_MESSAGE_TYPE_SENT = 'SENT'; /** - * @see TraceAttributes::RPC_MESSAGE_TYPE received + * received + * + * @see TraceAttributes::RPC_MESSAGE_TYPE */ public const RPC_MESSAGE_TYPE_RECEIVED = 'RECEIVED'; /** - * @see TraceAttributes::RPC_SYSTEM gRPC + * gRPC + * + * @see TraceAttributes::RPC_SYSTEM */ public const RPC_SYSTEM_GRPC = 'grpc'; /** - * @see TraceAttributes::RPC_SYSTEM Java RMI + * Java RMI + * + * @see TraceAttributes::RPC_SYSTEM */ public const RPC_SYSTEM_JAVA_RMI = 'java_rmi'; /** - * @see TraceAttributes::RPC_SYSTEM .NET WCF + * .NET WCF + * + * @see TraceAttributes::RPC_SYSTEM */ public const RPC_SYSTEM_DOTNET_WCF = 'dotnet_wcf'; /** - * @see TraceAttributes::RPC_SYSTEM Apache Dubbo + * Apache Dubbo + * + * @see TraceAttributes::RPC_SYSTEM */ public const RPC_SYSTEM_APACHE_DUBBO = 'apache_dubbo'; /** - * @see TraceAttributes::RPC_SYSTEM Connect RPC + * Connect RPC + * + * @see TraceAttributes::RPC_SYSTEM */ public const RPC_SYSTEM_CONNECT_RPC = 'connect_rpc'; /** - * @see TraceAttributes::SIGNALR_CONNECTION_STATUS The connection was closed normally + * The connection was closed normally + * + * @see TraceAttributes::SIGNALR_CONNECTION_STATUS */ public const SIGNALR_CONNECTION_STATUS_NORMAL_CLOSURE = 'normal_closure'; /** - * @see TraceAttributes::SIGNALR_CONNECTION_STATUS The connection was closed due to a timeout + * The connection was closed due to a timeout + * + * @see TraceAttributes::SIGNALR_CONNECTION_STATUS */ public const SIGNALR_CONNECTION_STATUS_TIMEOUT = 'timeout'; /** - * @see TraceAttributes::SIGNALR_CONNECTION_STATUS The connection was closed because the app is shutting down + * The connection was closed because the app is shutting down + * + * @see TraceAttributes::SIGNALR_CONNECTION_STATUS */ public const SIGNALR_CONNECTION_STATUS_APP_SHUTDOWN = 'app_shutdown'; /** - * @see TraceAttributes::SIGNALR_TRANSPORT ServerSentEvents protocol + * ServerSentEvents protocol + * + * @see TraceAttributes::SIGNALR_TRANSPORT */ public const SIGNALR_TRANSPORT_SERVER_SENT_EVENTS = 'server_sent_events'; /** - * @see TraceAttributes::SIGNALR_TRANSPORT LongPolling protocol + * LongPolling protocol + * + * @see TraceAttributes::SIGNALR_TRANSPORT */ public const SIGNALR_TRANSPORT_LONG_POLLING = 'long_polling'; /** - * @see TraceAttributes::SIGNALR_TRANSPORT WebSockets protocol + * WebSockets protocol + * + * @see TraceAttributes::SIGNALR_TRANSPORT */ public const SIGNALR_TRANSPORT_WEB_SOCKETS = 'web_sockets'; /** - * @see TraceAttributes::STATE idle + * idle + * + * @see TraceAttributes::STATE */ public const STATE_IDLE = 'idle'; /** - * @see TraceAttributes::STATE used + * used + * + * @see TraceAttributes::STATE */ public const STATE_USED = 'used'; /** - * @see TraceAttributes::SYSTEM_CPU_STATE user + * user + * + * @see TraceAttributes::SYSTEM_CPU_STATE */ public const SYSTEM_CPU_STATE_USER = 'user'; /** - * @see TraceAttributes::SYSTEM_CPU_STATE system + * system + * + * @see TraceAttributes::SYSTEM_CPU_STATE */ public const SYSTEM_CPU_STATE_SYSTEM = 'system'; /** - * @see TraceAttributes::SYSTEM_CPU_STATE nice + * nice + * + * @see TraceAttributes::SYSTEM_CPU_STATE */ public const SYSTEM_CPU_STATE_NICE = 'nice'; /** - * @see TraceAttributes::SYSTEM_CPU_STATE idle + * idle + * + * @see TraceAttributes::SYSTEM_CPU_STATE */ public const SYSTEM_CPU_STATE_IDLE = 'idle'; /** - * @see TraceAttributes::SYSTEM_CPU_STATE iowait + * iowait + * + * @see TraceAttributes::SYSTEM_CPU_STATE */ public const SYSTEM_CPU_STATE_IOWAIT = 'iowait'; /** - * @see TraceAttributes::SYSTEM_CPU_STATE interrupt + * interrupt + * + * @see TraceAttributes::SYSTEM_CPU_STATE */ public const SYSTEM_CPU_STATE_INTERRUPT = 'interrupt'; /** - * @see TraceAttributes::SYSTEM_CPU_STATE steal + * steal + * + * @see TraceAttributes::SYSTEM_CPU_STATE */ public const SYSTEM_CPU_STATE_STEAL = 'steal'; /** - * @see TraceAttributes::SYSTEM_FILESYSTEM_STATE used + * used + * + * @see TraceAttributes::SYSTEM_FILESYSTEM_STATE */ public const SYSTEM_FILESYSTEM_STATE_USED = 'used'; /** - * @see TraceAttributes::SYSTEM_FILESYSTEM_STATE free + * free + * + * @see TraceAttributes::SYSTEM_FILESYSTEM_STATE */ public const SYSTEM_FILESYSTEM_STATE_FREE = 'free'; /** - * @see TraceAttributes::SYSTEM_FILESYSTEM_STATE reserved + * reserved + * + * @see TraceAttributes::SYSTEM_FILESYSTEM_STATE */ public const SYSTEM_FILESYSTEM_STATE_RESERVED = 'reserved'; /** - * @see TraceAttributes::SYSTEM_FILESYSTEM_TYPE fat32 + * fat32 + * + * @see TraceAttributes::SYSTEM_FILESYSTEM_TYPE */ public const SYSTEM_FILESYSTEM_TYPE_FAT32 = 'fat32'; /** - * @see TraceAttributes::SYSTEM_FILESYSTEM_TYPE exfat + * exfat + * + * @see TraceAttributes::SYSTEM_FILESYSTEM_TYPE */ public const SYSTEM_FILESYSTEM_TYPE_EXFAT = 'exfat'; /** - * @see TraceAttributes::SYSTEM_FILESYSTEM_TYPE ntfs + * ntfs + * + * @see TraceAttributes::SYSTEM_FILESYSTEM_TYPE */ public const SYSTEM_FILESYSTEM_TYPE_NTFS = 'ntfs'; /** - * @see TraceAttributes::SYSTEM_FILESYSTEM_TYPE refs + * refs + * + * @see TraceAttributes::SYSTEM_FILESYSTEM_TYPE */ public const SYSTEM_FILESYSTEM_TYPE_REFS = 'refs'; /** - * @see TraceAttributes::SYSTEM_FILESYSTEM_TYPE hfsplus + * hfsplus + * + * @see TraceAttributes::SYSTEM_FILESYSTEM_TYPE */ public const SYSTEM_FILESYSTEM_TYPE_HFSPLUS = 'hfsplus'; /** - * @see TraceAttributes::SYSTEM_FILESYSTEM_TYPE ext4 + * ext4 + * + * @see TraceAttributes::SYSTEM_FILESYSTEM_TYPE */ public const SYSTEM_FILESYSTEM_TYPE_EXT4 = 'ext4'; /** - * @see TraceAttributes::SYSTEM_MEMORY_STATE used + * used + * + * @see TraceAttributes::SYSTEM_MEMORY_STATE */ public const SYSTEM_MEMORY_STATE_USED = 'used'; /** - * @see TraceAttributes::SYSTEM_MEMORY_STATE free + * free + * + * @see TraceAttributes::SYSTEM_MEMORY_STATE */ public const SYSTEM_MEMORY_STATE_FREE = 'free'; /** - * @see TraceAttributes::SYSTEM_MEMORY_STATE shared + * shared + * + * @see TraceAttributes::SYSTEM_MEMORY_STATE + * @deprecated Removed, report shared memory usage with `metric.system.memory.shared` metric. */ public const SYSTEM_MEMORY_STATE_SHARED = 'shared'; /** - * @see TraceAttributes::SYSTEM_MEMORY_STATE buffers + * buffers + * + * @see TraceAttributes::SYSTEM_MEMORY_STATE */ public const SYSTEM_MEMORY_STATE_BUFFERS = 'buffers'; /** - * @see TraceAttributes::SYSTEM_MEMORY_STATE cached + * cached + * + * @see TraceAttributes::SYSTEM_MEMORY_STATE */ public const SYSTEM_MEMORY_STATE_CACHED = 'cached'; /** - * @see TraceAttributes::SYSTEM_NETWORK_STATE close + * close + * + * @see TraceAttributes::SYSTEM_NETWORK_STATE */ public const SYSTEM_NETWORK_STATE_CLOSE = 'close'; /** - * @see TraceAttributes::SYSTEM_NETWORK_STATE close_wait + * close_wait + * + * @see TraceAttributes::SYSTEM_NETWORK_STATE */ public const SYSTEM_NETWORK_STATE_CLOSE_WAIT = 'close_wait'; /** - * @see TraceAttributes::SYSTEM_NETWORK_STATE closing + * closing + * + * @see TraceAttributes::SYSTEM_NETWORK_STATE */ public const SYSTEM_NETWORK_STATE_CLOSING = 'closing'; /** - * @see TraceAttributes::SYSTEM_NETWORK_STATE delete + * delete + * + * @see TraceAttributes::SYSTEM_NETWORK_STATE */ public const SYSTEM_NETWORK_STATE_DELETE = 'delete'; /** - * @see TraceAttributes::SYSTEM_NETWORK_STATE established + * established + * + * @see TraceAttributes::SYSTEM_NETWORK_STATE */ public const SYSTEM_NETWORK_STATE_ESTABLISHED = 'established'; /** - * @see TraceAttributes::SYSTEM_NETWORK_STATE fin_wait_1 + * fin_wait_1 + * + * @see TraceAttributes::SYSTEM_NETWORK_STATE */ public const SYSTEM_NETWORK_STATE_FIN_WAIT_1 = 'fin_wait_1'; /** - * @see TraceAttributes::SYSTEM_NETWORK_STATE fin_wait_2 + * fin_wait_2 + * + * @see TraceAttributes::SYSTEM_NETWORK_STATE */ public const SYSTEM_NETWORK_STATE_FIN_WAIT_2 = 'fin_wait_2'; /** - * @see TraceAttributes::SYSTEM_NETWORK_STATE last_ack + * last_ack + * + * @see TraceAttributes::SYSTEM_NETWORK_STATE */ public const SYSTEM_NETWORK_STATE_LAST_ACK = 'last_ack'; /** - * @see TraceAttributes::SYSTEM_NETWORK_STATE listen + * listen + * + * @see TraceAttributes::SYSTEM_NETWORK_STATE */ public const SYSTEM_NETWORK_STATE_LISTEN = 'listen'; /** - * @see TraceAttributes::SYSTEM_NETWORK_STATE syn_recv + * syn_recv + * + * @see TraceAttributes::SYSTEM_NETWORK_STATE */ public const SYSTEM_NETWORK_STATE_SYN_RECV = 'syn_recv'; /** - * @see TraceAttributes::SYSTEM_NETWORK_STATE syn_sent + * syn_sent + * + * @see TraceAttributes::SYSTEM_NETWORK_STATE */ public const SYSTEM_NETWORK_STATE_SYN_SENT = 'syn_sent'; /** - * @see TraceAttributes::SYSTEM_NETWORK_STATE time_wait + * time_wait + * + * @see TraceAttributes::SYSTEM_NETWORK_STATE */ public const SYSTEM_NETWORK_STATE_TIME_WAIT = 'time_wait'; /** - * @see TraceAttributes::SYSTEM_PAGING_DIRECTION in + * in + * + * @see TraceAttributes::SYSTEM_PAGING_DIRECTION */ public const SYSTEM_PAGING_DIRECTION_IN = 'in'; /** - * @see TraceAttributes::SYSTEM_PAGING_DIRECTION out + * out + * + * @see TraceAttributes::SYSTEM_PAGING_DIRECTION */ public const SYSTEM_PAGING_DIRECTION_OUT = 'out'; /** - * @see TraceAttributes::SYSTEM_PAGING_STATE used + * used + * + * @see TraceAttributes::SYSTEM_PAGING_STATE */ public const SYSTEM_PAGING_STATE_USED = 'used'; /** - * @see TraceAttributes::SYSTEM_PAGING_STATE free + * free + * + * @see TraceAttributes::SYSTEM_PAGING_STATE */ public const SYSTEM_PAGING_STATE_FREE = 'free'; /** - * @see TraceAttributes::SYSTEM_PAGING_TYPE major + * major + * + * @see TraceAttributes::SYSTEM_PAGING_TYPE */ public const SYSTEM_PAGING_TYPE_MAJOR = 'major'; /** - * @see TraceAttributes::SYSTEM_PAGING_TYPE minor + * minor + * + * @see TraceAttributes::SYSTEM_PAGING_TYPE */ public const SYSTEM_PAGING_TYPE_MINOR = 'minor'; /** - * @see TraceAttributes::SYSTEM_PROCESS_STATUS running + * running + * + * @see TraceAttributes::SYSTEM_PROCESS_STATUS */ public const SYSTEM_PROCESS_STATUS_RUNNING = 'running'; /** - * @see TraceAttributes::SYSTEM_PROCESS_STATUS sleeping + * sleeping + * + * @see TraceAttributes::SYSTEM_PROCESS_STATUS */ public const SYSTEM_PROCESS_STATUS_SLEEPING = 'sleeping'; /** - * @see TraceAttributes::SYSTEM_PROCESS_STATUS stopped + * stopped + * + * @see TraceAttributes::SYSTEM_PROCESS_STATUS */ public const SYSTEM_PROCESS_STATUS_STOPPED = 'stopped'; /** - * @see TraceAttributes::SYSTEM_PROCESS_STATUS defunct + * defunct + * + * @see TraceAttributes::SYSTEM_PROCESS_STATUS */ public const SYSTEM_PROCESS_STATUS_DEFUNCT = 'defunct'; /** - * @see TraceAttributes::SYSTEM_PROCESSES_STATUS running + * running + * + * @see TraceAttributes::SYSTEM_PROCESSES_STATUS */ public const SYSTEM_PROCESSES_STATUS_RUNNING = 'running'; /** - * @see TraceAttributes::SYSTEM_PROCESSES_STATUS sleeping + * sleeping + * + * @see TraceAttributes::SYSTEM_PROCESSES_STATUS */ public const SYSTEM_PROCESSES_STATUS_SLEEPING = 'sleeping'; /** - * @see TraceAttributes::SYSTEM_PROCESSES_STATUS stopped + * stopped + * + * @see TraceAttributes::SYSTEM_PROCESSES_STATUS */ public const SYSTEM_PROCESSES_STATUS_STOPPED = 'stopped'; /** - * @see TraceAttributes::SYSTEM_PROCESSES_STATUS defunct + * defunct + * + * @see TraceAttributes::SYSTEM_PROCESSES_STATUS */ public const SYSTEM_PROCESSES_STATUS_DEFUNCT = 'defunct'; /** - * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE cpp + * cpp + * + * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_CPP = 'cpp'; /** - * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE dotnet + * dotnet + * + * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_DOTNET = 'dotnet'; /** - * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE erlang + * erlang + * + * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_ERLANG = 'erlang'; /** - * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE go + * go + * + * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_GO = 'go'; /** - * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE java + * java + * + * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_JAVA = 'java'; /** - * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE nodejs + * nodejs + * + * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_NODEJS = 'nodejs'; /** - * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE php + * php + * + * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_PHP = 'php'; /** - * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE python + * python + * + * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_PYTHON = 'python'; /** - * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE ruby + * ruby + * + * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_RUBY = 'ruby'; /** - * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE rust + * rust + * + * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_RUST = 'rust'; /** - * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE swift + * swift + * + * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_SWIFT = 'swift'; /** - * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE webjs + * webjs + * + * @see TraceAttributes::TELEMETRY_SDK_LANGUAGE */ public const TELEMETRY_SDK_LANGUAGE_WEBJS = 'webjs'; /** - * @see TraceAttributes::TLS_PROTOCOL_NAME ssl + * pass + * + * @see TraceAttributes::TEST_CASE_RESULT_STATUS + */ + public const TEST_CASE_RESULT_STATUS_PASS = 'pass'; + + /** + * fail + * + * @see TraceAttributes::TEST_CASE_RESULT_STATUS + */ + public const TEST_CASE_RESULT_STATUS_FAIL = 'fail'; + + /** + * success + * + * @see TraceAttributes::TEST_SUITE_RUN_STATUS + */ + public const TEST_SUITE_RUN_STATUS_SUCCESS = 'success'; + + /** + * failure + * + * @see TraceAttributes::TEST_SUITE_RUN_STATUS + */ + public const TEST_SUITE_RUN_STATUS_FAILURE = 'failure'; + + /** + * skipped + * + * @see TraceAttributes::TEST_SUITE_RUN_STATUS + */ + public const TEST_SUITE_RUN_STATUS_SKIPPED = 'skipped'; + + /** + * aborted + * + * @see TraceAttributes::TEST_SUITE_RUN_STATUS + */ + public const TEST_SUITE_RUN_STATUS_ABORTED = 'aborted'; + + /** + * timed_out + * + * @see TraceAttributes::TEST_SUITE_RUN_STATUS + */ + public const TEST_SUITE_RUN_STATUS_TIMED_OUT = 'timed_out'; + + /** + * in_progress + * + * @see TraceAttributes::TEST_SUITE_RUN_STATUS + */ + public const TEST_SUITE_RUN_STATUS_IN_PROGRESS = 'in_progress'; + + /** + * ssl + * + * @see TraceAttributes::TLS_PROTOCOL_NAME */ public const TLS_PROTOCOL_NAME_SSL = 'ssl'; /** - * @see TraceAttributes::TLS_PROTOCOL_NAME tls + * tls + * + * @see TraceAttributes::TLS_PROTOCOL_NAME */ public const TLS_PROTOCOL_NAME_TLS = 'tls'; + + /** + * Major (Mark Sweep Compact) + * + * @see TraceAttributes::V8JS_GC_TYPE + */ + public const V8JS_GC_TYPE_MAJOR = 'major'; + + /** + * Minor (Scavenge) + * + * @see TraceAttributes::V8JS_GC_TYPE + */ + public const V8JS_GC_TYPE_MINOR = 'minor'; + + /** + * Incremental (Incremental Marking) + * + * @see TraceAttributes::V8JS_GC_TYPE + */ + public const V8JS_GC_TYPE_INCREMENTAL = 'incremental'; + + /** + * Weak Callbacks (Process Weak Callbacks) + * + * @see TraceAttributes::V8JS_GC_TYPE + */ + public const V8JS_GC_TYPE_WEAKCB = 'weakcb'; + + /** + * New memory space + * + * @see TraceAttributes::V8JS_HEAP_SPACE_NAME + */ + public const V8JS_HEAP_SPACE_NAME_NEW_SPACE = 'new_space'; + + /** + * Old memory space + * + * @see TraceAttributes::V8JS_HEAP_SPACE_NAME + */ + public const V8JS_HEAP_SPACE_NAME_OLD_SPACE = 'old_space'; + + /** + * Code memory space + * + * @see TraceAttributes::V8JS_HEAP_SPACE_NAME + */ + public const V8JS_HEAP_SPACE_NAME_CODE_SPACE = 'code_space'; + + /** + * Map memory space + * + * @see TraceAttributes::V8JS_HEAP_SPACE_NAME + */ + public const V8JS_HEAP_SPACE_NAME_MAP_SPACE = 'map_space'; + + /** + * Large object memory space + * + * @see TraceAttributes::V8JS_HEAP_SPACE_NAME + */ + public const V8JS_HEAP_SPACE_NAME_LARGE_OBJECT_SPACE = 'large_object_space'; + + /** + * [branch](https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddefbranchabranch) + * + * @see TraceAttributes::VCS_REPOSITORY_REF_TYPE + */ + public const VCS_REPOSITORY_REF_TYPE_BRANCH = 'branch'; + + /** + * [tag](https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddeftagatag) + * + * @see TraceAttributes::VCS_REPOSITORY_REF_TYPE + */ + public const VCS_REPOSITORY_REF_TYPE_TAG = 'tag'; } diff --git a/src/SemConv/TraceAttributes.php b/src/SemConv/TraceAttributes.php index 35326e35c..13c115a23 100644 --- a/src/SemConv/TraceAttributes.php +++ b/src/SemConv/TraceAttributes.php @@ -11,7 +11,7 @@ interface TraceAttributes /** * The URL of the OpenTelemetry schema for these keys and values. */ - public const SCHEMA_URL = 'https://opentelemetry.io/schemas/1.26.0'; + public const SCHEMA_URL = 'https://opentelemetry.io/schemas/1.27.0'; /** * Uniquely identifies the framework API revision offered by a version (`os.version`) of the android operating system. More information can be found here. @@ -28,6 +28,78 @@ interface TraceAttributes */ public const ANDROID_STATE = 'android.state'; + /** + * The provenance filename of the built attestation which directly relates to the build artifact filename. This filename SHOULD accompany the artifact at publish time. See the SLSA Relationship specification for more information. + * + * @example golang-binary-amd64-v0.1.0.attestation + * @example docker-image-amd64-v0.1.0.intoto.json1 + * @example release-1.tar.gz.attestation + * @example file-name-package.tar.gz.intoto.json1 + */ + public const ARTIFACT_ATTESTATION_FILENAME = 'artifact.attestation.filename'; + + /** + * The full hash value (see glossary), of the built attestation. Some envelopes in the software attestation space also refer to this as the digest. + * + * @example 1b31dfcd5b7f9267bf2ff47651df1cfb9147b9e4df1f335accf65b4cda498408 + */ + public const ARTIFACT_ATTESTATION_HASH = 'artifact.attestation.hash'; + + /** + * The id of the build software attestation. + * + * @example 123 + */ + public const ARTIFACT_ATTESTATION_ID = 'artifact.attestation.id'; + + /** + * The human readable file name of the artifact, typically generated during build and release processes. Often includes the package name and version in the file name. + * + * This file name can also act as the Package Name + * in cases where the package ecosystem maps accordingly. + * Additionally, the artifact can be published + * for others, but that is not a guarantee. + * + * @example golang-binary-amd64-v0.1.0 + * @example docker-image-amd64-v0.1.0 + * @example release-1.tar.gz + * @example file-name-package.tar.gz + */ + public const ARTIFACT_FILENAME = 'artifact.filename'; + + /** + * The full hash value (see glossary), often found in checksum.txt on a release of the artifact and used to verify package integrity. + * + * The specific algorithm used to create the cryptographic hash value is + * not defined. In situations where an artifact has multiple + * cryptographic hashes, it is up to the implementer to choose which + * hash value to set here; this should be the most secure hash algorithm + * that is suitable for the situation and consistent with the + * corresponding attestation. The implementer can then provide the other + * hash values through an additional set of attribute extensions as they + * deem necessary. + * + * @example 9ff4c52759e2c4ac70b7d517bc7fcdc1cda631ca0045271ddd1b192544f8a3e9 + */ + public const ARTIFACT_HASH = 'artifact.hash'; + + /** + * The Package URL of the package artifact provides a standard way to identify and locate the packaged artifact. + * + * @example pkg:github/package-url/purl-spec@1209109710924 + * @example pkg:npm/foo@12.12.3 + */ + public const ARTIFACT_PURL = 'artifact.purl'; + + /** + * The version of the artifact. + * + * @example v0.1.0 + * @example 1.2.1 + * @example 122691-build + */ + public const ARTIFACT_VERSION = 'artifact.version'; + /** * ASP.NET Core exception middleware handling result. * @@ -437,6 +509,13 @@ interface TraceAttributes */ public const AWS_S3_UPLOAD_ID = 'aws.s3.upload_id'; + /** + * The unique identifier of the service request. It's generated by the Azure service and returned with the response. + * + * @example 00000000-0000-0000-0000-000000000000 + */ + public const AZ_SERVICE_REQUEST_ID = 'az.service_request_id'; + /** * Array of brand name and version separated by a space. * @@ -479,6 +558,56 @@ interface TraceAttributes */ public const BROWSER_PLATFORM = 'browser.platform'; + /** + * The human readable name of the pipeline within a CI/CD system. + * + * @example Build and Test + * @example Lint + * @example Deploy Go Project + * @example deploy_to_environment + */ + public const CICD_PIPELINE_NAME = 'cicd.pipeline.name'; + + /** + * The unique identifier of a pipeline run within a CI/CD system. + * + * @example 120912 + */ + public const CICD_PIPELINE_RUN_ID = 'cicd.pipeline.run.id'; + + /** + * The human readable name of a task within a pipeline. Task here most closely aligns with a computing process in a pipeline. Other terms for tasks include commands, steps, and procedures. + * + * @example Run GoLang Linter + * @example Go Build + * @example go-test + * @example deploy_binary + */ + public const CICD_PIPELINE_TASK_NAME = 'cicd.pipeline.task.name'; + + /** + * The unique identifier of a task run within a pipeline. + * + * @example 12097 + */ + public const CICD_PIPELINE_TASK_RUN_ID = 'cicd.pipeline.task.run.id'; + + /** + * The URL of the pipeline run providing the complete address in order to locate and identify the pipeline run. + * + * @example https://github.com/open-telemetry/semantic-conventions/actions/runs/9753949763/job/26920038674?pr=1075 + */ + public const CICD_PIPELINE_TASK_RUN_URL_FULL = 'cicd.pipeline.task.run.url.full'; + + /** + * The type of the task within a pipeline. + * + * @example build + * @example test + * @example deploy + */ + public const CICD_PIPELINE_TASK_TYPE = 'cicd.pipeline.task.type'; + /** * Client address - domain name if available without reverse DNS lookup; otherwise, IP address or Unix domain socket name. * @@ -539,7 +668,7 @@ interface TraceAttributes public const CLOUD_REGION = 'cloud.region'; /** - * Cloud provider-specific native identifier of the monitored cloud resource (e.g. an ARN on AWS, a fully qualified resource ID on Azure, a full resource name on GCP). + * The Fully Qualified Azure Resource ID the log is emitted for. * * On some cloud providers, it may not be possible to determine the full ID at startup, * so it may be necessary to set `cloud.resource_id` as a span attribute instead.The exact value to use for `cloud.resource_id` depends on the cloud provider. @@ -547,7 +676,7 @@ interface TraceAttributes *
  • AWS Lambda: The function ARN. * Take care not to use the "invoked ARN" directly but replace any * alias suffix - * with the resolved function version, as the same runtime instance may be invokable with + * with the resolved function version, as the same runtime instance may be invocable with * multiple different aliases.
  • *
  • GCP: The URI of the resource
  • *
  • Azure: The Fully Qualified Resource ID of the invoked function, @@ -668,7 +797,9 @@ interface TraceAttributes public const CONTAINER_COMMAND_LINE = 'container.command_line'; /** - * The CPU state for this data point. + * Deprecated, use `cpu.mode` instead. + * + * @deprecated Replaced by `cpu.mode`. * * @example user * @example kernel @@ -734,6 +865,14 @@ interface TraceAttributes */ public const CONTAINER_RUNTIME = 'container.runtime'; + /** + * The mode of the CPU. + * + * @example user + * @example system + */ + public const CPU_MODE = 'cpu.mode'; + /** * The consistency level of the query. Based on consistency values from CQL. */ @@ -782,24 +921,43 @@ interface TraceAttributes public const DB_CASSANDRA_TABLE = 'db.cassandra.table'; /** - * The name of the connection pool; unique within the instrumented application. In case the connection pool implementation doesn't provide a name, instrumentation should use a combination of `server.address` and `server.port` attributes formatted as `server.address:server.port`. + * The name of the connection pool; unique within the instrumented application. In case the connection pool implementation doesn't provide a name, instrumentation SHOULD use a combination of parameters that would make the name unique, for example, combining attributes `server.address`, `server.port`, and `db.namespace`, formatted as `server.address:server.port/db.namespace`. Instrumentations that generate connection pool name following different patterns SHOULD document it. * * @example myDataSource */ - public const DB_CLIENT_CONNECTIONS_POOL_NAME = 'db.client.connections.pool.name'; + public const DB_CLIENT_CONNECTION_POOL_NAME = 'db.client.connection.pool.name'; /** * The state of a connection in the pool. * * @example idle */ + public const DB_CLIENT_CONNECTION_STATE = 'db.client.connection.state'; + + /** + * Deprecated, use `db.client.connection.pool.name` instead. + * + * @deprecated Replaced by `db.client.connection.pool.name`. + * + * @example myDataSource + */ + public const DB_CLIENT_CONNECTIONS_POOL_NAME = 'db.client.connections.pool.name'; + + /** + * Deprecated, use `db.client.connection.state` instead. + * + * @deprecated Replaced by `db.client.connection.state`. + * + * @example idle + */ public const DB_CLIENT_CONNECTIONS_STATE = 'db.client.connections.state'; /** * The name of a collection (table, container) within the database. * - * If the collection name is parsed from the query, it SHOULD match the value provided in the query and may be qualified with the schema and database name. * It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. + * If the collection name is parsed from the query text, it SHOULD be the first collection name found in the query and it SHOULD match the value provided in the query text including any schema and database name prefix. + * For batch operations, if the individual operations are known to have the same collection name then that collection name SHOULD be used, otherwise `db.collection.name` SHOULD NOT be captured. * * @example public.users * @example customers @@ -871,7 +1029,9 @@ interface TraceAttributes public const DB_COSMOSDB_SUB_STATUS_CODE = 'db.cosmosdb.sub_status_code'; /** - * Represents the identifier of an Elasticsearch cluster. + * Deprecated, use `db.namespace` instead. + * + * @deprecated Replaced by `db.namespace`. * * @example e9106fc68e3044f0b1475b04bf4ffd5f */ @@ -954,10 +1114,23 @@ interface TraceAttributes */ public const DB_OPERATION = 'db.operation'; + /** + * The number of queries included in a batch operation. + * + * Operations are only considered batches when they contain two or more operations, and so `db.operation.batch.size` SHOULD never be `1`. + * + * @example 2 + * @example 3 + * @example 4 + */ + public const DB_OPERATION_BATCH_SIZE = 'db.operation.batch.size'; + /** * The name of the operation or command being executed. * * It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. + * If the operation name is parsed from the query text, it SHOULD be the first operation name found in the query. + * For batch operations, if the individual operations are known to have the same operation name then that operation name SHOULD be used prepended by `BATCH`, otherwise `db.operation.name` SHOULD be `BATCH` or some other database system specific term if more applicable. * * @example findAndModify * @example HMSET @@ -968,6 +1141,10 @@ interface TraceAttributes /** * The database query being executed. * + * For sanitization see Sanitization of `db.query.text`. + * For batch operations, if the individual operations are known to have the same query text then that query text SHOULD be used, otherwise all of the individual query texts SHOULD be concatenated with separator `;` or some other database system specific separator if more applicable. + * Even though parameterized query text can potentially have sensitive data, by using a parameterized query the user is giving a strong signal that any sensitive data will be passed as parameter values, and the benefit to observability of capturing the static part of the query text by default outweighs the risk. + * * @example SELECT * FROM wuser_table where username = ? * @example SET mykey "WuValue" */ @@ -1019,21 +1196,51 @@ interface TraceAttributes */ public const DB_USER = 'db.user'; + /** + * 'Deprecated, use `deployment.environment.name` instead.'. + * + * @deprecated Deprecated, use `deployment.environment.name` instead. + * + * @example staging + * @example production + */ + public const DEPLOYMENT_ENVIRONMENT = 'deployment.environment'; + /** * Name of the deployment environment (aka deployment tier). * - * `deployment.environment` does not affect the uniqueness constraints defined through + * `deployment.environment.name` does not affect the uniqueness constraints defined through * the `service.namespace`, `service.name` and `service.instance.id` resource attributes. * This implies that resources carrying the following attribute combinations MUST be * considered to be identifying the same service: * * @example staging * @example production */ - public const DEPLOYMENT_ENVIRONMENT = 'deployment.environment'; + public const DEPLOYMENT_ENVIRONMENT_NAME = 'deployment.environment.name'; + + /** + * The id of the deployment. + * + * @example 1208 + */ + public const DEPLOYMENT_ID = 'deployment.id'; + + /** + * The name of the deployment. + * + * @example deploy my app + * @example deploy-frontend + */ + public const DEPLOYMENT_NAME = 'deployment.name'; + + /** + * The status of the deployment. + */ + public const DEPLOYMENT_STATUS = 'deployment.status'; /** * Destination address - domain name if available without reverse DNS lookup; otherwise, IP address or Unix domain socket name. @@ -1111,21 +1318,27 @@ interface TraceAttributes public const DNS_QUESTION_NAME = 'dns.question.name'; /** - * Username or client_id extracted from the access token or Authorization header in the inbound request from outside the system. + * Deprecated, use `user.id` instead. + * + * @deprecated Replaced by `user.id` attribute. * * @example username */ public const ENDUSER_ID = 'enduser.id'; /** - * Actual/assumed role the client is making the request under extracted from token or application security context. + * Deprecated, use `user.roles` instead. + * + * @deprecated Replaced by `user.roles` attribute. * * @example admin */ public const ENDUSER_ROLE = 'enduser.role'; /** - * Scopes or granted authorities the client currently possesses extracted from token or application security context. The value would come from the scope associated with an OAuth 2.0 Access Token or an attribute value in a SAML 2.0 Assertion. + * Deprecated, no replacement at this time. + * + * @deprecated Removed. * * @example read:message, write:files */ @@ -1407,6 +1620,19 @@ interface TraceAttributes */ public const FILE_SIZE = 'file.size'; + /** + * Identifies the Google Cloud service for which the official client library is intended. + * + * Intended to be a stable identifier for Google Cloud client libraries that is uniform across implementation languages. The value should be derived from the canonical service domain for the service; for example, 'foo.googleapis.com' should result in a value of 'foo'. + * + * @example appengine + * @example run + * @example firestore + * @example alloydb + * @example spanner + */ + public const GCP_CLIENT_SERVICE = 'gcp.client.service'; + /** * The name of the Cloud Run execution being run for the Job, as set by the `CLOUD_RUN_EXECUTION` environment variable. * @@ -1439,7 +1665,7 @@ interface TraceAttributes public const GCP_GCE_INSTANCE_NAME = 'gcp.gce.instance.name'; /** - * The full response received from the LLM. + * The full response received from the GenAI model. * * It's RECOMMENDED to format completions as JSON string matching OpenAI messages format * @@ -1448,7 +1674,14 @@ interface TraceAttributes public const GEN_AI_COMPLETION = 'gen_ai.completion'; /** - * The full prompt sent to an LLM. + * The name of the operation being performed. + * + * If one of the predefined values applies, but specific system uses a different name it's RECOMMENDED to document it in the semantic conventions for specific GenAI system and use system-specific name in the instrumentation. If a different name is not documented, instrumentation libraries SHOULD use applicable predefined value. + */ + public const GEN_AI_OPERATION_NAME = 'gen_ai.operation.name'; + + /** + * The full prompt sent to the GenAI model. * * It's RECOMMENDED to format prompts as JSON string matching OpenAI messages format * @@ -1457,27 +1690,56 @@ interface TraceAttributes public const GEN_AI_PROMPT = 'gen_ai.prompt'; /** - * The maximum number of tokens the LLM generates for a request. + * The frequency penalty setting for the GenAI request. + * + * @example 0.1 + */ + public const GEN_AI_REQUEST_FREQUENCY_PENALTY = 'gen_ai.request.frequency_penalty'; + + /** + * The maximum number of tokens the model generates for a request. * * @example 100 */ public const GEN_AI_REQUEST_MAX_TOKENS = 'gen_ai.request.max_tokens'; /** - * The name of the LLM a request is being made to. + * The name of the GenAI model a request is being made to. * * @example gpt-4 */ public const GEN_AI_REQUEST_MODEL = 'gen_ai.request.model'; /** - * The temperature setting for the LLM request. + * The presence penalty setting for the GenAI request. + * + * @example 0.1 + */ + public const GEN_AI_REQUEST_PRESENCE_PENALTY = 'gen_ai.request.presence_penalty'; + + /** + * List of sequences that the model will use to stop generating further tokens. + * + * @example forest + * @example lived + */ + public const GEN_AI_REQUEST_STOP_SEQUENCES = 'gen_ai.request.stop_sequences'; + + /** + * The temperature setting for the GenAI request. * */ public const GEN_AI_REQUEST_TEMPERATURE = 'gen_ai.request.temperature'; /** - * The top_p sampling setting for the LLM request. + * The top_k sampling setting for the GenAI request. + * + * @example 1.0 + */ + public const GEN_AI_REQUEST_TOP_K = 'gen_ai.request.top_k'; + + /** + * The top_p sampling setting for the GenAI request. * * @example 1.0 */ @@ -1498,35 +1760,73 @@ interface TraceAttributes public const GEN_AI_RESPONSE_ID = 'gen_ai.response.id'; /** - * The name of the LLM a response was generated from. + * The name of the model that generated the response. * * @example gpt-4-0613 */ public const GEN_AI_RESPONSE_MODEL = 'gen_ai.response.model'; /** - * The Generative AI product as identified by the client instrumentation. + * The Generative AI product as identified by the client or server instrumentation. * - * The actual GenAI product may differ from the one identified by the client. For example, when using OpenAI client libraries to communicate with Mistral, the `gen_ai.system` is set to `openai` based on the instrumentation's best knowledge. + * The `gen_ai.system` describes a family of GenAI models with specific model identified + * by `gen_ai.request.model` and `gen_ai.response.model` attributes.The actual GenAI product may differ from the one identified by the client. + * For example, when using OpenAI client libraries to communicate with Mistral, the `gen_ai.system` + * is set to `openai` based on the instrumentation's best knowledge.For custom model, a custom friendly name SHOULD be used. + * If none of these options apply, the `gen_ai.system` SHOULD be set to `_OTHER`. * * @example openai */ public const GEN_AI_SYSTEM = 'gen_ai.system'; /** - * The number of tokens used in the LLM response (completion). + * The type of token being counted. * - * @example 180 + * @example input + * @example output + */ + public const GEN_AI_TOKEN_TYPE = 'gen_ai.token.type'; + + /** + * Deprecated, use `gen_ai.usage.output_tokens` instead. + * + * @deprecated Replaced by `gen_ai.usage.output_tokens` attribute. + * + * @example 42 */ public const GEN_AI_USAGE_COMPLETION_TOKENS = 'gen_ai.usage.completion_tokens'; /** - * The number of tokens used in the LLM prompt. + * The number of tokens used in the GenAI input (prompt). * * @example 100 */ + public const GEN_AI_USAGE_INPUT_TOKENS = 'gen_ai.usage.input_tokens'; + + /** + * The number of tokens used in the GenAI response (completion). + * + * @example 180 + */ + public const GEN_AI_USAGE_OUTPUT_TOKENS = 'gen_ai.usage.output_tokens'; + + /** + * Deprecated, use `gen_ai.usage.input_tokens` instead. + * + * @deprecated Replaced by `gen_ai.usage.input_tokens` attribute. + * + * @example 42 + */ public const GEN_AI_USAGE_PROMPT_TOKENS = 'gen_ai.usage.prompt_tokens'; + /** + * The type of memory. + * + * @example other + * @example stack + */ + public const GO_MEMORY_TYPE = 'go.memory.type'; + /** * The GraphQL document being executed. * @@ -2148,6 +2448,14 @@ interface TraceAttributes */ public const K8S_STATEFULSET_UID = 'k8s.statefulset.uid'; + /** + * The Linux Slab memory state. + * + * @example reclaimable + * @example unreclaimable + */ + public const LINUX_MEMORY_SLAB_STATE = 'linux.memory.slab.state'; + /** * The basename of the file. * @@ -2181,6 +2489,16 @@ interface TraceAttributes */ public const LOG_IOSTREAM = 'log.iostream'; + /** + * The complete orignal Log Record. + * + * This value MAY be added when processing a Log Record which was originally transmitted as a string or equivalent data type AND the Body field of the Log Record does not contain the same value. (e.g. a syslog or a log record read from a file.) + * + * @example 77 <86>1 2015-08-06T21:58:59.694Z 192.168.2.133 inactive - - - Something happened + * @example [INFO] 8/3/24 12:34:56 Something happened + */ + public const LOG_RECORD_ORIGINAL = 'log.record.original'; + /** * A unique identifier for the Log Record. * @@ -2237,6 +2555,16 @@ interface TraceAttributes */ public const MESSAGING_CLIENT_ID = 'messaging.client.id'; + /** + * The name of the consumer group with which a consumer is associated. + * + * Semantic conventions for individual messaging systems SHOULD document whether `messaging.consumer.group.name` is applicable and what it means in the context of that system. + * + * @example my-group + * @example indexer + */ + public const MESSAGING_CONSUMER_GROUP_NAME = 'messaging.consumer.group.name'; + /** * A boolean that is true if the message destination is anonymous (could be unnamed or have auto-generated name). */ @@ -2260,6 +2588,15 @@ interface TraceAttributes */ public const MESSAGING_DESTINATION_PARTITION_ID = 'messaging.destination.partition.id'; + /** + * The name of the destination subscription from which a message is consumed. + * + * Semantic conventions for individual messaging systems SHOULD document whether `messaging.destination.subscription.name` is applicable and what it means in the context of that system. + * + * @example subscription-a + */ + public const MESSAGING_DESTINATION_SUBSCRIPTION_NAME = 'messaging.destination.subscription.name'; + /** * Low cardinality representation of the messaging destination name. * @@ -2275,15 +2612,16 @@ interface TraceAttributes public const MESSAGING_DESTINATION_TEMPORARY = 'messaging.destination.temporary'; /** - * A boolean that is true if the publish message destination is anonymous (could be unnamed or have auto-generated name). + * Deprecated, no replacement at this time. + * + * @deprecated No replacement at this time. */ public const MESSAGING_DESTINATION_PUBLISH_ANONYMOUS = 'messaging.destination_publish.anonymous'; /** - * The name of the original destination the message was published to. + * Deprecated, no replacement at this time. * - * The name SHOULD uniquely identify a specific queue, topic, or other entity within the broker. If - * the broker doesn't have such notion, the original destination name SHOULD uniquely identify the broker. + * @deprecated No replacement at this time. * * @example MyQueue * @example MyTopic @@ -2291,9 +2629,11 @@ interface TraceAttributes public const MESSAGING_DESTINATION_PUBLISH_NAME = 'messaging.destination_publish.name'; /** - * The name of the consumer group the event consumer is associated with. + * Deprecated, use `messaging.consumer.group.name` instead. * - * @example indexer + * @deprecated Replaced by `messaging.consumer.group.name`. + * + * @example $Default */ public const MESSAGING_EVENTHUBS_CONSUMER_GROUP = 'messaging.eventhubs.consumer.group'; @@ -2333,7 +2673,9 @@ interface TraceAttributes public const MESSAGING_GCP_PUBSUB_MESSAGE_ORDERING_KEY = 'messaging.gcp_pubsub.message.ordering_key'; /** - * Name of the Kafka Consumer Group that is handling the message. Only applies to consumers, not producers. + * Deprecated, use `messaging.consumer.group.name` instead. + * + * @deprecated Replaced by `messaging.consumer.group.name`. * * @example my-group */ @@ -2358,7 +2700,9 @@ interface TraceAttributes public const MESSAGING_KAFKA_MESSAGE_KEY = 'messaging.kafka.message.key'; /** - * The offset of a record in the corresponding Kafka partition. + * Deprecated, use `messaging.kafka.offset` instead. + * + * @deprecated Replaced by `messaging.kafka.offset`. * * @example 42 */ @@ -2369,6 +2713,13 @@ interface TraceAttributes */ public const MESSAGING_KAFKA_MESSAGE_TOMBSTONE = 'messaging.kafka.message.tombstone'; + /** + * The offset of a record in the corresponding Kafka partition. + * + * @example 42 + */ + public const MESSAGING_KAFKA_OFFSET = 'messaging.kafka.offset'; + /** * The size of the message body in bytes. * @@ -2445,7 +2796,9 @@ interface TraceAttributes public const MESSAGING_RABBITMQ_MESSAGE_DELIVERY_TAG = 'messaging.rabbitmq.message.delivery_tag'; /** - * Name of the RocketMQ producer/consumer group that is handling the message. The client type is identified by the SpanKind. + * Deprecated, use `messaging.consumer.group.name` instead. + * + * @deprecated Replaced by `messaging.consumer.group.name` on the consumer spans. No replacement for producer spans. * * @example myConsumerGroup */ @@ -2505,9 +2858,11 @@ interface TraceAttributes public const MESSAGING_ROCKETMQ_NAMESPACE = 'messaging.rocketmq.namespace'; /** - * The name of the subscription in the topic messages are received from. + * Deprecated, use `messaging.servicebus.destination.subscription_name` instead. + * + * @deprecated Replaced by `messaging.servicebus.destination.subscription_name`. * - * @example mySubscription + * @example subscription-a */ public const MESSAGING_SERVICEBUS_DESTINATION_SUBSCRIPTION_NAME = 'messaging.servicebus.destination.subscription_name'; @@ -2850,7 +3205,7 @@ interface TraceAttributes public const OS_VERSION = 'os.version'; /** - * None. + * . * * @deprecated use the `otel.scope.name` attribute. * @@ -2859,7 +3214,7 @@ interface TraceAttributes public const OTEL_LIBRARY_NAME = 'otel.library.name'; /** - * None. + * . * * @deprecated use the `otel.scope.version` attribute. * @@ -2901,9 +3256,9 @@ interface TraceAttributes public const PEER_SERVICE = 'peer.service'; /** - * Deprecated, use `db.client.connections.pool.name` instead. + * Deprecated, use `db.client.connection.pool.name` instead. * - * @deprecated Replaced by `db.client.connections.pool.name`. + * @deprecated Replaced by `db.client.connection.pool.name`. * * @example myDataSource */ @@ -2937,7 +3292,9 @@ interface TraceAttributes public const PROCESS_CONTEXT_SWITCH_TYPE = 'process.context_switch_type'; /** - * The CPU state of the process. + * Deprecated, use `cpu.mode` instead. + * + * @deprecated Replaced by `cpu.mode`. */ public const PROCESS_CPU_STATE = 'process.cpu.state'; @@ -3036,7 +3393,7 @@ interface TraceAttributes public const PROCESS_RUNTIME_DESCRIPTION = 'process.runtime.description'; /** - * The name of the runtime of this process. For compiled native binaries, this SHOULD be the name of the compiler. + * The name of the runtime of this process. * * @example OpenJDK Runtime Environment */ @@ -3304,9 +3661,9 @@ interface TraceAttributes public const SOURCE_PORT = 'source.port'; /** - * Deprecated, use `db.client.connections.state` instead. + * Deprecated, use `db.client.connection.state` instead. * - * @deprecated Replaced by `db.client.connections.state`. + * @deprecated Replaced by `db.client.connection.state`. * * @example idle */ @@ -3320,7 +3677,9 @@ interface TraceAttributes public const SYSTEM_CPU_LOGICAL_NUMBER = 'system.cpu.logical_number'; /** - * The state of the CPU. + * Deprecated, use `cpu.mode` instead. + * + * @deprecated Replaced by `cpu.mode`. * * @example idle * @example interrupt @@ -3457,6 +3816,42 @@ interface TraceAttributes */ public const TELEMETRY_SDK_VERSION = 'telemetry.sdk.version'; + /** + * The fully qualified human readable name of the test case. + * + * @example org.example.TestCase1.test1 + * @example example/tests/TestCase1.test1 + * @example ExampleTestCase1_test1 + */ + public const TEST_CASE_NAME = 'test.case.name'; + + /** + * The status of the actual test case result from test execution. + * + * @example pass + * @example fail + */ + public const TEST_CASE_RESULT_STATUS = 'test.case.result.status'; + + /** + * The human readable name of a test suite. + * + * @example TestSuite1 + */ + public const TEST_SUITE_NAME = 'test.suite.name'; + + /** + * The status of the test suite run. + * + * @example success + * @example failure + * @example skipped + * @example aborted + * @example timed_out + * @example in_progress + */ + public const TEST_SUITE_RUN_STATUS = 'test.suite.run.status'; + /** * Current "managed" thread ID (as opposed to OS thread ID). * @@ -3546,7 +3941,9 @@ interface TraceAttributes public const TLS_CLIENT_NOT_BEFORE = 'tls.client.not_before'; /** - * Also called an SNI, this tells the server which hostname to which the client is attempting to connect to. + * Deprecated, use `server.address` instead. + * + * @deprecated Replaced by `server.address. * * @example opentelemetry.io */ @@ -3562,7 +3959,9 @@ interface TraceAttributes /** * Array of ciphers offered by the client during the client hello. * - * @example "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", "..." + * @example TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 + * @example TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 + * @example ... */ public const TLS_CLIENT_SUPPORTED_CIPHERS = 'tls.client.supported_ciphers'; @@ -3804,6 +4203,51 @@ interface TraceAttributes */ public const URL_TOP_LEVEL_DOMAIN = 'url.top_level_domain'; + /** + * User email address. + * + * @example a.einstein@example.com + */ + public const USER_EMAIL = 'user.email'; + + /** + * User's full name. + * + * @example Albert Einstein + */ + public const USER_FULL_NAME = 'user.full_name'; + + /** + * Unique user hash to correlate information for a user in anonymized form. + * + * Useful if `user.id` or `user.name` contain confidential information and cannot be used. + * + * @example 364fc68eaf4c8acec74a4e52d7d1feaa + */ + public const USER_HASH = 'user.hash'; + + /** + * Unique identifier of the user. + * + * @example S-1-5-21-202424912787-2692429404-2351956786-1000 + */ + public const USER_ID = 'user.id'; + + /** + * Short name or login/username of the user. + * + * @example a.einstein + */ + public const USER_NAME = 'user.name'; + + /** + * Array of user roles at the time of the event. + * + * @example admin + * @example reporting_user + */ + public const USER_ROLES = 'user.roles'; + /** * Name of the user-agent extracted from original. Usually refers to the browser's name. * @@ -3833,6 +4277,78 @@ interface TraceAttributes */ public const USER_AGENT_VERSION = 'user_agent.version'; + /** + * The type of garbage collection. + */ + public const V8JS_GC_TYPE = 'v8js.gc.type'; + + /** + * The name of the space type of heap memory. + * + * Value can be retrieved from value `space_name` of `v8.getHeapSpaceStatistics()` + */ + public const V8JS_HEAP_SPACE_NAME = 'v8js.heap.space.name'; + + /** + * The ID of the change (pull request/merge request) if applicable. This is usually a unique (within repository) identifier generated by the VCS system. + * + * @example 123 + */ + public const VCS_REPOSITORY_CHANGE_ID = 'vcs.repository.change.id'; + + /** + * The human readable title of the change (pull request/merge request). This title is often a brief summary of the change and may get merged in to a ref as the commit summary. + * + * @example Fixes broken thing + * @example feat: add my new feature + * @example [chore] update dependency + */ + public const VCS_REPOSITORY_CHANGE_TITLE = 'vcs.repository.change.title'; + + /** + * The name of the reference such as branch or tag in the repository. + * + * @example my-feature-branch + * @example tag-1-test + */ + public const VCS_REPOSITORY_REF_NAME = 'vcs.repository.ref.name'; + + /** + * The revision, literally revised version, The revision most often refers to a commit object in Git, or a revision number in SVN. + * + * The revision can be a full hash value (see glossary), + * of the recorded change to a ref within a repository pointing to a + * commit commit object. It does + * not necessarily have to be a hash; it can simply define a + * revision number + * which is an integer that is monotonically increasing. In cases where + * it is identical to the `ref.name`, it SHOULD still be included. It is + * up to the implementer to decide which value to set as the revision + * based on the VCS system and situational context. + * + * @example 9d59409acf479dfa0df1aa568182e43e43df8bbe28d60fcf2bc52e30068802cc + * @example main + * @example 123 + * @example HEAD + */ + public const VCS_REPOSITORY_REF_REVISION = 'vcs.repository.ref.revision'; + + /** + * The type of the reference in the repository. + * + * @example branch + * @example tag + */ + public const VCS_REPOSITORY_REF_TYPE = 'vcs.repository.ref.type'; + + /** + * The URL of the repository providing the complete address in order to locate and identify the repository. + * + * @example https://github.com/opentelemetry/open-telemetry-collector-contrib + * @example https://gitlab.com/my-org/my-project/my-projects-project/repo + */ + public const VCS_REPOSITORY_URL_FULL = 'vcs.repository.url.full'; + /** * Additional description of the web engine (e.g. detailed version and edition information). * diff --git a/src/SemConv/Version.php b/src/SemConv/Version.php index 9ae8c6da5..8848952ff 100644 --- a/src/SemConv/Version.php +++ b/src/SemConv/Version.php @@ -6,6 +6,7 @@ enum Version: string { + case VERSION_1_27_0 = '1.27.0'; case VERSION_1_26_0 = '1.26.0'; case VERSION_1_25_0 = '1.25.0'; case VERSION_1_24_0 = '1.24.0'; diff --git a/tests/Integration/Config/configurations/kitchen-sink.yaml b/tests/Integration/Config/configurations/kitchen-sink.yaml index 261fff6e8..f1528e98e 100644 --- a/tests/Integration/Config/configurations/kitchen-sink.yaml +++ b/tests/Integration/Config/configurations/kitchen-sink.yaml @@ -349,7 +349,7 @@ resource: # Environment variable: OTEL_SERVICE_NAME service.name: !!str "unknown_service" # Configure the resource schema URL. - schema_url: https://opentelemetry.io/schemas/1.26.0 + schema_url: https://opentelemetry.io/schemas/1.27.0 # Configure instrumentation. instrumentation: diff --git a/tests/Integration/SDK/TracerTest.php b/tests/Integration/SDK/TracerTest.php index b38171f7a..b2f172cf2 100644 --- a/tests/Integration/SDK/TracerTest.php +++ b/tests/Integration/SDK/TracerTest.php @@ -119,9 +119,8 @@ public function test_general_identity_attributes_are_dropped_by_default(): void $tracerProvider = new TracerProvider(new SimpleSpanProcessor($exporter)); $tracer = $tracerProvider->getTracer('test'); $tracer->spanBuilder('test') - ->setAttribute(TraceAttributes::ENDUSER_ID, 'username') - ->setAttribute(TraceAttributes::ENDUSER_ROLE, 'admin') - ->setAttribute(TraceAttributes::ENDUSER_SCOPE, 'read:message, write:files') + ->setAttribute(TraceAttributes::USER_ID, 'username') + ->setAttribute(TraceAttributes::USER_ROLES, 'admin') ->startSpan() ->end(); @@ -130,7 +129,7 @@ public function test_general_identity_attributes_are_dropped_by_default(): void /** @var AttributesInterface $attributes */ $attributes = $exporter->getSpans()[0]->getAttributes(); $this->assertCount(0, $attributes); - $this->assertSame(3, $attributes->getDroppedAttributesCount()); + $this->assertSame(2, $attributes->getDroppedAttributesCount()); } public function test_general_identity_attributes_are_retained_if_enabled(): void