1 // Copyright The OpenTelemetry Authors 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 // Code generated from semantic convention specification. DO NOT EDIT. 16 17 package semconv // import "go.opentelemetry.io/otel/semconv/v1.8.0" 18 19 import "go.opentelemetry.io/otel/attribute" 20 21 // A cloud environment (e.g. GCP, Azure, AWS) 22 const ( 23 // Name of the cloud provider. 24 // 25 // Type: Enum 26 // Required: No 27 // Stability: stable 28 CloudProviderKey = attribute.Key("cloud.provider") 29 // The cloud account ID the resource is assigned to. 30 // 31 // Type: string 32 // Required: No 33 // Stability: stable 34 // Examples: '111111111111', 'opentelemetry' 35 CloudAccountIDKey = attribute.Key("cloud.account.id") 36 // The geographical region the resource is running. 37 // 38 // Type: string 39 // Required: No 40 // Stability: stable 41 // Examples: 'us-central1', 'us-east-1' 42 // Note: Refer to your provider's docs to see the available regions, for example 43 // [Alibaba Cloud regions](https://www.alibabacloud.com/help/doc- 44 // detail/40654.htm), [AWS regions](https://aws.amazon.com/about-aws/global- 45 // infrastructure/regions_az/), [Azure regions](https://azure.microsoft.com/en- 46 // us/global-infrastructure/geographies/), [Google Cloud 47 // regions](https://cloud.google.com/about/locations), or [Tencent Cloud 48 // regions](https://intl.cloud.tencent.com/document/product/213/6091). 49 CloudRegionKey = attribute.Key("cloud.region") 50 // Cloud regions often have multiple, isolated locations known as zones to 51 // increase availability. Availability zone represents the zone where the resource 52 // is running. 53 // 54 // Type: string 55 // Required: No 56 // Stability: stable 57 // Examples: 'us-east-1c' 58 // Note: Availability zones are called "zones" on Alibaba Cloud and Google Cloud. 59 CloudAvailabilityZoneKey = attribute.Key("cloud.availability_zone") 60 // The cloud platform in use. 61 // 62 // Type: Enum 63 // Required: No 64 // Stability: stable 65 // Note: The prefix of the service SHOULD match the one specified in 66 // `cloud.provider`. 67 CloudPlatformKey = attribute.Key("cloud.platform") 68 ) 69 70 var ( 71 // Alibaba Cloud 72 CloudProviderAlibabaCloud = CloudProviderKey.String("alibaba_cloud") 73 // Amazon Web Services 74 CloudProviderAWS = CloudProviderKey.String("aws") 75 // Microsoft Azure 76 CloudProviderAzure = CloudProviderKey.String("azure") 77 // Google Cloud Platform 78 CloudProviderGCP = CloudProviderKey.String("gcp") 79 // Tencent Cloud 80 CloudProviderTencentCloud = CloudProviderKey.String("tencent_cloud") 81 ) 82 83 var ( 84 // Alibaba Cloud Elastic Compute Service 85 CloudPlatformAlibabaCloudECS = CloudPlatformKey.String("alibaba_cloud_ecs") 86 // Alibaba Cloud Function Compute 87 CloudPlatformAlibabaCloudFc = CloudPlatformKey.String("alibaba_cloud_fc") 88 // AWS Elastic Compute Cloud 89 CloudPlatformAWSEC2 = CloudPlatformKey.String("aws_ec2") 90 // AWS Elastic Container Service 91 CloudPlatformAWSECS = CloudPlatformKey.String("aws_ecs") 92 // AWS Elastic Kubernetes Service 93 CloudPlatformAWSEKS = CloudPlatformKey.String("aws_eks") 94 // AWS Lambda 95 CloudPlatformAWSLambda = CloudPlatformKey.String("aws_lambda") 96 // AWS Elastic Beanstalk 97 CloudPlatformAWSElasticBeanstalk = CloudPlatformKey.String("aws_elastic_beanstalk") 98 // AWS App Runner 99 CloudPlatformAWSAppRunner = CloudPlatformKey.String("aws_app_runner") 100 // Azure Virtual Machines 101 CloudPlatformAzureVM = CloudPlatformKey.String("azure_vm") 102 // Azure Container Instances 103 CloudPlatformAzureContainerInstances = CloudPlatformKey.String("azure_container_instances") 104 // Azure Kubernetes Service 105 CloudPlatformAzureAKS = CloudPlatformKey.String("azure_aks") 106 // Azure Functions 107 CloudPlatformAzureFunctions = CloudPlatformKey.String("azure_functions") 108 // Azure App Service 109 CloudPlatformAzureAppService = CloudPlatformKey.String("azure_app_service") 110 // Google Cloud Compute Engine (GCE) 111 CloudPlatformGCPComputeEngine = CloudPlatformKey.String("gcp_compute_engine") 112 // Google Cloud Run 113 CloudPlatformGCPCloudRun = CloudPlatformKey.String("gcp_cloud_run") 114 // Google Cloud Kubernetes Engine (GKE) 115 CloudPlatformGCPKubernetesEngine = CloudPlatformKey.String("gcp_kubernetes_engine") 116 // Google Cloud Functions (GCF) 117 CloudPlatformGCPCloudFunctions = CloudPlatformKey.String("gcp_cloud_functions") 118 // Google Cloud App Engine (GAE) 119 CloudPlatformGCPAppEngine = CloudPlatformKey.String("gcp_app_engine") 120 // Tencent Cloud Cloud Virtual Machine (CVM) 121 CloudPlatformTencentCloudCvm = CloudPlatformKey.String("tencent_cloud_cvm") 122 // Tencent Cloud Elastic Kubernetes Service (EKS) 123 CloudPlatformTencentCloudEKS = CloudPlatformKey.String("tencent_cloud_eks") 124 // Tencent Cloud Serverless Cloud Function (SCF) 125 CloudPlatformTencentCloudScf = CloudPlatformKey.String("tencent_cloud_scf") 126 ) 127 128 // Resources used by AWS Elastic Container Service (ECS). 129 const ( 130 // The Amazon Resource Name (ARN) of an [ECS container instance](https://docs.aws. 131 // amazon.com/AmazonECS/latest/developerguide/ECS_instances.html). 132 // 133 // Type: string 134 // Required: No 135 // Stability: stable 136 // Examples: 'arn:aws:ecs:us- 137 // west-1:123456789123:container/32624152-9086-4f0e-acae-1a75b14fe4d9' 138 AWSECSContainerARNKey = attribute.Key("aws.ecs.container.arn") 139 // The ARN of an [ECS cluster](https://docs.aws.amazon.com/AmazonECS/latest/develo 140 // perguide/clusters.html). 141 // 142 // Type: string 143 // Required: No 144 // Stability: stable 145 // Examples: 'arn:aws:ecs:us-west-2:123456789123:cluster/my-cluster' 146 AWSECSClusterARNKey = attribute.Key("aws.ecs.cluster.arn") 147 // The [launch type](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/l 148 // aunch_types.html) for an ECS task. 149 // 150 // Type: Enum 151 // Required: No 152 // Stability: stable 153 AWSECSLaunchtypeKey = attribute.Key("aws.ecs.launchtype") 154 // The ARN of an [ECS task definition](https://docs.aws.amazon.com/AmazonECS/lates 155 // t/developerguide/task_definitions.html). 156 // 157 // Type: string 158 // Required: No 159 // Stability: stable 160 // Examples: 'arn:aws:ecs:us- 161 // west-1:123456789123:task/10838bed-421f-43ef-870a-f43feacbbb5b' 162 AWSECSTaskARNKey = attribute.Key("aws.ecs.task.arn") 163 // The task definition family this task definition is a member of. 164 // 165 // Type: string 166 // Required: No 167 // Stability: stable 168 // Examples: 'opentelemetry-family' 169 AWSECSTaskFamilyKey = attribute.Key("aws.ecs.task.family") 170 // The revision for this task definition. 171 // 172 // Type: string 173 // Required: No 174 // Stability: stable 175 // Examples: '8', '26' 176 AWSECSTaskRevisionKey = attribute.Key("aws.ecs.task.revision") 177 ) 178 179 var ( 180 // ec2 181 AWSECSLaunchtypeEC2 = AWSECSLaunchtypeKey.String("ec2") 182 // fargate 183 AWSECSLaunchtypeFargate = AWSECSLaunchtypeKey.String("fargate") 184 ) 185 186 // Resources used by AWS Elastic Kubernetes Service (EKS). 187 const ( 188 // The ARN of an EKS cluster. 189 // 190 // Type: string 191 // Required: No 192 // Stability: stable 193 // Examples: 'arn:aws:ecs:us-west-2:123456789123:cluster/my-cluster' 194 AWSEKSClusterARNKey = attribute.Key("aws.eks.cluster.arn") 195 ) 196 197 // Resources specific to Amazon Web Services. 198 const ( 199 // The name(s) of the AWS log group(s) an application is writing to. 200 // 201 // Type: string[] 202 // Required: No 203 // Stability: stable 204 // Examples: '/aws/lambda/my-function', 'opentelemetry-service' 205 // Note: Multiple log groups must be supported for cases like multi-container 206 // applications, where a single application has sidecar containers, and each write 207 // to their own log group. 208 AWSLogGroupNamesKey = attribute.Key("aws.log.group.names") 209 // The Amazon Resource Name(s) (ARN) of the AWS log group(s). 210 // 211 // Type: string[] 212 // Required: No 213 // Stability: stable 214 // Examples: 'arn:aws:logs:us-west-1:123456789012:log-group:/aws/my/group:*' 215 // Note: See the [log group ARN format 216 // documentation](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam- 217 // access-control-overview-cwl.html#CWL_ARN_Format). 218 AWSLogGroupARNsKey = attribute.Key("aws.log.group.arns") 219 // The name(s) of the AWS log stream(s) an application is writing to. 220 // 221 // Type: string[] 222 // Required: No 223 // Stability: stable 224 // Examples: 'logs/main/10838bed-421f-43ef-870a-f43feacbbb5b' 225 AWSLogStreamNamesKey = attribute.Key("aws.log.stream.names") 226 // The ARN(s) of the AWS log stream(s). 227 // 228 // Type: string[] 229 // Required: No 230 // Stability: stable 231 // Examples: 'arn:aws:logs:us-west-1:123456789012:log-group:/aws/my/group:log- 232 // stream:logs/main/10838bed-421f-43ef-870a-f43feacbbb5b' 233 // Note: See the [log stream ARN format 234 // documentation](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam- 235 // access-control-overview-cwl.html#CWL_ARN_Format). One log group can contain 236 // several log streams, so these ARNs necessarily identify both a log group and a 237 // log stream. 238 AWSLogStreamARNsKey = attribute.Key("aws.log.stream.arns") 239 ) 240 241 // A container instance. 242 const ( 243 // Container name used by container runtime. 244 // 245 // Type: string 246 // Required: No 247 // Stability: stable 248 // Examples: 'opentelemetry-autoconf' 249 ContainerNameKey = attribute.Key("container.name") 250 // Container ID. Usually a UUID, as for example used to [identify Docker 251 // containers](https://docs.docker.com/engine/reference/run/#container- 252 // identification). The UUID might be abbreviated. 253 // 254 // Type: string 255 // Required: No 256 // Stability: stable 257 // Examples: 'a3bf90e006b2' 258 ContainerIDKey = attribute.Key("container.id") 259 // The container runtime managing this container. 260 // 261 // Type: string 262 // Required: No 263 // Stability: stable 264 // Examples: 'docker', 'containerd', 'rkt' 265 ContainerRuntimeKey = attribute.Key("container.runtime") 266 // Name of the image the container was built on. 267 // 268 // Type: string 269 // Required: No 270 // Stability: stable 271 // Examples: 'gcr.io/opentelemetry/operator' 272 ContainerImageNameKey = attribute.Key("container.image.name") 273 // Container image tag. 274 // 275 // Type: string 276 // Required: No 277 // Stability: stable 278 // Examples: '0.1' 279 ContainerImageTagKey = attribute.Key("container.image.tag") 280 ) 281 282 // The software deployment. 283 const ( 284 // Name of the [deployment 285 // environment](https://en.wikipedia.org/wiki/Deployment_environment) (aka 286 // deployment tier). 287 // 288 // Type: string 289 // Required: No 290 // Stability: stable 291 // Examples: 'staging', 'production' 292 DeploymentEnvironmentKey = attribute.Key("deployment.environment") 293 ) 294 295 // The device on which the process represented by this resource is running. 296 const ( 297 // A unique identifier representing the device 298 // 299 // Type: string 300 // Required: No 301 // Stability: stable 302 // Examples: '2ab2916d-a51f-4ac8-80ee-45ac31a28092' 303 // Note: The device identifier MUST only be defined using the values outlined 304 // below. This value is not an advertising identifier and MUST NOT be used as 305 // such. On iOS (Swift or Objective-C), this value MUST be equal to the [vendor id 306 // entifier](https://developer.apple.com/documentation/uikit/uidevice/1620059-iden 307 // tifierforvendor). On Android (Java or Kotlin), this value MUST be equal to the 308 // Firebase Installation ID or a globally unique UUID which is persisted across 309 // sessions in your application. More information can be found 310 // [here](https://developer.android.com/training/articles/user-data-ids) on best 311 // practices and exact implementation details. Caution should be taken when 312 // storing personal data or anything which can identify a user. GDPR and data 313 // protection laws may apply, ensure you do your own due diligence. 314 DeviceIDKey = attribute.Key("device.id") 315 // The model identifier for the device 316 // 317 // Type: string 318 // Required: No 319 // Stability: stable 320 // Examples: 'iPhone3,4', 'SM-G920F' 321 // Note: It's recommended this value represents a machine readable version of the 322 // model identifier rather than the market or consumer-friendly name of the 323 // device. 324 DeviceModelIdentifierKey = attribute.Key("device.model.identifier") 325 // The marketing name for the device model 326 // 327 // Type: string 328 // Required: No 329 // Stability: stable 330 // Examples: 'iPhone 6s Plus', 'Samsung Galaxy S6' 331 // Note: It's recommended this value represents a human readable version of the 332 // device model rather than a machine readable alternative. 333 DeviceModelNameKey = attribute.Key("device.model.name") 334 ) 335 336 // A serverless instance. 337 const ( 338 // The name of the single function that this runtime instance executes. 339 // 340 // Type: string 341 // Required: Always 342 // Stability: stable 343 // Examples: 'my-function' 344 // Note: This is the name of the function as configured/deployed on the FaaS 345 // platform and is usually different from the name of the callback function (which 346 // may be stored in the 347 // [`code.namespace`/`code.function`](../../trace/semantic_conventions/span- 348 // general.md#source-code-attributes) span attributes). 349 FaaSNameKey = attribute.Key("faas.name") 350 // The unique ID of the single function that this runtime instance executes. 351 // 352 // Type: string 353 // Required: No 354 // Stability: stable 355 // Examples: 'arn:aws:lambda:us-west-2:123456789012:function:my-function' 356 // Note: Depending on the cloud provider, use: 357 358 // * **AWS Lambda:** The function 359 // [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and- 360 // namespaces.html). 361 // Take care not to use the "invoked ARN" directly but replace any 362 // [alias suffix](https://docs.aws.amazon.com/lambda/latest/dg/configuration- 363 // aliases.html) with the resolved function version, as the same runtime instance 364 // may be invokable with multiple 365 // different aliases. 366 // * **GCP:** The [URI of the resource](https://cloud.google.com/iam/docs/full- 367 // resource-names) 368 // * **Azure:** The [Fully Qualified Resource ID](https://docs.microsoft.com/en- 369 // us/rest/api/resources/resources/get-by-id). 370 371 // On some providers, it may not be possible to determine the full ID at startup, 372 // which is why this field cannot be made required. For example, on AWS the 373 // account ID 374 // part of the ARN is not available without calling another AWS API 375 // which may be deemed too slow for a short-running lambda function. 376 // As an alternative, consider setting `faas.id` as a span attribute instead. 377 FaaSIDKey = attribute.Key("faas.id") 378 // The immutable version of the function being executed. 379 // 380 // Type: string 381 // Required: No 382 // Stability: stable 383 // Examples: '26', 'pinkfroid-00002' 384 // Note: Depending on the cloud provider and platform, use: 385 386 // * **AWS Lambda:** The [function 387 // version](https://docs.aws.amazon.com/lambda/latest/dg/configuration- 388 // versions.html) 389 // (an integer represented as a decimal string). 390 // * **Google Cloud Run:** The 391 // [revision](https://cloud.google.com/run/docs/managing/revisions) 392 // (i.e., the function name plus the revision suffix). 393 // * **Google Cloud Functions:** The value of the 394 // [`K_REVISION` environment 395 // variable](https://cloud.google.com/functions/docs/env- 396 // var#runtime_environment_variables_set_automatically). 397 // * **Azure Functions:** Not applicable. Do not set this attribute. 398 FaaSVersionKey = attribute.Key("faas.version") 399 // The execution environment ID as a string, that will be potentially reused for 400 // other invocations to the same function/function version. 401 // 402 // Type: string 403 // Required: No 404 // Stability: stable 405 // Examples: '2021/06/28/[$LATEST]2f399eb14537447da05ab2a2e39309de' 406 // Note: * **AWS Lambda:** Use the (full) log stream name. 407 FaaSInstanceKey = attribute.Key("faas.instance") 408 // The amount of memory available to the serverless function in MiB. 409 // 410 // Type: int 411 // Required: No 412 // Stability: stable 413 // Examples: 128 414 // Note: It's recommended to set this attribute since e.g. too little memory can 415 // easily stop a Java AWS Lambda function from working correctly. On AWS Lambda, 416 // the environment variable `AWS_LAMBDA_FUNCTION_MEMORY_SIZE` provides this 417 // information. 418 FaaSMaxMemoryKey = attribute.Key("faas.max_memory") 419 ) 420 421 // A host is defined as a general computing instance. 422 const ( 423 // Unique host ID. For Cloud, this must be the instance_id assigned by the cloud 424 // provider. 425 // 426 // Type: string 427 // Required: No 428 // Stability: stable 429 // Examples: 'opentelemetry-test' 430 HostIDKey = attribute.Key("host.id") 431 // Name of the host. On Unix systems, it may contain what the hostname command 432 // returns, or the fully qualified hostname, or another name specified by the 433 // user. 434 // 435 // Type: string 436 // Required: No 437 // Stability: stable 438 // Examples: 'opentelemetry-test' 439 HostNameKey = attribute.Key("host.name") 440 // Type of host. For Cloud, this must be the machine type. 441 // 442 // Type: string 443 // Required: No 444 // Stability: stable 445 // Examples: 'n1-standard-1' 446 HostTypeKey = attribute.Key("host.type") 447 // The CPU architecture the host system is running on. 448 // 449 // Type: Enum 450 // Required: No 451 // Stability: stable 452 HostArchKey = attribute.Key("host.arch") 453 // Name of the VM image or OS install the host was instantiated from. 454 // 455 // Type: string 456 // Required: No 457 // Stability: stable 458 // Examples: 'infra-ami-eks-worker-node-7d4ec78312', 'CentOS-8-x86_64-1905' 459 HostImageNameKey = attribute.Key("host.image.name") 460 // VM image ID. For Cloud, this value is from the provider. 461 // 462 // Type: string 463 // Required: No 464 // Stability: stable 465 // Examples: 'ami-07b06b442921831e5' 466 HostImageIDKey = attribute.Key("host.image.id") 467 // The version string of the VM image as defined in [Version 468 // Attributes](README.md#version-attributes). 469 // 470 // Type: string 471 // Required: No 472 // Stability: stable 473 // Examples: '0.1' 474 HostImageVersionKey = attribute.Key("host.image.version") 475 ) 476 477 var ( 478 // AMD64 479 HostArchAMD64 = HostArchKey.String("amd64") 480 // ARM32 481 HostArchARM32 = HostArchKey.String("arm32") 482 // ARM64 483 HostArchARM64 = HostArchKey.String("arm64") 484 // Itanium 485 HostArchIA64 = HostArchKey.String("ia64") 486 // 32-bit PowerPC 487 HostArchPPC32 = HostArchKey.String("ppc32") 488 // 64-bit PowerPC 489 HostArchPPC64 = HostArchKey.String("ppc64") 490 // IBM z/Architecture 491 HostArchS390x = HostArchKey.String("s390x") 492 // 32-bit x86 493 HostArchX86 = HostArchKey.String("x86") 494 ) 495 496 // A Kubernetes Cluster. 497 const ( 498 // The name of the cluster. 499 // 500 // Type: string 501 // Required: No 502 // Stability: stable 503 // Examples: 'opentelemetry-cluster' 504 K8SClusterNameKey = attribute.Key("k8s.cluster.name") 505 ) 506 507 // A Kubernetes Node object. 508 const ( 509 // The name of the Node. 510 // 511 // Type: string 512 // Required: No 513 // Stability: stable 514 // Examples: 'node-1' 515 K8SNodeNameKey = attribute.Key("k8s.node.name") 516 // The UID of the Node. 517 // 518 // Type: string 519 // Required: No 520 // Stability: stable 521 // Examples: '1eb3a0c6-0477-4080-a9cb-0cb7db65c6a2' 522 K8SNodeUIDKey = attribute.Key("k8s.node.uid") 523 ) 524 525 // A Kubernetes Namespace. 526 const ( 527 // The name of the namespace that the pod is running in. 528 // 529 // Type: string 530 // Required: No 531 // Stability: stable 532 // Examples: 'default' 533 K8SNamespaceNameKey = attribute.Key("k8s.namespace.name") 534 ) 535 536 // A Kubernetes Pod object. 537 const ( 538 // The UID of the Pod. 539 // 540 // Type: string 541 // Required: No 542 // Stability: stable 543 // Examples: '275ecb36-5aa8-4c2a-9c47-d8bb681b9aff' 544 K8SPodUIDKey = attribute.Key("k8s.pod.uid") 545 // The name of the Pod. 546 // 547 // Type: string 548 // Required: No 549 // Stability: stable 550 // Examples: 'opentelemetry-pod-autoconf' 551 K8SPodNameKey = attribute.Key("k8s.pod.name") 552 ) 553 554 // A container in a [PodTemplate](https://kubernetes.io/docs/concepts/workloads/pods/#pod-templates). 555 const ( 556 // The name of the Container from Pod specification, must be unique within a Pod. 557 // Container runtime usually uses different globally unique name 558 // (`container.name`). 559 // 560 // Type: string 561 // Required: No 562 // Stability: stable 563 // Examples: 'redis' 564 K8SContainerNameKey = attribute.Key("k8s.container.name") 565 // Number of times the container was restarted. This attribute can be used to 566 // identify a particular container (running or stopped) within a container spec. 567 // 568 // Type: int 569 // Required: No 570 // Stability: stable 571 // Examples: 0, 2 572 K8SContainerRestartCountKey = attribute.Key("k8s.container.restart_count") 573 ) 574 575 // A Kubernetes ReplicaSet object. 576 const ( 577 // The UID of the ReplicaSet. 578 // 579 // Type: string 580 // Required: No 581 // Stability: stable 582 // Examples: '275ecb36-5aa8-4c2a-9c47-d8bb681b9aff' 583 K8SReplicaSetUIDKey = attribute.Key("k8s.replicaset.uid") 584 // The name of the ReplicaSet. 585 // 586 // Type: string 587 // Required: No 588 // Stability: stable 589 // Examples: 'opentelemetry' 590 K8SReplicaSetNameKey = attribute.Key("k8s.replicaset.name") 591 ) 592 593 // A Kubernetes Deployment object. 594 const ( 595 // The UID of the Deployment. 596 // 597 // Type: string 598 // Required: No 599 // Stability: stable 600 // Examples: '275ecb36-5aa8-4c2a-9c47-d8bb681b9aff' 601 K8SDeploymentUIDKey = attribute.Key("k8s.deployment.uid") 602 // The name of the Deployment. 603 // 604 // Type: string 605 // Required: No 606 // Stability: stable 607 // Examples: 'opentelemetry' 608 K8SDeploymentNameKey = attribute.Key("k8s.deployment.name") 609 ) 610 611 // A Kubernetes StatefulSet object. 612 const ( 613 // The UID of the StatefulSet. 614 // 615 // Type: string 616 // Required: No 617 // Stability: stable 618 // Examples: '275ecb36-5aa8-4c2a-9c47-d8bb681b9aff' 619 K8SStatefulSetUIDKey = attribute.Key("k8s.statefulset.uid") 620 // The name of the StatefulSet. 621 // 622 // Type: string 623 // Required: No 624 // Stability: stable 625 // Examples: 'opentelemetry' 626 K8SStatefulSetNameKey = attribute.Key("k8s.statefulset.name") 627 ) 628 629 // A Kubernetes DaemonSet object. 630 const ( 631 // The UID of the DaemonSet. 632 // 633 // Type: string 634 // Required: No 635 // Stability: stable 636 // Examples: '275ecb36-5aa8-4c2a-9c47-d8bb681b9aff' 637 K8SDaemonSetUIDKey = attribute.Key("k8s.daemonset.uid") 638 // The name of the DaemonSet. 639 // 640 // Type: string 641 // Required: No 642 // Stability: stable 643 // Examples: 'opentelemetry' 644 K8SDaemonSetNameKey = attribute.Key("k8s.daemonset.name") 645 ) 646 647 // A Kubernetes Job object. 648 const ( 649 // The UID of the Job. 650 // 651 // Type: string 652 // Required: No 653 // Stability: stable 654 // Examples: '275ecb36-5aa8-4c2a-9c47-d8bb681b9aff' 655 K8SJobUIDKey = attribute.Key("k8s.job.uid") 656 // The name of the Job. 657 // 658 // Type: string 659 // Required: No 660 // Stability: stable 661 // Examples: 'opentelemetry' 662 K8SJobNameKey = attribute.Key("k8s.job.name") 663 ) 664 665 // A Kubernetes CronJob object. 666 const ( 667 // The UID of the CronJob. 668 // 669 // Type: string 670 // Required: No 671 // Stability: stable 672 // Examples: '275ecb36-5aa8-4c2a-9c47-d8bb681b9aff' 673 K8SCronJobUIDKey = attribute.Key("k8s.cronjob.uid") 674 // The name of the CronJob. 675 // 676 // Type: string 677 // Required: No 678 // Stability: stable 679 // Examples: 'opentelemetry' 680 K8SCronJobNameKey = attribute.Key("k8s.cronjob.name") 681 ) 682 683 // The operating system (OS) on which the process represented by this resource is running. 684 const ( 685 // The operating system type. 686 // 687 // Type: Enum 688 // Required: Always 689 // Stability: stable 690 OSTypeKey = attribute.Key("os.type") 691 // Human readable (not intended to be parsed) OS version information, like e.g. 692 // reported by `ver` or `lsb_release -a` commands. 693 // 694 // Type: string 695 // Required: No 696 // Stability: stable 697 // Examples: 'Microsoft Windows [Version 10.0.18363.778]', 'Ubuntu 18.04.1 LTS' 698 OSDescriptionKey = attribute.Key("os.description") 699 // Human readable operating system name. 700 // 701 // Type: string 702 // Required: No 703 // Stability: stable 704 // Examples: 'iOS', 'Android', 'Ubuntu' 705 OSNameKey = attribute.Key("os.name") 706 // The version string of the operating system as defined in [Version 707 // Attributes](../../resource/semantic_conventions/README.md#version-attributes). 708 // 709 // Type: string 710 // Required: No 711 // Stability: stable 712 // Examples: '14.2.1', '18.04.1' 713 OSVersionKey = attribute.Key("os.version") 714 ) 715 716 var ( 717 // Microsoft Windows 718 OSTypeWindows = OSTypeKey.String("windows") 719 // Linux 720 OSTypeLinux = OSTypeKey.String("linux") 721 // Apple Darwin 722 OSTypeDarwin = OSTypeKey.String("darwin") 723 // FreeBSD 724 OSTypeFreeBSD = OSTypeKey.String("freebsd") 725 // NetBSD 726 OSTypeNetBSD = OSTypeKey.String("netbsd") 727 // OpenBSD 728 OSTypeOpenBSD = OSTypeKey.String("openbsd") 729 // DragonFly BSD 730 OSTypeDragonflyBSD = OSTypeKey.String("dragonflybsd") 731 // HP-UX (Hewlett Packard Unix) 732 OSTypeHPUX = OSTypeKey.String("hpux") 733 // AIX (Advanced Interactive eXecutive) 734 OSTypeAIX = OSTypeKey.String("aix") 735 // Oracle Solaris 736 OSTypeSolaris = OSTypeKey.String("solaris") 737 // IBM z/OS 738 OSTypeZOS = OSTypeKey.String("z_os") 739 ) 740 741 // An operating system process. 742 const ( 743 // Process identifier (PID). 744 // 745 // Type: int 746 // Required: No 747 // Stability: stable 748 // Examples: 1234 749 ProcessPIDKey = attribute.Key("process.pid") 750 // The name of the process executable. On Linux based systems, can be set to the 751 // `Name` in `proc/[pid]/status`. On Windows, can be set to the base name of 752 // `GetProcessImageFileNameW`. 753 // 754 // Type: string 755 // Required: See below 756 // Stability: stable 757 // Examples: 'otelcol' 758 ProcessExecutableNameKey = attribute.Key("process.executable.name") 759 // The full path to the process executable. On Linux based systems, can be set to 760 // the target of `proc/[pid]/exe`. On Windows, can be set to the result of 761 // `GetProcessImageFileNameW`. 762 // 763 // Type: string 764 // Required: See below 765 // Stability: stable 766 // Examples: '/usr/bin/cmd/otelcol' 767 ProcessExecutablePathKey = attribute.Key("process.executable.path") 768 // The command used to launch the process (i.e. the command name). On Linux based 769 // systems, can be set to the zeroth string in `proc/[pid]/cmdline`. On Windows, 770 // can be set to the first parameter extracted from `GetCommandLineW`. 771 // 772 // Type: string 773 // Required: See below 774 // Stability: stable 775 // Examples: 'cmd/otelcol' 776 ProcessCommandKey = attribute.Key("process.command") 777 // The full command used to launch the process as a single string representing the 778 // full command. On Windows, can be set to the result of `GetCommandLineW`. Do not 779 // set this if you have to assemble it just for monitoring; use 780 // `process.command_args` instead. 781 // 782 // Type: string 783 // Required: See below 784 // Stability: stable 785 // Examples: 'C:\\cmd\\otecol --config="my directory\\config.yaml"' 786 ProcessCommandLineKey = attribute.Key("process.command_line") 787 // All the command arguments (including the command/executable itself) as received 788 // by the process. On Linux-based systems (and some other Unixoid systems 789 // supporting procfs), can be set according to the list of null-delimited strings 790 // extracted from `proc/[pid]/cmdline`. For libc-based executables, this would be 791 // the full argv vector passed to `main`. 792 // 793 // Type: string[] 794 // Required: See below 795 // Stability: stable 796 // Examples: 'cmd/otecol', '--config=config.yaml' 797 ProcessCommandArgsKey = attribute.Key("process.command_args") 798 // The username of the user that owns the process. 799 // 800 // Type: string 801 // Required: No 802 // Stability: stable 803 // Examples: 'root' 804 ProcessOwnerKey = attribute.Key("process.owner") 805 ) 806 807 // The single (language) runtime instance which is monitored. 808 const ( 809 // The name of the runtime of this process. For compiled native binaries, this 810 // SHOULD be the name of the compiler. 811 // 812 // Type: string 813 // Required: No 814 // Stability: stable 815 // Examples: 'OpenJDK Runtime Environment' 816 ProcessRuntimeNameKey = attribute.Key("process.runtime.name") 817 // The version of the runtime of this process, as returned by the runtime without 818 // modification. 819 // 820 // Type: string 821 // Required: No 822 // Stability: stable 823 // Examples: '14.0.2' 824 ProcessRuntimeVersionKey = attribute.Key("process.runtime.version") 825 // An additional description about the runtime of the process, for example a 826 // specific vendor customization of the runtime environment. 827 // 828 // Type: string 829 // Required: No 830 // Stability: stable 831 // Examples: 'Eclipse OpenJ9 Eclipse OpenJ9 VM openj9-0.21.0' 832 ProcessRuntimeDescriptionKey = attribute.Key("process.runtime.description") 833 ) 834 835 // A service instance. 836 const ( 837 // Logical name of the service. 838 // 839 // Type: string 840 // Required: Always 841 // Stability: stable 842 // Examples: 'shoppingcart' 843 // Note: MUST be the same for all instances of horizontally scaled services. If 844 // the value was not specified, SDKs MUST fallback to `unknown_service:` 845 // concatenated with [`process.executable.name`](process.md#process), e.g. 846 // `unknown_service:bash`. If `process.executable.name` is not available, the 847 // value MUST be set to `unknown_service`. 848 ServiceNameKey = attribute.Key("service.name") 849 // A namespace for `service.name`. 850 // 851 // Type: string 852 // Required: No 853 // Stability: stable 854 // Examples: 'Shop' 855 // Note: A string value having a meaning that helps to distinguish a group of 856 // services, for example the team name that owns a group of services. 857 // `service.name` is expected to be unique within the same namespace. If 858 // `service.namespace` is not specified in the Resource then `service.name` is 859 // expected to be unique for all services that have no explicit namespace defined 860 // (so the empty/unspecified namespace is simply one more valid namespace). Zero- 861 // length namespace string is assumed equal to unspecified namespace. 862 ServiceNamespaceKey = attribute.Key("service.namespace") 863 // The string ID of the service instance. 864 // 865 // Type: string 866 // Required: No 867 // Stability: stable 868 // Examples: '627cc493-f310-47de-96bd-71410b7dec09' 869 // Note: MUST be unique for each instance of the same 870 // `service.namespace,service.name` pair (in other words 871 // `service.namespace,service.name,service.instance.id` triplet MUST be globally 872 // unique). The ID helps to distinguish instances of the same service that exist 873 // at the same time (e.g. instances of a horizontally scaled service). It is 874 // preferable for the ID to be persistent and stay the same for the lifetime of 875 // the service instance, however it is acceptable that the ID is ephemeral and 876 // changes during important lifetime events for the service (e.g. service 877 // restarts). If the service has no inherent unique ID that can be used as the 878 // value of this attribute it is recommended to generate a random Version 1 or 879 // Version 4 RFC 4122 UUID (services aiming for reproducible UUIDs may also use 880 // Version 5, see RFC 4122 for more recommendations). 881 ServiceInstanceIDKey = attribute.Key("service.instance.id") 882 // The version string of the service API or implementation. 883 // 884 // Type: string 885 // Required: No 886 // Stability: stable 887 // Examples: '2.0.0' 888 ServiceVersionKey = attribute.Key("service.version") 889 ) 890 891 // The telemetry SDK used to capture data recorded by the instrumentation libraries. 892 const ( 893 // The name of the telemetry SDK as defined above. 894 // 895 // Type: string 896 // Required: No 897 // Stability: stable 898 // Examples: 'opentelemetry' 899 TelemetrySDKNameKey = attribute.Key("telemetry.sdk.name") 900 // The language of the telemetry SDK. 901 // 902 // Type: Enum 903 // Required: No 904 // Stability: stable 905 TelemetrySDKLanguageKey = attribute.Key("telemetry.sdk.language") 906 // The version string of the telemetry SDK. 907 // 908 // Type: string 909 // Required: No 910 // Stability: stable 911 // Examples: '1.2.3' 912 TelemetrySDKVersionKey = attribute.Key("telemetry.sdk.version") 913 // The version string of the auto instrumentation agent, if used. 914 // 915 // Type: string 916 // Required: No 917 // Stability: stable 918 // Examples: '1.2.3' 919 TelemetryAutoVersionKey = attribute.Key("telemetry.auto.version") 920 ) 921 922 var ( 923 // cpp 924 TelemetrySDKLanguageCPP = TelemetrySDKLanguageKey.String("cpp") 925 // dotnet 926 TelemetrySDKLanguageDotnet = TelemetrySDKLanguageKey.String("dotnet") 927 // erlang 928 TelemetrySDKLanguageErlang = TelemetrySDKLanguageKey.String("erlang") 929 // go 930 TelemetrySDKLanguageGo = TelemetrySDKLanguageKey.String("go") 931 // java 932 TelemetrySDKLanguageJava = TelemetrySDKLanguageKey.String("java") 933 // nodejs 934 TelemetrySDKLanguageNodejs = TelemetrySDKLanguageKey.String("nodejs") 935 // php 936 TelemetrySDKLanguagePHP = TelemetrySDKLanguageKey.String("php") 937 // python 938 TelemetrySDKLanguagePython = TelemetrySDKLanguageKey.String("python") 939 // ruby 940 TelemetrySDKLanguageRuby = TelemetrySDKLanguageKey.String("ruby") 941 // webjs 942 TelemetrySDKLanguageWebjs = TelemetrySDKLanguageKey.String("webjs") 943 // swift 944 TelemetrySDKLanguageSwift = TelemetrySDKLanguageKey.String("swift") 945 ) 946 947 // Resource describing the packaged software running the application code. Web engines are typically executed using process.runtime. 948 const ( 949 // The name of the web engine. 950 // 951 // Type: string 952 // Required: Always 953 // Stability: stable 954 // Examples: 'WildFly' 955 WebEngineNameKey = attribute.Key("webengine.name") 956 // The version of the web engine. 957 // 958 // Type: string 959 // Required: No 960 // Stability: stable 961 // Examples: '21.0.0' 962 WebEngineVersionKey = attribute.Key("webengine.version") 963 // Additional description of the web engine (e.g. detailed version and edition 964 // information). 965 // 966 // Type: string 967 // Required: No 968 // Stability: stable 969 // Examples: 'WildFly Full 21.0.0.Final (WildFly Core 13.0.1.Final) - 2.2.2.Final' 970 WebEngineDescriptionKey = attribute.Key("webengine.description") 971 ) 972