Source File
attribute_group.go
Belonging Package
go.opentelemetry.io/otel/semconv/v1.37.0
// Copyright The OpenTelemetry Authors// SPDX-License-Identifier: Apache-2.0// Code generated from semantic convention specification. DO NOT EDIT.package semconv // import "go.opentelemetry.io/otel/semconv/v1.37.0"import// Namespace: androidconst (// AndroidAppStateKey is the attribute Key conforming to the "android.app.state"// semantic conventions. It represents the this attribute represents the state// of the application.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "created"// Note: The Android lifecycle states are defined in// [Activity lifecycle callbacks], and from which the `OS identifiers` are// derived.//// [Activity lifecycle callbacks]: https://developer.android.com/guide/components/activities/activity-lifecycle#lcAndroidAppStateKey = attribute.Key("android.app.state")// AndroidOSAPILevelKey is the attribute Key conforming to the// "android.os.api_level" semantic conventions. It represents the uniquely// identifies the framework API revision offered by a version (`os.version`) of// the android operating system. More information can be found in the// [Android API levels documentation].//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "33", "32"//// [Android API levels documentation]: https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevelsAndroidOSAPILevelKey = attribute.Key("android.os.api_level"))// AndroidOSAPILevel returns an attribute KeyValue conforming to the// "android.os.api_level" semantic conventions. It represents the uniquely// identifies the framework API revision offered by a version (`os.version`) of// the android operating system. More information can be found in the// [Android API levels documentation].//// [Android API levels documentation]: https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevelsfunc ( string) attribute.KeyValue {return AndroidOSAPILevelKey.String()}// Enum values for android.app.statevar (// Any time before Activity.onResume() or, if the app has no Activity,// Context.startService() has been called in the app for the first time.//// Stability: developmentAndroidAppStateCreated = AndroidAppStateKey.String("created")// 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.//// Stability: developmentAndroidAppStateBackground = AndroidAppStateKey.String("background")// 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.//// Stability: developmentAndroidAppStateForeground = AndroidAppStateKey.String("foreground"))// Namespace: appconst (// AppBuildIDKey is the attribute Key conforming to the "app.build_id" semantic// conventions. It represents the unique identifier for a particular build or// compilation of the application.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "6cff0a7e-cefc-4668-96f5-1273d8b334d0",// "9f2b833506aa6973a92fde9733e6271f", "my-app-1.0.0-code-123"AppBuildIDKey = attribute.Key("app.build_id")// AppInstallationIDKey is the attribute Key conforming to the// "app.installation.id" semantic conventions. It represents a unique identifier// representing the installation of an application on a specific device.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "2ab2916d-a51f-4ac8-80ee-45ac31a28092"// Note: Its value SHOULD persist across launches of the same application// installation, including through application upgrades.// It SHOULD change if the application is uninstalled or if all applications of// the vendor are uninstalled.// Additionally, users might be able to reset this value (e.g. by clearing// application data).// If an app is installed multiple times on the same device (e.g. in different// accounts on Android), each `app.installation.id` SHOULD have a different// value.// If multiple OpenTelemetry SDKs are used within the same application, they// SHOULD use the same value for `app.installation.id`.// Hardware IDs (e.g. serial number, IMEI, MAC address) MUST NOT be used as the// `app.installation.id`.//// For iOS, this value SHOULD be equal to the [vendor identifier].//// For Android, examples of `app.installation.id` implementations include://// - [Firebase Installation ID].// - A globally unique UUID which is persisted across sessions in your// application.// - [App set ID].// - [`Settings.getString(Settings.Secure.ANDROID_ID)`].//// More information about Android identifier best practices can be found in the// [Android user data IDs guide].//// [vendor identifier]: https://developer.apple.com/documentation/uikit/uidevice/identifierforvendor// [Firebase Installation ID]: https://firebase.google.com/docs/projects/manage-installations// [App set ID]: https://developer.android.com/identity/app-set-id// [`Settings.getString(Settings.Secure.ANDROID_ID)`]: https://developer.android.com/reference/android/provider/Settings.Secure#ANDROID_ID// [Android user data IDs guide]: https://developer.android.com/training/articles/user-data-idsAppInstallationIDKey = attribute.Key("app.installation.id")// AppJankFrameCountKey is the attribute Key conforming to the// "app.jank.frame_count" semantic conventions. It represents a number of frame// renders that experienced jank.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 9, 42// Note: Depending on platform limitations, the value provided MAY be// approximation.AppJankFrameCountKey = attribute.Key("app.jank.frame_count")// AppJankPeriodKey is the attribute Key conforming to the "app.jank.period"// semantic conventions. It represents the time period, in seconds, for which// this jank is being reported.//// Type: double// RequirementLevel: Recommended// Stability: Development//// Examples: 1.0, 5.0, 10.24AppJankPeriodKey = attribute.Key("app.jank.period")// AppJankThresholdKey is the attribute Key conforming to the// "app.jank.threshold" semantic conventions. It represents the minimum// rendering threshold for this jank, in seconds.//// Type: double// RequirementLevel: Recommended// Stability: Development//// Examples: 0.016, 0.7, 1.024AppJankThresholdKey = attribute.Key("app.jank.threshold")// AppScreenCoordinateXKey is the attribute Key conforming to the// "app.screen.coordinate.x" semantic conventions. It represents the x// (horizontal) coordinate of a screen coordinate, in screen pixels.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 0, 131AppScreenCoordinateXKey = attribute.Key("app.screen.coordinate.x")// AppScreenCoordinateYKey is the attribute Key conforming to the// "app.screen.coordinate.y" semantic conventions. It represents the y// (vertical) component of a screen coordinate, in screen pixels.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 12, 99AppScreenCoordinateYKey = attribute.Key("app.screen.coordinate.y")// AppWidgetIDKey is the attribute Key conforming to the "app.widget.id"// semantic conventions. It represents an identifier that uniquely// differentiates this widget from other widgets in the same application.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "f9bc787d-ff05-48ad-90e1-fca1d46130b3", "submit_order_1829"// Note: A widget is an application component, typically an on-screen visual GUI// element.AppWidgetIDKey = attribute.Key("app.widget.id")// AppWidgetNameKey is the attribute Key conforming to the "app.widget.name"// semantic conventions. It represents the name of an application widget.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "submit", "attack", "Clear Cart"// Note: A widget is an application component, typically an on-screen visual GUI// element.AppWidgetNameKey = attribute.Key("app.widget.name"))// AppBuildID returns an attribute KeyValue conforming to the "app.build_id"// semantic conventions. It represents the unique identifier for a particular// build or compilation of the application.func ( string) attribute.KeyValue {return AppBuildIDKey.String()}// AppInstallationID returns an attribute KeyValue conforming to the// "app.installation.id" semantic conventions. It represents a unique identifier// representing the installation of an application on a specific device.func ( string) attribute.KeyValue {return AppInstallationIDKey.String()}// AppJankFrameCount returns an attribute KeyValue conforming to the// "app.jank.frame_count" semantic conventions. It represents a number of frame// renders that experienced jank.func ( int) attribute.KeyValue {return AppJankFrameCountKey.Int()}// AppJankPeriod returns an attribute KeyValue conforming to the// "app.jank.period" semantic conventions. It represents the time period, in// seconds, for which this jank is being reported.func ( float64) attribute.KeyValue {return AppJankPeriodKey.Float64()}// AppJankThreshold returns an attribute KeyValue conforming to the// "app.jank.threshold" semantic conventions. It represents the minimum rendering// threshold for this jank, in seconds.func ( float64) attribute.KeyValue {return AppJankThresholdKey.Float64()}// AppScreenCoordinateX returns an attribute KeyValue conforming to the// "app.screen.coordinate.x" semantic conventions. It represents the x// (horizontal) coordinate of a screen coordinate, in screen pixels.func ( int) attribute.KeyValue {return AppScreenCoordinateXKey.Int()}// AppScreenCoordinateY returns an attribute KeyValue conforming to the// "app.screen.coordinate.y" semantic conventions. It represents the y (vertical)// component of a screen coordinate, in screen pixels.func ( int) attribute.KeyValue {return AppScreenCoordinateYKey.Int()}// AppWidgetID returns an attribute KeyValue conforming to the "app.widget.id"// semantic conventions. It represents an identifier that uniquely differentiates// this widget from other widgets in the same application.func ( string) attribute.KeyValue {return AppWidgetIDKey.String()}// AppWidgetName returns an attribute KeyValue conforming to the// "app.widget.name" semantic conventions. It represents the name of an// application widget.func ( string) attribute.KeyValue {return AppWidgetNameKey.String()}// Namespace: artifactconst (// ArtifactAttestationFilenameKey is the attribute Key conforming to the// "artifact.attestation.filename" semantic conventions. It represents 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.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "golang-binary-amd64-v0.1.0.attestation",// "docker-image-amd64-v0.1.0.intoto.json1", "release-1.tar.gz.attestation",// "file-name-package.tar.gz.intoto.json1"//// [SLSA Relationship]: https://slsa.dev/spec/v1.0/distributing-provenance#relationship-between-artifacts-and-attestationsArtifactAttestationFilenameKey = attribute.Key("artifact.attestation.filename")// ArtifactAttestationHashKey is the attribute Key conforming to the// "artifact.attestation.hash" semantic conventions. It represents the full// [hash value (see glossary)], of the built attestation. Some envelopes in the// [software attestation space] also refer to this as the **digest**.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "1b31dfcd5b7f9267bf2ff47651df1cfb9147b9e4df1f335accf65b4cda498408"//// [hash value (see glossary)]: https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf// [software attestation space]: https://github.com/in-toto/attestation/tree/main/specArtifactAttestationHashKey = attribute.Key("artifact.attestation.hash")// ArtifactAttestationIDKey is the attribute Key conforming to the// "artifact.attestation.id" semantic conventions. It represents the id of the// build [software attestation].//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "123"//// [software attestation]: https://slsa.dev/attestation-modelArtifactAttestationIDKey = attribute.Key("artifact.attestation.id")// ArtifactFilenameKey is the attribute Key conforming to the// "artifact.filename" semantic conventions. It represents 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.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "golang-binary-amd64-v0.1.0", "docker-image-amd64-v0.1.0",// "release-1.tar.gz", "file-name-package.tar.gz"// Note: 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.//// [Package Name]: https://slsa.dev/spec/v1.0/terminology#package-model// [can be published]: https://slsa.dev/spec/v1.0/terminology#software-supply-chainArtifactFilenameKey = attribute.Key("artifact.filename")// ArtifactHashKey is the attribute Key conforming to the "artifact.hash"// semantic conventions. It represents the full [hash value (see glossary)],// often found in checksum.txt on a release of the artifact and used to verify// package integrity.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "9ff4c52759e2c4ac70b7d517bc7fcdc1cda631ca0045271ddd1b192544f8a3e9"// Note: 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.//// [hash value (see glossary)]: https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdfArtifactHashKey = attribute.Key("artifact.hash")// ArtifactPurlKey is the attribute Key conforming to the "artifact.purl"// semantic conventions. It represents the [Package URL] of the// [package artifact] provides a standard way to identify and locate the// packaged artifact.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "pkg:github/package-url/purl-spec@1209109710924",// "pkg:npm/foo@12.12.3"//// [Package URL]: https://github.com/package-url/purl-spec// [package artifact]: https://slsa.dev/spec/v1.0/terminology#package-modelArtifactPurlKey = attribute.Key("artifact.purl")// ArtifactVersionKey is the attribute Key conforming to the "artifact.version"// semantic conventions. It represents the version of the artifact.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "v0.1.0", "1.2.1", "122691-build"ArtifactVersionKey = attribute.Key("artifact.version"))// ArtifactAttestationFilename returns an attribute KeyValue conforming to the// "artifact.attestation.filename" semantic conventions. It represents 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.//// [SLSA Relationship]: https://slsa.dev/spec/v1.0/distributing-provenance#relationship-between-artifacts-and-attestationsfunc ( string) attribute.KeyValue {return ArtifactAttestationFilenameKey.String()}// ArtifactAttestationHash returns an attribute KeyValue conforming to the// "artifact.attestation.hash" semantic conventions. It represents the full// [hash value (see glossary)], of the built attestation. Some envelopes in the// [software attestation space] also refer to this as the **digest**.//// [hash value (see glossary)]: https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf// [software attestation space]: https://github.com/in-toto/attestation/tree/main/specfunc ( string) attribute.KeyValue {return ArtifactAttestationHashKey.String()}// ArtifactAttestationID returns an attribute KeyValue conforming to the// "artifact.attestation.id" semantic conventions. It represents the id of the// build [software attestation].//// [software attestation]: https://slsa.dev/attestation-modelfunc ( string) attribute.KeyValue {return ArtifactAttestationIDKey.String()}// ArtifactFilename returns an attribute KeyValue conforming to the// "artifact.filename" semantic conventions. It represents 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.func ( string) attribute.KeyValue {return ArtifactFilenameKey.String()}// ArtifactHash returns an attribute KeyValue conforming to the "artifact.hash"// semantic conventions. It represents the full [hash value (see glossary)],// often found in checksum.txt on a release of the artifact and used to verify// package integrity.//// [hash value (see glossary)]: https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdffunc ( string) attribute.KeyValue {return ArtifactHashKey.String()}// ArtifactPurl returns an attribute KeyValue conforming to the "artifact.purl"// semantic conventions. It represents the [Package URL] of the// [package artifact] provides a standard way to identify and locate the packaged// artifact.//// [Package URL]: https://github.com/package-url/purl-spec// [package artifact]: https://slsa.dev/spec/v1.0/terminology#package-modelfunc ( string) attribute.KeyValue {return ArtifactPurlKey.String()}// ArtifactVersion returns an attribute KeyValue conforming to the// "artifact.version" semantic conventions. It represents the version of the// artifact.func ( string) attribute.KeyValue {return ArtifactVersionKey.String()}// Namespace: awsconst (// AWSBedrockGuardrailIDKey is the attribute Key conforming to the// "aws.bedrock.guardrail.id" semantic conventions. It represents the unique// identifier of the AWS Bedrock Guardrail. A [guardrail] helps safeguard and// prevent unwanted behavior from model responses or user messages.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "sgi5gkybzqak"//// [guardrail]: https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.htmlAWSBedrockGuardrailIDKey = attribute.Key("aws.bedrock.guardrail.id")// AWSBedrockKnowledgeBaseIDKey is the attribute Key conforming to the// "aws.bedrock.knowledge_base.id" semantic conventions. It represents the// unique identifier of the AWS Bedrock Knowledge base. A [knowledge base] is a// bank of information that can be queried by models to generate more relevant// responses and augment prompts.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "XFWUPB9PAW"//// [knowledge base]: https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base.htmlAWSBedrockKnowledgeBaseIDKey = attribute.Key("aws.bedrock.knowledge_base.id")// AWSDynamoDBAttributeDefinitionsKey is the attribute Key conforming to the// "aws.dynamodb.attribute_definitions" semantic conventions. It represents the// JSON-serialized value of each item in the `AttributeDefinitions` request// field.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "{ "AttributeName": "string", "AttributeType": "string" }"AWSDynamoDBAttributeDefinitionsKey = attribute.Key("aws.dynamodb.attribute_definitions")// AWSDynamoDBAttributesToGetKey is the attribute Key conforming to the// "aws.dynamodb.attributes_to_get" semantic conventions. It represents the// value of the `AttributesToGet` request parameter.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "lives", "id"AWSDynamoDBAttributesToGetKey = attribute.Key("aws.dynamodb.attributes_to_get")// AWSDynamoDBConsistentReadKey is the attribute Key conforming to the// "aws.dynamodb.consistent_read" semantic conventions. It represents the value// of the `ConsistentRead` request parameter.//// Type: boolean// RequirementLevel: Recommended// Stability: Development//// Examples:AWSDynamoDBConsistentReadKey = attribute.Key("aws.dynamodb.consistent_read")// AWSDynamoDBConsumedCapacityKey is the attribute Key conforming to the// "aws.dynamodb.consumed_capacity" semantic conventions. It represents the// JSON-serialized value of each item in the `ConsumedCapacity` response field.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "{ "CapacityUnits": number, "GlobalSecondaryIndexes": { "string" :// { "CapacityUnits": number, "ReadCapacityUnits": number, "WriteCapacityUnits":// number } }, "LocalSecondaryIndexes": { "string" : { "CapacityUnits": number,// "ReadCapacityUnits": number, "WriteCapacityUnits": number } },// "ReadCapacityUnits": number, "Table": { "CapacityUnits": number,// "ReadCapacityUnits": number, "WriteCapacityUnits": number }, "TableName":// "string", "WriteCapacityUnits": number }"AWSDynamoDBConsumedCapacityKey = attribute.Key("aws.dynamodb.consumed_capacity")// AWSDynamoDBCountKey is the attribute Key conforming to the// "aws.dynamodb.count" semantic conventions. It represents the value of the// `Count` response parameter.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 10AWSDynamoDBCountKey = attribute.Key("aws.dynamodb.count")// AWSDynamoDBExclusiveStartTableKey is the attribute Key conforming to the// "aws.dynamodb.exclusive_start_table" semantic conventions. It represents the// value of the `ExclusiveStartTableName` request parameter.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Users", "CatsTable"AWSDynamoDBExclusiveStartTableKey = attribute.Key("aws.dynamodb.exclusive_start_table")// AWSDynamoDBGlobalSecondaryIndexUpdatesKey is the attribute Key conforming to// the "aws.dynamodb.global_secondary_index_updates" semantic conventions. It// represents the JSON-serialized value of each item in the// `GlobalSecondaryIndexUpdates` request field.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "{ "Create": { "IndexName": "string", "KeySchema": [ {// "AttributeName": "string", "KeyType": "string" } ], "Projection": {// "NonKeyAttributes": [ "string" ], "ProjectionType": "string" },// "ProvisionedThroughput": { "ReadCapacityUnits": number, "WriteCapacityUnits":// number } }"AWSDynamoDBGlobalSecondaryIndexUpdatesKey = attribute.Key("aws.dynamodb.global_secondary_index_updates")// AWSDynamoDBGlobalSecondaryIndexesKey is the attribute Key conforming to the// "aws.dynamodb.global_secondary_indexes" semantic conventions. It represents// the JSON-serialized value of each item of the `GlobalSecondaryIndexes`// request field.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "{ "IndexName": "string", "KeySchema": [ { "AttributeName":// "string", "KeyType": "string" } ], "Projection": { "NonKeyAttributes": [// "string" ], "ProjectionType": "string" }, "ProvisionedThroughput": {// "ReadCapacityUnits": number, "WriteCapacityUnits": number } }"AWSDynamoDBGlobalSecondaryIndexesKey = attribute.Key("aws.dynamodb.global_secondary_indexes")// AWSDynamoDBIndexNameKey is the attribute Key conforming to the// "aws.dynamodb.index_name" semantic conventions. It represents the value of// the `IndexName` request parameter.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "name_to_group"AWSDynamoDBIndexNameKey = attribute.Key("aws.dynamodb.index_name")// AWSDynamoDBItemCollectionMetricsKey is the attribute Key conforming to the// "aws.dynamodb.item_collection_metrics" semantic conventions. It represents// the JSON-serialized value of the `ItemCollectionMetrics` response field.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "{ "string" : [ { "ItemCollectionKey": { "string" : { "B": blob,// "BOOL": boolean, "BS": [ blob ], "L": [ "AttributeValue" ], "M": { "string" :// "AttributeValue" }, "N": "string", "NS": [ "string" ], "NULL": boolean, "S":// "string", "SS": [ "string" ] } }, "SizeEstimateRangeGB": [ number ] } ] }"AWSDynamoDBItemCollectionMetricsKey = attribute.Key("aws.dynamodb.item_collection_metrics")// AWSDynamoDBLimitKey is the attribute Key conforming to the// "aws.dynamodb.limit" semantic conventions. It represents the value of the// `Limit` request parameter.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 10AWSDynamoDBLimitKey = attribute.Key("aws.dynamodb.limit")// AWSDynamoDBLocalSecondaryIndexesKey is the attribute Key conforming to the// "aws.dynamodb.local_secondary_indexes" semantic conventions. It represents// the JSON-serialized value of each item of the `LocalSecondaryIndexes` request// field.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "{ "IndexArn": "string", "IndexName": "string", "IndexSizeBytes":// number, "ItemCount": number, "KeySchema": [ { "AttributeName": "string",// "KeyType": "string" } ], "Projection": { "NonKeyAttributes": [ "string" ],// "ProjectionType": "string" } }"AWSDynamoDBLocalSecondaryIndexesKey = attribute.Key("aws.dynamodb.local_secondary_indexes")// AWSDynamoDBProjectionKey is the attribute Key conforming to the// "aws.dynamodb.projection" semantic conventions. It represents the value of// the `ProjectionExpression` request parameter.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Title", "Title, Price, Color", "Title, Description, RelatedItems,// ProductReviews"AWSDynamoDBProjectionKey = attribute.Key("aws.dynamodb.projection")// AWSDynamoDBProvisionedReadCapacityKey is the attribute Key conforming to the// "aws.dynamodb.provisioned_read_capacity" semantic conventions. It represents// the value of the `ProvisionedThroughput.ReadCapacityUnits` request parameter.//// Type: double// RequirementLevel: Recommended// Stability: Development//// Examples: 1.0, 2.0AWSDynamoDBProvisionedReadCapacityKey = attribute.Key("aws.dynamodb.provisioned_read_capacity")// AWSDynamoDBProvisionedWriteCapacityKey is the attribute Key conforming to the// "aws.dynamodb.provisioned_write_capacity" semantic conventions. It represents// the value of the `ProvisionedThroughput.WriteCapacityUnits` request// parameter.//// Type: double// RequirementLevel: Recommended// Stability: Development//// Examples: 1.0, 2.0AWSDynamoDBProvisionedWriteCapacityKey = attribute.Key("aws.dynamodb.provisioned_write_capacity")// AWSDynamoDBScanForwardKey is the attribute Key conforming to the// "aws.dynamodb.scan_forward" semantic conventions. It represents the value of// the `ScanIndexForward` request parameter.//// Type: boolean// RequirementLevel: Recommended// Stability: Development//// Examples:AWSDynamoDBScanForwardKey = attribute.Key("aws.dynamodb.scan_forward")// AWSDynamoDBScannedCountKey is the attribute Key conforming to the// "aws.dynamodb.scanned_count" semantic conventions. It represents the value of// the `ScannedCount` response parameter.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 50AWSDynamoDBScannedCountKey = attribute.Key("aws.dynamodb.scanned_count")// AWSDynamoDBSegmentKey is the attribute Key conforming to the// "aws.dynamodb.segment" semantic conventions. It represents the value of the// `Segment` request parameter.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 10AWSDynamoDBSegmentKey = attribute.Key("aws.dynamodb.segment")// AWSDynamoDBSelectKey is the attribute Key conforming to the// "aws.dynamodb.select" semantic conventions. It represents the value of the// `Select` request parameter.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "ALL_ATTRIBUTES", "COUNT"AWSDynamoDBSelectKey = attribute.Key("aws.dynamodb.select")// AWSDynamoDBTableCountKey is the attribute Key conforming to the// "aws.dynamodb.table_count" semantic conventions. It represents the number of// items in the `TableNames` response parameter.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 20AWSDynamoDBTableCountKey = attribute.Key("aws.dynamodb.table_count")// AWSDynamoDBTableNamesKey is the attribute Key conforming to the// "aws.dynamodb.table_names" semantic conventions. It represents the keys in// the `RequestItems` object field.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "Users", "Cats"AWSDynamoDBTableNamesKey = attribute.Key("aws.dynamodb.table_names")// AWSDynamoDBTotalSegmentsKey is the attribute Key conforming to the// "aws.dynamodb.total_segments" semantic conventions. It represents the value// of the `TotalSegments` request parameter.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 100AWSDynamoDBTotalSegmentsKey = attribute.Key("aws.dynamodb.total_segments")// AWSECSClusterARNKey is the attribute Key conforming to the// "aws.ecs.cluster.arn" semantic conventions. It represents the ARN of an// [ECS cluster].//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "arn:aws:ecs:us-west-2:123456789123:cluster/my-cluster"//// [ECS cluster]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/clusters.htmlAWSECSClusterARNKey = attribute.Key("aws.ecs.cluster.arn")// AWSECSContainerARNKey is the attribute Key conforming to the// "aws.ecs.container.arn" semantic conventions. It represents the Amazon// Resource Name (ARN) of an [ECS container instance].//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples:// "arn:aws:ecs:us-west-1:123456789123:container/32624152-9086-4f0e-acae-1a75b14fe4d9"//// [ECS container instance]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_instances.htmlAWSECSContainerARNKey = attribute.Key("aws.ecs.container.arn")// AWSECSLaunchtypeKey is the attribute Key conforming to the// "aws.ecs.launchtype" semantic conventions. It represents the [launch type]// for an ECS task.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples://// [launch type]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.htmlAWSECSLaunchtypeKey = attribute.Key("aws.ecs.launchtype")// AWSECSTaskARNKey is the attribute Key conforming to the "aws.ecs.task.arn"// semantic conventions. It represents the ARN of a running [ECS task].//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples:// "arn:aws:ecs:us-west-1:123456789123:task/10838bed-421f-43ef-870a-f43feacbbb5b",// "arn:aws:ecs:us-west-1:123456789123:task/my-cluster/task-id/23ebb8ac-c18f-46c6-8bbe-d55d0e37cfbd"//// [ECS task]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#ecs-resource-idsAWSECSTaskARNKey = attribute.Key("aws.ecs.task.arn")// AWSECSTaskFamilyKey is the attribute Key conforming to the// "aws.ecs.task.family" semantic conventions. It represents the family name of// the [ECS task definition] used to create the ECS task.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "opentelemetry-family"//// [ECS task definition]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definitions.htmlAWSECSTaskFamilyKey = attribute.Key("aws.ecs.task.family")// AWSECSTaskIDKey is the attribute Key conforming to the "aws.ecs.task.id"// semantic conventions. It represents the ID of a running ECS task. The ID MUST// be extracted from `task.arn`.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "10838bed-421f-43ef-870a-f43feacbbb5b",// "23ebb8ac-c18f-46c6-8bbe-d55d0e37cfbd"AWSECSTaskIDKey = attribute.Key("aws.ecs.task.id")// AWSECSTaskRevisionKey is the attribute Key conforming to the// "aws.ecs.task.revision" semantic conventions. It represents the revision for// the task definition used to create the ECS task.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "8", "26"AWSECSTaskRevisionKey = attribute.Key("aws.ecs.task.revision")// AWSEKSClusterARNKey is the attribute Key conforming to the// "aws.eks.cluster.arn" semantic conventions. It represents the ARN of an EKS// cluster.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "arn:aws:ecs:us-west-2:123456789123:cluster/my-cluster"AWSEKSClusterARNKey = attribute.Key("aws.eks.cluster.arn")// AWSExtendedRequestIDKey is the attribute Key conforming to the// "aws.extended_request_id" semantic conventions. It represents the AWS// extended request ID as returned in the response header `x-amz-id-2`.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples:// "wzHcyEWfmOGDIE5QOhTAqFDoDWP3y8IUvpNINCwL9N4TEHbUw0/gZJ+VZTmCNCWR7fezEN3eCiQ="AWSExtendedRequestIDKey = attribute.Key("aws.extended_request_id")// AWSKinesisStreamNameKey is the attribute Key conforming to the// "aws.kinesis.stream_name" semantic conventions. It represents the name of the// AWS Kinesis [stream] the request refers to. Corresponds to the// `--stream-name` parameter of the Kinesis [describe-stream] operation.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "some-stream-name"//// [stream]: https://docs.aws.amazon.com/streams/latest/dev/introduction.html// [describe-stream]: https://docs.aws.amazon.com/cli/latest/reference/kinesis/describe-stream.htmlAWSKinesisStreamNameKey = attribute.Key("aws.kinesis.stream_name")// AWSLambdaInvokedARNKey is the attribute Key conforming to the// "aws.lambda.invoked_arn" semantic conventions. It represents the full invoked// ARN as provided on the `Context` passed to the function (// `Lambda-Runtime-Invoked-Function-Arn` header on the// `/runtime/invocation/next` applicable).//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "arn:aws:lambda:us-east-1:123456:function:myfunction:myalias"// Note: This may be different from `cloud.resource_id` if an alias is involved.AWSLambdaInvokedARNKey = attribute.Key("aws.lambda.invoked_arn")// AWSLambdaResourceMappingIDKey is the attribute Key conforming to the// "aws.lambda.resource_mapping.id" semantic conventions. It represents the UUID// of the [AWS Lambda EvenSource Mapping]. An event source is mapped to a lambda// function. It's contents are read by Lambda and used to trigger a function.// This isn't available in the lambda execution context or the lambda runtime// environtment. This is going to be populated by the AWS SDK for each language// when that UUID is present. Some of these operations are// Create/Delete/Get/List/Update EventSourceMapping.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "587ad24b-03b9-4413-8202-bbd56b36e5b7"//// [AWS Lambda EvenSource Mapping]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.htmlAWSLambdaResourceMappingIDKey = attribute.Key("aws.lambda.resource_mapping.id")// AWSLogGroupARNsKey is the attribute Key conforming to the// "aws.log.group.arns" semantic conventions. It represents the Amazon Resource// Name(s) (ARN) of the AWS log group(s).//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "arn:aws:logs:us-west-1:123456789012:log-group:/aws/my/group:*"// Note: See the [log group ARN format documentation].//// [log group ARN format documentation]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html#CWL_ARN_FormatAWSLogGroupARNsKey = attribute.Key("aws.log.group.arns")// AWSLogGroupNamesKey is the attribute Key conforming to the// "aws.log.group.names" semantic conventions. It represents the name(s) of the// AWS log group(s) an application is writing to.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "/aws/lambda/my-function", "opentelemetry-service"// Note: Multiple log groups must be supported for cases like multi-container// applications, where a single application has sidecar containers, and each// write to their own log group.AWSLogGroupNamesKey = attribute.Key("aws.log.group.names")// AWSLogStreamARNsKey is the attribute Key conforming to the// "aws.log.stream.arns" semantic conventions. It represents the ARN(s) of the// AWS log stream(s).//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples:// "arn:aws:logs:us-west-1:123456789012:log-group:/aws/my/group:log-stream:logs/main/10838bed-421f-43ef-870a-f43feacbbb5b"// Note: See the [log stream ARN format documentation]. One log group can// contain several log streams, so these ARNs necessarily identify both a log// group and a log stream.//// [log stream ARN format documentation]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html#CWL_ARN_FormatAWSLogStreamARNsKey = attribute.Key("aws.log.stream.arns")// AWSLogStreamNamesKey is the attribute Key conforming to the// "aws.log.stream.names" semantic conventions. It represents the name(s) of the// AWS log stream(s) an application is writing to.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "logs/main/10838bed-421f-43ef-870a-f43feacbbb5b"AWSLogStreamNamesKey = attribute.Key("aws.log.stream.names")// AWSRequestIDKey is the attribute Key conforming to the "aws.request_id"// semantic conventions. It represents the AWS request ID as returned in the// response headers `x-amzn-requestid`, `x-amzn-request-id` or// `x-amz-request-id`.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "79b9da39-b7ae-508a-a6bc-864b2829c622", "C9ER4AJX75574TDJ"AWSRequestIDKey = attribute.Key("aws.request_id")// AWSS3BucketKey is the attribute Key conforming to the "aws.s3.bucket"// semantic conventions. It represents the S3 bucket name the request refers to.// Corresponds to the `--bucket` parameter of the [S3 API] operations.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "some-bucket-name"// Note: The `bucket` attribute is applicable to all S3 operations that// reference a bucket, i.e. that require the bucket name as a mandatory// parameter.// This applies to almost all S3 operations except `list-buckets`.//// [S3 API]: https://docs.aws.amazon.com/cli/latest/reference/s3api/index.htmlAWSS3BucketKey = attribute.Key("aws.s3.bucket")// AWSS3CopySourceKey is the attribute Key conforming to the// "aws.s3.copy_source" semantic conventions. It represents the source object// (in the form `bucket`/`key`) for the copy operation.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "someFile.yml"// Note: The `copy_source` attribute applies to S3 copy operations and// corresponds to the `--copy-source` parameter// of the [copy-object operation within the S3 API].// This applies in particular to the following operations://// - [copy-object]// - [upload-part-copy]////// [copy-object operation within the S3 API]: https://docs.aws.amazon.com/cli/latest/reference/s3api/copy-object.html// [copy-object]: https://docs.aws.amazon.com/cli/latest/reference/s3api/copy-object.html// [upload-part-copy]: https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part-copy.htmlAWSS3CopySourceKey = attribute.Key("aws.s3.copy_source")// AWSS3DeleteKey is the attribute Key conforming to the "aws.s3.delete"// semantic conventions. It represents the delete request container that// specifies the objects to be deleted.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples:// "Objects=[{Key=string,VersionId=string},{Key=string,VersionId=string}],Quiet=boolean"// Note: The `delete` attribute is only applicable to the [delete-object]// operation.// The `delete` attribute corresponds to the `--delete` parameter of the// [delete-objects operation within the S3 API].//// [delete-object]: https://docs.aws.amazon.com/cli/latest/reference/s3api/delete-object.html// [delete-objects operation within the S3 API]: https://docs.aws.amazon.com/cli/latest/reference/s3api/delete-objects.htmlAWSS3DeleteKey = attribute.Key("aws.s3.delete")// AWSS3KeyKey is the attribute Key conforming to the "aws.s3.key" semantic// conventions. It represents the S3 object key the request refers to.// Corresponds to the `--key` parameter of the [S3 API] operations.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "someFile.yml"// Note: The `key` attribute is applicable to all object-related S3 operations,// i.e. that require the object key as a mandatory parameter.// This applies in particular to the following operations://// - [copy-object]// - [delete-object]// - [get-object]// - [head-object]// - [put-object]// - [restore-object]// - [select-object-content]// - [abort-multipart-upload]// - [complete-multipart-upload]// - [create-multipart-upload]// - [list-parts]// - [upload-part]// - [upload-part-copy]////// [S3 API]: https://docs.aws.amazon.com/cli/latest/reference/s3api/index.html// [copy-object]: https://docs.aws.amazon.com/cli/latest/reference/s3api/copy-object.html// [delete-object]: https://docs.aws.amazon.com/cli/latest/reference/s3api/delete-object.html// [get-object]: https://docs.aws.amazon.com/cli/latest/reference/s3api/get-object.html// [head-object]: https://docs.aws.amazon.com/cli/latest/reference/s3api/head-object.html// [put-object]: https://docs.aws.amazon.com/cli/latest/reference/s3api/put-object.html// [restore-object]: https://docs.aws.amazon.com/cli/latest/reference/s3api/restore-object.html// [select-object-content]: https://docs.aws.amazon.com/cli/latest/reference/s3api/select-object-content.html// [abort-multipart-upload]: https://docs.aws.amazon.com/cli/latest/reference/s3api/abort-multipart-upload.html// [complete-multipart-upload]: https://docs.aws.amazon.com/cli/latest/reference/s3api/complete-multipart-upload.html// [create-multipart-upload]: https://docs.aws.amazon.com/cli/latest/reference/s3api/create-multipart-upload.html// [list-parts]: https://docs.aws.amazon.com/cli/latest/reference/s3api/list-parts.html// [upload-part]: https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part.html// [upload-part-copy]: https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part-copy.htmlAWSS3KeyKey = attribute.Key("aws.s3.key")// AWSS3PartNumberKey is the attribute Key conforming to the// "aws.s3.part_number" semantic conventions. It represents the part number of// the part being uploaded in a multipart-upload operation. This is a positive// integer between 1 and 10,000.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 3456// Note: The `part_number` attribute is only applicable to the [upload-part]// and [upload-part-copy] operations.// The `part_number` attribute corresponds to the `--part-number` parameter of// the// [upload-part operation within the S3 API].//// [upload-part]: https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part.html// [upload-part-copy]: https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part-copy.html// [upload-part operation within the S3 API]: https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part.htmlAWSS3PartNumberKey = attribute.Key("aws.s3.part_number")// AWSS3UploadIDKey is the attribute Key conforming to the "aws.s3.upload_id"// semantic conventions. It represents the upload ID that identifies the// multipart upload.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "dfRtDYWFbkRONycy.Yxwh66Yjlx.cph0gtNBtJ"// Note: The `upload_id` attribute applies to S3 multipart-upload operations and// corresponds to the `--upload-id` parameter// of the [S3 API] multipart operations.// This applies in particular to the following operations://// - [abort-multipart-upload]// - [complete-multipart-upload]// - [list-parts]// - [upload-part]// - [upload-part-copy]////// [S3 API]: https://docs.aws.amazon.com/cli/latest/reference/s3api/index.html// [abort-multipart-upload]: https://docs.aws.amazon.com/cli/latest/reference/s3api/abort-multipart-upload.html// [complete-multipart-upload]: https://docs.aws.amazon.com/cli/latest/reference/s3api/complete-multipart-upload.html// [list-parts]: https://docs.aws.amazon.com/cli/latest/reference/s3api/list-parts.html// [upload-part]: https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part.html// [upload-part-copy]: https://docs.aws.amazon.com/cli/latest/reference/s3api/upload-part-copy.htmlAWSS3UploadIDKey = attribute.Key("aws.s3.upload_id")// AWSSecretsmanagerSecretARNKey is the attribute Key conforming to the// "aws.secretsmanager.secret.arn" semantic conventions. It represents the ARN// of the Secret stored in the Secrets Mangger.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples:// "arn:aws:secretsmanager:us-east-1:123456789012:secret:SecretName-6RandomCharacters"AWSSecretsmanagerSecretARNKey = attribute.Key("aws.secretsmanager.secret.arn")// AWSSNSTopicARNKey is the attribute Key conforming to the "aws.sns.topic.arn"// semantic conventions. It represents the ARN of the AWS SNS Topic. An Amazon// SNS [topic] is a logical access point that acts as a communication channel.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "arn:aws:sns:us-east-1:123456789012:mystack-mytopic-NZJ5JSMVGFIE"//// [topic]: https://docs.aws.amazon.com/sns/latest/dg/sns-create-topic.htmlAWSSNSTopicARNKey = attribute.Key("aws.sns.topic.arn")// AWSSQSQueueURLKey is the attribute Key conforming to the "aws.sqs.queue.url"// semantic conventions. It represents the URL of the AWS SQS Queue. It's a// unique identifier for a queue in Amazon Simple Queue Service (SQS) and is// used to access the queue and perform actions on it.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue"AWSSQSQueueURLKey = attribute.Key("aws.sqs.queue.url")// AWSStepFunctionsActivityARNKey is the attribute Key conforming to the// "aws.step_functions.activity.arn" semantic conventions. It represents the ARN// of the AWS Step Functions Activity.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "arn:aws:states:us-east-1:123456789012:activity:get-greeting"AWSStepFunctionsActivityARNKey = attribute.Key("aws.step_functions.activity.arn")// AWSStepFunctionsStateMachineARNKey is the attribute Key conforming to the// "aws.step_functions.state_machine.arn" semantic conventions. It represents// the ARN of the AWS Step Functions State Machine.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples:// "arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine:1"AWSStepFunctionsStateMachineARNKey = attribute.Key("aws.step_functions.state_machine.arn"))// AWSBedrockGuardrailID returns an attribute KeyValue conforming to the// "aws.bedrock.guardrail.id" semantic conventions. It represents the unique// identifier of the AWS Bedrock Guardrail. A [guardrail] helps safeguard and// prevent unwanted behavior from model responses or user messages.//// [guardrail]: https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.htmlfunc ( string) attribute.KeyValue {return AWSBedrockGuardrailIDKey.String()}// AWSBedrockKnowledgeBaseID returns an attribute KeyValue conforming to the// "aws.bedrock.knowledge_base.id" semantic conventions. It represents the unique// identifier of the AWS Bedrock Knowledge base. A [knowledge base] is a bank of// information that can be queried by models to generate more relevant responses// and augment prompts.//// [knowledge base]: https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base.htmlfunc ( string) attribute.KeyValue {return AWSBedrockKnowledgeBaseIDKey.String()}// AWSDynamoDBAttributeDefinitions returns an attribute KeyValue conforming to// the "aws.dynamodb.attribute_definitions" semantic conventions. It represents// the JSON-serialized value of each item in the `AttributeDefinitions` request// field.func ( ...string) attribute.KeyValue {return AWSDynamoDBAttributeDefinitionsKey.StringSlice()}// AWSDynamoDBAttributesToGet returns an attribute KeyValue conforming to the// "aws.dynamodb.attributes_to_get" semantic conventions. It represents the value// of the `AttributesToGet` request parameter.func ( ...string) attribute.KeyValue {return AWSDynamoDBAttributesToGetKey.StringSlice()}// AWSDynamoDBConsistentRead returns an attribute KeyValue conforming to the// "aws.dynamodb.consistent_read" semantic conventions. It represents the value// of the `ConsistentRead` request parameter.func ( bool) attribute.KeyValue {return AWSDynamoDBConsistentReadKey.Bool()}// AWSDynamoDBConsumedCapacity returns an attribute KeyValue conforming to the// "aws.dynamodb.consumed_capacity" semantic conventions. It represents the// JSON-serialized value of each item in the `ConsumedCapacity` response field.func ( ...string) attribute.KeyValue {return AWSDynamoDBConsumedCapacityKey.StringSlice()}// AWSDynamoDBCount returns an attribute KeyValue conforming to the// "aws.dynamodb.count" semantic conventions. It represents the value of the// `Count` response parameter.func ( int) attribute.KeyValue {return AWSDynamoDBCountKey.Int()}// AWSDynamoDBExclusiveStartTable returns an attribute KeyValue conforming to the// "aws.dynamodb.exclusive_start_table" semantic conventions. It represents the// value of the `ExclusiveStartTableName` request parameter.func ( string) attribute.KeyValue {return AWSDynamoDBExclusiveStartTableKey.String()}// AWSDynamoDBGlobalSecondaryIndexUpdates returns an attribute KeyValue// conforming to the "aws.dynamodb.global_secondary_index_updates" semantic// conventions. It represents the JSON-serialized value of each item in the// `GlobalSecondaryIndexUpdates` request field.func ( ...string) attribute.KeyValue {return AWSDynamoDBGlobalSecondaryIndexUpdatesKey.StringSlice()}// AWSDynamoDBGlobalSecondaryIndexes returns an attribute KeyValue conforming to// the "aws.dynamodb.global_secondary_indexes" semantic conventions. It// represents the JSON-serialized value of each item of the// `GlobalSecondaryIndexes` request field.func ( ...string) attribute.KeyValue {return AWSDynamoDBGlobalSecondaryIndexesKey.StringSlice()}// AWSDynamoDBIndexName returns an attribute KeyValue conforming to the// "aws.dynamodb.index_name" semantic conventions. It represents the value of the// `IndexName` request parameter.func ( string) attribute.KeyValue {return AWSDynamoDBIndexNameKey.String()}// AWSDynamoDBItemCollectionMetrics returns an attribute KeyValue conforming to// the "aws.dynamodb.item_collection_metrics" semantic conventions. It represents// the JSON-serialized value of the `ItemCollectionMetrics` response field.func ( string) attribute.KeyValue {return AWSDynamoDBItemCollectionMetricsKey.String()}// AWSDynamoDBLimit returns an attribute KeyValue conforming to the// "aws.dynamodb.limit" semantic conventions. It represents the value of the// `Limit` request parameter.func ( int) attribute.KeyValue {return AWSDynamoDBLimitKey.Int()}// AWSDynamoDBLocalSecondaryIndexes returns an attribute KeyValue conforming to// the "aws.dynamodb.local_secondary_indexes" semantic conventions. It represents// the JSON-serialized value of each item of the `LocalSecondaryIndexes` request// field.func ( ...string) attribute.KeyValue {return AWSDynamoDBLocalSecondaryIndexesKey.StringSlice()}// AWSDynamoDBProjection returns an attribute KeyValue conforming to the// "aws.dynamodb.projection" semantic conventions. It represents the value of the// `ProjectionExpression` request parameter.func ( string) attribute.KeyValue {return AWSDynamoDBProjectionKey.String()}// AWSDynamoDBProvisionedReadCapacity returns an attribute KeyValue conforming to// the "aws.dynamodb.provisioned_read_capacity" semantic conventions. It// represents the value of the `ProvisionedThroughput.ReadCapacityUnits` request// parameter.func ( float64) attribute.KeyValue {return AWSDynamoDBProvisionedReadCapacityKey.Float64()}// AWSDynamoDBProvisionedWriteCapacity returns an attribute KeyValue conforming// to the "aws.dynamodb.provisioned_write_capacity" semantic conventions. It// represents the value of the `ProvisionedThroughput.WriteCapacityUnits` request// parameter.func ( float64) attribute.KeyValue {return AWSDynamoDBProvisionedWriteCapacityKey.Float64()}// AWSDynamoDBScanForward returns an attribute KeyValue conforming to the// "aws.dynamodb.scan_forward" semantic conventions. It represents the value of// the `ScanIndexForward` request parameter.func ( bool) attribute.KeyValue {return AWSDynamoDBScanForwardKey.Bool()}// AWSDynamoDBScannedCount returns an attribute KeyValue conforming to the// "aws.dynamodb.scanned_count" semantic conventions. It represents the value of// the `ScannedCount` response parameter.func ( int) attribute.KeyValue {return AWSDynamoDBScannedCountKey.Int()}// AWSDynamoDBSegment returns an attribute KeyValue conforming to the// "aws.dynamodb.segment" semantic conventions. It represents the value of the// `Segment` request parameter.func ( int) attribute.KeyValue {return AWSDynamoDBSegmentKey.Int()}// AWSDynamoDBSelect returns an attribute KeyValue conforming to the// "aws.dynamodb.select" semantic conventions. It represents the value of the// `Select` request parameter.func ( string) attribute.KeyValue {return AWSDynamoDBSelectKey.String()}// AWSDynamoDBTableCount returns an attribute KeyValue conforming to the// "aws.dynamodb.table_count" semantic conventions. It represents the number of// items in the `TableNames` response parameter.func ( int) attribute.KeyValue {return AWSDynamoDBTableCountKey.Int()}// AWSDynamoDBTableNames returns an attribute KeyValue conforming to the// "aws.dynamodb.table_names" semantic conventions. It represents the keys in the// `RequestItems` object field.func ( ...string) attribute.KeyValue {return AWSDynamoDBTableNamesKey.StringSlice()}// AWSDynamoDBTotalSegments returns an attribute KeyValue conforming to the// "aws.dynamodb.total_segments" semantic conventions. It represents the value of// the `TotalSegments` request parameter.func ( int) attribute.KeyValue {return AWSDynamoDBTotalSegmentsKey.Int()}// AWSECSClusterARN returns an attribute KeyValue conforming to the// "aws.ecs.cluster.arn" semantic conventions. It represents the ARN of an// [ECS cluster].//// [ECS cluster]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/clusters.htmlfunc ( string) attribute.KeyValue {return AWSECSClusterARNKey.String()}// AWSECSContainerARN returns an attribute KeyValue conforming to the// "aws.ecs.container.arn" semantic conventions. It represents the Amazon// Resource Name (ARN) of an [ECS container instance].//// [ECS container instance]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_instances.htmlfunc ( string) attribute.KeyValue {return AWSECSContainerARNKey.String()}// AWSECSTaskARN returns an attribute KeyValue conforming to the// "aws.ecs.task.arn" semantic conventions. It represents the ARN of a running// [ECS task].//// [ECS task]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#ecs-resource-idsfunc ( string) attribute.KeyValue {return AWSECSTaskARNKey.String()}// AWSECSTaskFamily returns an attribute KeyValue conforming to the// "aws.ecs.task.family" semantic conventions. It represents the family name of// the [ECS task definition] used to create the ECS task.//// [ECS task definition]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definitions.htmlfunc ( string) attribute.KeyValue {return AWSECSTaskFamilyKey.String()}// AWSECSTaskID returns an attribute KeyValue conforming to the "aws.ecs.task.id"// semantic conventions. It represents the ID of a running ECS task. The ID MUST// be extracted from `task.arn`.func ( string) attribute.KeyValue {return AWSECSTaskIDKey.String()}// AWSECSTaskRevision returns an attribute KeyValue conforming to the// "aws.ecs.task.revision" semantic conventions. It represents the revision for// the task definition used to create the ECS task.func ( string) attribute.KeyValue {return AWSECSTaskRevisionKey.String()}// AWSEKSClusterARN returns an attribute KeyValue conforming to the// "aws.eks.cluster.arn" semantic conventions. It represents the ARN of an EKS// cluster.func ( string) attribute.KeyValue {return AWSEKSClusterARNKey.String()}// AWSExtendedRequestID returns an attribute KeyValue conforming to the// "aws.extended_request_id" semantic conventions. It represents the AWS extended// request ID as returned in the response header `x-amz-id-2`.func ( string) attribute.KeyValue {return AWSExtendedRequestIDKey.String()}// AWSKinesisStreamName returns an attribute KeyValue conforming to the// "aws.kinesis.stream_name" semantic conventions. It represents the name of the// AWS Kinesis [stream] the request refers to. Corresponds to the `--stream-name`// parameter of the Kinesis [describe-stream] operation.//// [stream]: https://docs.aws.amazon.com/streams/latest/dev/introduction.html// [describe-stream]: https://docs.aws.amazon.com/cli/latest/reference/kinesis/describe-stream.htmlfunc ( string) attribute.KeyValue {return AWSKinesisStreamNameKey.String()}// AWSLambdaInvokedARN returns an attribute KeyValue conforming to the// "aws.lambda.invoked_arn" semantic conventions. It represents the full invoked// ARN as provided on the `Context` passed to the function (// `Lambda-Runtime-Invoked-Function-Arn` header on the `/runtime/invocation/next`// applicable).func ( string) attribute.KeyValue {return AWSLambdaInvokedARNKey.String()}// AWSLambdaResourceMappingID returns an attribute KeyValue conforming to the// "aws.lambda.resource_mapping.id" semantic conventions. It represents the UUID// of the [AWS Lambda EvenSource Mapping]. An event source is mapped to a lambda// function. It's contents are read by Lambda and used to trigger a function.// This isn't available in the lambda execution context or the lambda runtime// environtment. This is going to be populated by the AWS SDK for each language// when that UUID is present. Some of these operations are// Create/Delete/Get/List/Update EventSourceMapping.//// [AWS Lambda EvenSource Mapping]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.htmlfunc ( string) attribute.KeyValue {return AWSLambdaResourceMappingIDKey.String()}// AWSLogGroupARNs returns an attribute KeyValue conforming to the// "aws.log.group.arns" semantic conventions. It represents the Amazon Resource// Name(s) (ARN) of the AWS log group(s).func ( ...string) attribute.KeyValue {return AWSLogGroupARNsKey.StringSlice()}// AWSLogGroupNames returns an attribute KeyValue conforming to the// "aws.log.group.names" semantic conventions. It represents the name(s) of the// AWS log group(s) an application is writing to.func ( ...string) attribute.KeyValue {return AWSLogGroupNamesKey.StringSlice()}// AWSLogStreamARNs returns an attribute KeyValue conforming to the// "aws.log.stream.arns" semantic conventions. It represents the ARN(s) of the// AWS log stream(s).func ( ...string) attribute.KeyValue {return AWSLogStreamARNsKey.StringSlice()}// AWSLogStreamNames returns an attribute KeyValue conforming to the// "aws.log.stream.names" semantic conventions. It represents the name(s) of the// AWS log stream(s) an application is writing to.func ( ...string) attribute.KeyValue {return AWSLogStreamNamesKey.StringSlice()}// AWSRequestID returns an attribute KeyValue conforming to the "aws.request_id"// semantic conventions. It represents the AWS request ID as returned in the// response headers `x-amzn-requestid`, `x-amzn-request-id` or `x-amz-request-id`// .func ( string) attribute.KeyValue {return AWSRequestIDKey.String()}// AWSS3Bucket returns an attribute KeyValue conforming to the "aws.s3.bucket"// semantic conventions. It represents the S3 bucket name the request refers to.// Corresponds to the `--bucket` parameter of the [S3 API] operations.//// [S3 API]: https://docs.aws.amazon.com/cli/latest/reference/s3api/index.htmlfunc ( string) attribute.KeyValue {return AWSS3BucketKey.String()}// AWSS3CopySource returns an attribute KeyValue conforming to the// "aws.s3.copy_source" semantic conventions. It represents the source object (in// the form `bucket`/`key`) for the copy operation.func ( string) attribute.KeyValue {return AWSS3CopySourceKey.String()}// AWSS3Delete returns an attribute KeyValue conforming to the "aws.s3.delete"// semantic conventions. It represents the delete request container that// specifies the objects to be deleted.func ( string) attribute.KeyValue {return AWSS3DeleteKey.String()}// AWSS3Key returns an attribute KeyValue conforming to the "aws.s3.key" semantic// conventions. It represents the S3 object key the request refers to.// Corresponds to the `--key` parameter of the [S3 API] operations.//// [S3 API]: https://docs.aws.amazon.com/cli/latest/reference/s3api/index.htmlfunc ( string) attribute.KeyValue {return AWSS3KeyKey.String()}// AWSS3PartNumber returns an attribute KeyValue conforming to the// "aws.s3.part_number" semantic conventions. It represents the part number of// the part being uploaded in a multipart-upload operation. This is a positive// integer between 1 and 10,000.func ( int) attribute.KeyValue {return AWSS3PartNumberKey.Int()}// AWSS3UploadID returns an attribute KeyValue conforming to the// "aws.s3.upload_id" semantic conventions. It represents the upload ID that// identifies the multipart upload.func ( string) attribute.KeyValue {return AWSS3UploadIDKey.String()}// AWSSecretsmanagerSecretARN returns an attribute KeyValue conforming to the// "aws.secretsmanager.secret.arn" semantic conventions. It represents the ARN of// the Secret stored in the Secrets Mangger.func ( string) attribute.KeyValue {return AWSSecretsmanagerSecretARNKey.String()}// AWSSNSTopicARN returns an attribute KeyValue conforming to the// "aws.sns.topic.arn" semantic conventions. It represents the ARN of the AWS SNS// Topic. An Amazon SNS [topic] is a logical access point that acts as a// communication channel.//// [topic]: https://docs.aws.amazon.com/sns/latest/dg/sns-create-topic.htmlfunc ( string) attribute.KeyValue {return AWSSNSTopicARNKey.String()}// AWSSQSQueueURL returns an attribute KeyValue conforming to the// "aws.sqs.queue.url" semantic conventions. It represents the URL of the AWS SQS// Queue. It's a unique identifier for a queue in Amazon Simple Queue Service// (SQS) and is used to access the queue and perform actions on it.func ( string) attribute.KeyValue {return AWSSQSQueueURLKey.String()}// AWSStepFunctionsActivityARN returns an attribute KeyValue conforming to the// "aws.step_functions.activity.arn" semantic conventions. It represents the ARN// of the AWS Step Functions Activity.func ( string) attribute.KeyValue {return AWSStepFunctionsActivityARNKey.String()}// AWSStepFunctionsStateMachineARN returns an attribute KeyValue conforming to// the "aws.step_functions.state_machine.arn" semantic conventions. It represents// the ARN of the AWS Step Functions State Machine.func ( string) attribute.KeyValue {return AWSStepFunctionsStateMachineARNKey.String()}// Enum values for aws.ecs.launchtypevar (// Amazon EC2// Stability: developmentAWSECSLaunchtypeEC2 = AWSECSLaunchtypeKey.String("ec2")// Amazon Fargate// Stability: developmentAWSECSLaunchtypeFargate = AWSECSLaunchtypeKey.String("fargate"))// Namespace: azureconst (// AzureClientIDKey is the attribute Key conforming to the "azure.client.id"// semantic conventions. It represents the unique identifier of the client// instance.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "3ba4827d-4422-483f-b59f-85b74211c11d", "storage-client-1"AzureClientIDKey = attribute.Key("azure.client.id")// AzureCosmosDBConnectionModeKey is the attribute Key conforming to the// "azure.cosmosdb.connection.mode" semantic conventions. It represents the// cosmos client connection mode.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:AzureCosmosDBConnectionModeKey = attribute.Key("azure.cosmosdb.connection.mode")// AzureCosmosDBConsistencyLevelKey is the attribute Key conforming to the// "azure.cosmosdb.consistency.level" semantic conventions. It represents the// account or request [consistency level].//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "Eventual", "ConsistentPrefix", "BoundedStaleness", "Strong",// "Session"//// [consistency level]: https://learn.microsoft.com/azure/cosmos-db/consistency-levelsAzureCosmosDBConsistencyLevelKey = attribute.Key("azure.cosmosdb.consistency.level")// AzureCosmosDBOperationContactedRegionsKey is the attribute Key conforming to// the "azure.cosmosdb.operation.contacted_regions" semantic conventions. It// represents the list of regions contacted during operation in the order that// they were contacted. If there is more than one region listed, it indicates// that the operation was performed on multiple regions i.e. cross-regional// call.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "North Central US", "Australia East", "Australia Southeast"// Note: Region name matches the format of `displayName` in [Azure Location API]//// [Azure Location API]: https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#locationAzureCosmosDBOperationContactedRegionsKey = attribute.Key("azure.cosmosdb.operation.contacted_regions")// AzureCosmosDBOperationRequestChargeKey is the attribute Key conforming to the// "azure.cosmosdb.operation.request_charge" semantic conventions. It represents// the number of request units consumed by the operation.//// Type: double// RequirementLevel: Recommended// Stability: Development//// Examples: 46.18, 1.0AzureCosmosDBOperationRequestChargeKey = attribute.Key("azure.cosmosdb.operation.request_charge")// AzureCosmosDBRequestBodySizeKey is the attribute Key conforming to the// "azure.cosmosdb.request.body.size" semantic conventions. It represents the// request payload size in bytes.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples:AzureCosmosDBRequestBodySizeKey = attribute.Key("azure.cosmosdb.request.body.size")// AzureCosmosDBResponseSubStatusCodeKey is the attribute Key conforming to the// "azure.cosmosdb.response.sub_status_code" semantic conventions. It represents// the cosmos DB sub status code.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 1000, 1002AzureCosmosDBResponseSubStatusCodeKey = attribute.Key("azure.cosmosdb.response.sub_status_code")// AzureResourceProviderNamespaceKey is the attribute Key conforming to the// "azure.resource_provider.namespace" semantic conventions. It represents the// [Azure Resource Provider Namespace] as recognized by the client.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Microsoft.Storage", "Microsoft.KeyVault", "Microsoft.ServiceBus"//// [Azure Resource Provider Namespace]: https://learn.microsoft.com/azure/azure-resource-manager/management/azure-services-resource-providersAzureResourceProviderNamespaceKey = attribute.Key("azure.resource_provider.namespace")// AzureServiceRequestIDKey is the attribute Key conforming to the// "azure.service.request.id" semantic conventions. It represents the unique// identifier of the service request. It's generated by the Azure service and// returned with the response.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "00000000-0000-0000-0000-000000000000"AzureServiceRequestIDKey = attribute.Key("azure.service.request.id"))// AzureClientID returns an attribute KeyValue conforming to the// "azure.client.id" semantic conventions. It represents the unique identifier of// the client instance.func ( string) attribute.KeyValue {return AzureClientIDKey.String()}// AzureCosmosDBOperationContactedRegions returns an attribute KeyValue// conforming to the "azure.cosmosdb.operation.contacted_regions" semantic// conventions. It represents the list of regions contacted during operation in// the order that they were contacted. If there is more than one region listed,// it indicates that the operation was performed on multiple regions i.e.// cross-regional call.func ( ...string) attribute.KeyValue {return AzureCosmosDBOperationContactedRegionsKey.StringSlice()}// AzureCosmosDBOperationRequestCharge returns an attribute KeyValue conforming// to the "azure.cosmosdb.operation.request_charge" semantic conventions. It// represents the number of request units consumed by the operation.func ( float64) attribute.KeyValue {return AzureCosmosDBOperationRequestChargeKey.Float64()}// AzureCosmosDBRequestBodySize returns an attribute KeyValue conforming to the// "azure.cosmosdb.request.body.size" semantic conventions. It represents the// request payload size in bytes.func ( int) attribute.KeyValue {return AzureCosmosDBRequestBodySizeKey.Int()}// AzureCosmosDBResponseSubStatusCode returns an attribute KeyValue conforming to// the "azure.cosmosdb.response.sub_status_code" semantic conventions. It// represents the cosmos DB sub status code.func ( int) attribute.KeyValue {return AzureCosmosDBResponseSubStatusCodeKey.Int()}// AzureResourceProviderNamespace returns an attribute KeyValue conforming to the// "azure.resource_provider.namespace" semantic conventions. It represents the// [Azure Resource Provider Namespace] as recognized by the client.//// [Azure Resource Provider Namespace]: https://learn.microsoft.com/azure/azure-resource-manager/management/azure-services-resource-providersfunc ( string) attribute.KeyValue {return AzureResourceProviderNamespaceKey.String()}// AzureServiceRequestID returns an attribute KeyValue conforming to the// "azure.service.request.id" semantic conventions. It represents the unique// identifier of the service request. It's generated by the Azure service and// returned with the response.func ( string) attribute.KeyValue {return AzureServiceRequestIDKey.String()}// Enum values for azure.cosmosdb.connection.modevar (// Gateway (HTTP) connection.// Stability: developmentAzureCosmosDBConnectionModeGateway = AzureCosmosDBConnectionModeKey.String("gateway")// Direct connection.// Stability: developmentAzureCosmosDBConnectionModeDirect = AzureCosmosDBConnectionModeKey.String("direct"))// Enum values for azure.cosmosdb.consistency.levelvar (// Strong// Stability: developmentAzureCosmosDBConsistencyLevelStrong = AzureCosmosDBConsistencyLevelKey.String("Strong")// Bounded Staleness// Stability: developmentAzureCosmosDBConsistencyLevelBoundedStaleness = AzureCosmosDBConsistencyLevelKey.String("BoundedStaleness")// Session// Stability: developmentAzureCosmosDBConsistencyLevelSession = AzureCosmosDBConsistencyLevelKey.String("Session")// Eventual// Stability: developmentAzureCosmosDBConsistencyLevelEventual = AzureCosmosDBConsistencyLevelKey.String("Eventual")// Consistent Prefix// Stability: developmentAzureCosmosDBConsistencyLevelConsistentPrefix = AzureCosmosDBConsistencyLevelKey.String("ConsistentPrefix"))// Namespace: browserconst (// BrowserBrandsKey is the attribute Key conforming to the "browser.brands"// semantic conventions. It represents the array of brand name and version// separated by a space.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: " Not A;Brand 99", "Chromium 99", "Chrome 99"// Note: This value is intended to be taken from the [UA client hints API] (// `navigator.userAgentData.brands`).//// [UA client hints API]: https://wicg.github.io/ua-client-hints/#interfaceBrowserBrandsKey = attribute.Key("browser.brands")// BrowserLanguageKey is the attribute Key conforming to the "browser.language"// semantic conventions. It represents the preferred language of the user using// the browser.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "en", "en-US", "fr", "fr-FR"// Note: This value is intended to be taken from the Navigator API// `navigator.language`.BrowserLanguageKey = attribute.Key("browser.language")// BrowserMobileKey is the attribute Key conforming to the "browser.mobile"// semantic conventions. It represents a boolean that is true if the browser is// running on a mobile device.//// Type: boolean// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: This value is intended to be taken from the [UA client hints API] (// `navigator.userAgentData.mobile`). If unavailable, this attribute SHOULD be// left unset.//// [UA client hints API]: https://wicg.github.io/ua-client-hints/#interfaceBrowserMobileKey = attribute.Key("browser.mobile")// BrowserPlatformKey is the attribute Key conforming to the "browser.platform"// semantic conventions. It represents the platform on which the browser is// running.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Windows", "macOS", "Android"// Note: This value is intended to be taken from the [UA client hints API] (// `navigator.userAgentData.platform`). If unavailable, the legacy// `navigator.platform` API SHOULD NOT be used instead and this attribute SHOULD// be left unset in order for the values to be consistent.// The list of possible values is defined in the// [W3C User-Agent Client Hints specification]. Note that some (but not all) of// these values can overlap with values in the// [`os.type` and `os.name` attributes]. However, for consistency, the values in// the `browser.platform` attribute should capture the exact value that the user// agent provides.//// [UA client hints API]: https://wicg.github.io/ua-client-hints/#interface// [W3C User-Agent Client Hints specification]: https://wicg.github.io/ua-client-hints/#sec-ch-ua-platform// [`os.type` and `os.name` attributes]: ./os.mdBrowserPlatformKey = attribute.Key("browser.platform"))// BrowserBrands returns an attribute KeyValue conforming to the "browser.brands"// semantic conventions. It represents the array of brand name and version// separated by a space.func ( ...string) attribute.KeyValue {return BrowserBrandsKey.StringSlice()}// BrowserLanguage returns an attribute KeyValue conforming to the// "browser.language" semantic conventions. It represents the preferred language// of the user using the browser.func ( string) attribute.KeyValue {return BrowserLanguageKey.String()}// BrowserMobile returns an attribute KeyValue conforming to the "browser.mobile"// semantic conventions. It represents a boolean that is true if the browser is// running on a mobile device.func ( bool) attribute.KeyValue {return BrowserMobileKey.Bool()}// BrowserPlatform returns an attribute KeyValue conforming to the// "browser.platform" semantic conventions. It represents the platform on which// the browser is running.func ( string) attribute.KeyValue {return BrowserPlatformKey.String()}// Namespace: cassandraconst (// CassandraConsistencyLevelKey is the attribute Key conforming to the// "cassandra.consistency.level" semantic conventions. It represents the// consistency level of the query. Based on consistency values from [CQL].//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples://// [CQL]: https://docs.datastax.com/en/cassandra-oss/3.0/cassandra/dml/dmlConfigConsistency.htmlCassandraConsistencyLevelKey = attribute.Key("cassandra.consistency.level")// CassandraCoordinatorDCKey is the attribute Key conforming to the// "cassandra.coordinator.dc" semantic conventions. It represents the data// center of the coordinating node for a query.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: us-west-2CassandraCoordinatorDCKey = attribute.Key("cassandra.coordinator.dc")// CassandraCoordinatorIDKey is the attribute Key conforming to the// "cassandra.coordinator.id" semantic conventions. It represents the ID of the// coordinating node for a query.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: be13faa2-8574-4d71-926d-27f16cf8a7afCassandraCoordinatorIDKey = attribute.Key("cassandra.coordinator.id")// CassandraPageSizeKey is the attribute Key conforming to the// "cassandra.page.size" semantic conventions. It represents the fetch size used// for paging, i.e. how many rows will be returned at once.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 5000CassandraPageSizeKey = attribute.Key("cassandra.page.size")// CassandraQueryIdempotentKey is the attribute Key conforming to the// "cassandra.query.idempotent" semantic conventions. It represents the whether// or not the query is idempotent.//// Type: boolean// RequirementLevel: Recommended// Stability: Development//// Examples:CassandraQueryIdempotentKey = attribute.Key("cassandra.query.idempotent")// CassandraSpeculativeExecutionCountKey is the attribute Key conforming to the// "cassandra.speculative_execution.count" semantic conventions. It represents// the number of times a query was speculatively executed. Not set or `0` if the// query was not executed speculatively.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 0, 2CassandraSpeculativeExecutionCountKey = attribute.Key("cassandra.speculative_execution.count"))// CassandraCoordinatorDC returns an attribute KeyValue conforming to the// "cassandra.coordinator.dc" semantic conventions. It represents the data center// of the coordinating node for a query.func ( string) attribute.KeyValue {return CassandraCoordinatorDCKey.String()}// CassandraCoordinatorID returns an attribute KeyValue conforming to the// "cassandra.coordinator.id" semantic conventions. It represents the ID of the// coordinating node for a query.func ( string) attribute.KeyValue {return CassandraCoordinatorIDKey.String()}// CassandraPageSize returns an attribute KeyValue conforming to the// "cassandra.page.size" semantic conventions. It represents the fetch size used// for paging, i.e. how many rows will be returned at once.func ( int) attribute.KeyValue {return CassandraPageSizeKey.Int()}// CassandraQueryIdempotent returns an attribute KeyValue conforming to the// "cassandra.query.idempotent" semantic conventions. It represents the whether// or not the query is idempotent.func ( bool) attribute.KeyValue {return CassandraQueryIdempotentKey.Bool()}// CassandraSpeculativeExecutionCount returns an attribute KeyValue conforming to// the "cassandra.speculative_execution.count" semantic conventions. It// represents the number of times a query was speculatively executed. Not set or// `0` if the query was not executed speculatively.func ( int) attribute.KeyValue {return CassandraSpeculativeExecutionCountKey.Int()}// Enum values for cassandra.consistency.levelvar (// All// Stability: developmentCassandraConsistencyLevelAll = CassandraConsistencyLevelKey.String("all")// Each Quorum// Stability: developmentCassandraConsistencyLevelEachQuorum = CassandraConsistencyLevelKey.String("each_quorum")// Quorum// Stability: developmentCassandraConsistencyLevelQuorum = CassandraConsistencyLevelKey.String("quorum")// Local Quorum// Stability: developmentCassandraConsistencyLevelLocalQuorum = CassandraConsistencyLevelKey.String("local_quorum")// One// Stability: developmentCassandraConsistencyLevelOne = CassandraConsistencyLevelKey.String("one")// Two// Stability: developmentCassandraConsistencyLevelTwo = CassandraConsistencyLevelKey.String("two")// Three// Stability: developmentCassandraConsistencyLevelThree = CassandraConsistencyLevelKey.String("three")// Local One// Stability: developmentCassandraConsistencyLevelLocalOne = CassandraConsistencyLevelKey.String("local_one")// Any// Stability: developmentCassandraConsistencyLevelAny = CassandraConsistencyLevelKey.String("any")// Serial// Stability: developmentCassandraConsistencyLevelSerial = CassandraConsistencyLevelKey.String("serial")// Local Serial// Stability: developmentCassandraConsistencyLevelLocalSerial = CassandraConsistencyLevelKey.String("local_serial"))// Namespace: cicdconst (// CICDPipelineActionNameKey is the attribute Key conforming to the// "cicd.pipeline.action.name" semantic conventions. It represents the kind of// action a pipeline run is performing.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "BUILD", "RUN", "SYNC"CICDPipelineActionNameKey = attribute.Key("cicd.pipeline.action.name")// CICDPipelineNameKey is the attribute Key conforming to the// "cicd.pipeline.name" semantic conventions. It represents the human readable// name of the pipeline within a CI/CD system.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Build and Test", "Lint", "Deploy Go Project",// "deploy_to_environment"CICDPipelineNameKey = attribute.Key("cicd.pipeline.name")// CICDPipelineResultKey is the attribute Key conforming to the// "cicd.pipeline.result" semantic conventions. It represents the result of a// pipeline run.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "success", "failure", "timeout", "skipped"CICDPipelineResultKey = attribute.Key("cicd.pipeline.result")// CICDPipelineRunIDKey is the attribute Key conforming to the// "cicd.pipeline.run.id" semantic conventions. It represents the unique// identifier of a pipeline run within a CI/CD system.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "120912"CICDPipelineRunIDKey = attribute.Key("cicd.pipeline.run.id")// CICDPipelineRunStateKey is the attribute Key conforming to the// "cicd.pipeline.run.state" semantic conventions. It represents the pipeline// run goes through these states during its lifecycle.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "pending", "executing", "finalizing"CICDPipelineRunStateKey = attribute.Key("cicd.pipeline.run.state")// CICDPipelineRunURLFullKey is the attribute Key conforming to the// "cicd.pipeline.run.url.full" semantic conventions. It represents the [URL] of// the pipeline run, providing the complete address in order to locate and// identify the pipeline run.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples:// "https://github.com/open-telemetry/semantic-conventions/actions/runs/9753949763?pr=1075"//// [URL]: https://wikipedia.org/wiki/URLCICDPipelineRunURLFullKey = attribute.Key("cicd.pipeline.run.url.full")// CICDPipelineTaskNameKey is the attribute Key conforming to the// "cicd.pipeline.task.name" semantic conventions. It represents 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.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Run GoLang Linter", "Go Build", "go-test", "deploy_binary"//// [computing process]: https://wikipedia.org/wiki/Pipeline_(computing)CICDPipelineTaskNameKey = attribute.Key("cicd.pipeline.task.name")// CICDPipelineTaskRunIDKey is the attribute Key conforming to the// "cicd.pipeline.task.run.id" semantic conventions. It represents the unique// identifier of a task run within a pipeline.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "12097"CICDPipelineTaskRunIDKey = attribute.Key("cicd.pipeline.task.run.id")// CICDPipelineTaskRunResultKey is the attribute Key conforming to the// "cicd.pipeline.task.run.result" semantic conventions. It represents the// result of a task run.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "success", "failure", "timeout", "skipped"CICDPipelineTaskRunResultKey = attribute.Key("cicd.pipeline.task.run.result")// CICDPipelineTaskRunURLFullKey is the attribute Key conforming to the// "cicd.pipeline.task.run.url.full" semantic conventions. It represents the// [URL] of the pipeline task run, providing the complete address in order to// locate and identify the pipeline task run.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples:// "https://github.com/open-telemetry/semantic-conventions/actions/runs/9753949763/job/26920038674?pr=1075"//// [URL]: https://wikipedia.org/wiki/URLCICDPipelineTaskRunURLFullKey = attribute.Key("cicd.pipeline.task.run.url.full")// CICDPipelineTaskTypeKey is the attribute Key conforming to the// "cicd.pipeline.task.type" semantic conventions. It represents the type of the// task within a pipeline.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "build", "test", "deploy"CICDPipelineTaskTypeKey = attribute.Key("cicd.pipeline.task.type")// CICDSystemComponentKey is the attribute Key conforming to the// "cicd.system.component" semantic conventions. It represents the name of a// component of the CICD system.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "controller", "scheduler", "agent"CICDSystemComponentKey = attribute.Key("cicd.system.component")// CICDWorkerIDKey is the attribute Key conforming to the "cicd.worker.id"// semantic conventions. It represents the unique identifier of a worker within// a CICD system.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "abc123", "10.0.1.2", "controller"CICDWorkerIDKey = attribute.Key("cicd.worker.id")// CICDWorkerNameKey is the attribute Key conforming to the "cicd.worker.name"// semantic conventions. It represents the name of a worker within a CICD// system.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "agent-abc", "controller", "Ubuntu LTS"CICDWorkerNameKey = attribute.Key("cicd.worker.name")// CICDWorkerStateKey is the attribute Key conforming to the "cicd.worker.state"// semantic conventions. It represents the state of a CICD worker / agent.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "idle", "busy", "down"CICDWorkerStateKey = attribute.Key("cicd.worker.state")// CICDWorkerURLFullKey is the attribute Key conforming to the// "cicd.worker.url.full" semantic conventions. It represents the [URL] of the// worker, providing the complete address in order to locate and identify the// worker.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "https://cicd.example.org/worker/abc123"//// [URL]: https://wikipedia.org/wiki/URLCICDWorkerURLFullKey = attribute.Key("cicd.worker.url.full"))// CICDPipelineName returns an attribute KeyValue conforming to the// "cicd.pipeline.name" semantic conventions. It represents the human readable// name of the pipeline within a CI/CD system.func ( string) attribute.KeyValue {return CICDPipelineNameKey.String()}// CICDPipelineRunID returns an attribute KeyValue conforming to the// "cicd.pipeline.run.id" semantic conventions. It represents the unique// identifier of a pipeline run within a CI/CD system.func ( string) attribute.KeyValue {return CICDPipelineRunIDKey.String()}// CICDPipelineRunURLFull returns an attribute KeyValue conforming to the// "cicd.pipeline.run.url.full" semantic conventions. It represents the [URL] of// the pipeline run, providing the complete address in order to locate and// identify the pipeline run.//// [URL]: https://wikipedia.org/wiki/URLfunc ( string) attribute.KeyValue {return CICDPipelineRunURLFullKey.String()}// CICDPipelineTaskName returns an attribute KeyValue conforming to the// "cicd.pipeline.task.name" semantic conventions. It represents 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.//// [computing process]: https://wikipedia.org/wiki/Pipeline_(computing)func ( string) attribute.KeyValue {return CICDPipelineTaskNameKey.String()}// CICDPipelineTaskRunID returns an attribute KeyValue conforming to the// "cicd.pipeline.task.run.id" semantic conventions. It represents the unique// identifier of a task run within a pipeline.func ( string) attribute.KeyValue {return CICDPipelineTaskRunIDKey.String()}// CICDPipelineTaskRunURLFull returns an attribute KeyValue conforming to the// "cicd.pipeline.task.run.url.full" semantic conventions. It represents the// [URL] of the pipeline task run, providing the complete address in order to// locate and identify the pipeline task run.//// [URL]: https://wikipedia.org/wiki/URLfunc ( string) attribute.KeyValue {return CICDPipelineTaskRunURLFullKey.String()}// CICDSystemComponent returns an attribute KeyValue conforming to the// "cicd.system.component" semantic conventions. It represents the name of a// component of the CICD system.func ( string) attribute.KeyValue {return CICDSystemComponentKey.String()}// CICDWorkerID returns an attribute KeyValue conforming to the "cicd.worker.id"// semantic conventions. It represents the unique identifier of a worker within a// CICD system.func ( string) attribute.KeyValue {return CICDWorkerIDKey.String()}// CICDWorkerName returns an attribute KeyValue conforming to the// "cicd.worker.name" semantic conventions. It represents the name of a worker// within a CICD system.func ( string) attribute.KeyValue {return CICDWorkerNameKey.String()}// CICDWorkerURLFull returns an attribute KeyValue conforming to the// "cicd.worker.url.full" semantic conventions. It represents the [URL] of the// worker, providing the complete address in order to locate and identify the// worker.//// [URL]: https://wikipedia.org/wiki/URLfunc ( string) attribute.KeyValue {return CICDWorkerURLFullKey.String()}// Enum values for cicd.pipeline.action.namevar (// The pipeline run is executing a build.// Stability: developmentCICDPipelineActionNameBuild = CICDPipelineActionNameKey.String("BUILD")// The pipeline run is executing.// Stability: developmentCICDPipelineActionNameRun = CICDPipelineActionNameKey.String("RUN")// The pipeline run is executing a sync.// Stability: developmentCICDPipelineActionNameSync = CICDPipelineActionNameKey.String("SYNC"))// Enum values for cicd.pipeline.resultvar (// The pipeline run finished successfully.// Stability: developmentCICDPipelineResultSuccess = CICDPipelineResultKey.String("success")// The pipeline run did not finish successfully, eg. due to a compile error or a// failing test. Such failures are usually detected by non-zero exit codes of// the tools executed in the pipeline run.// Stability: developmentCICDPipelineResultFailure = CICDPipelineResultKey.String("failure")// The pipeline run failed due to an error in the CICD system, eg. due to the// worker being killed.// Stability: developmentCICDPipelineResultError = CICDPipelineResultKey.String("error")// A timeout caused the pipeline run to be interrupted.// Stability: developmentCICDPipelineResultTimeout = CICDPipelineResultKey.String("timeout")// The pipeline run was cancelled, eg. by a user manually cancelling the// pipeline run.// Stability: developmentCICDPipelineResultCancellation = CICDPipelineResultKey.String("cancellation")// The pipeline run was skipped, eg. due to a precondition not being met.// Stability: developmentCICDPipelineResultSkip = CICDPipelineResultKey.String("skip"))// Enum values for cicd.pipeline.run.statevar (// The run pending state spans from the event triggering the pipeline run until// the execution of the run starts (eg. time spent in a queue, provisioning// agents, creating run resources).//// Stability: developmentCICDPipelineRunStatePending = CICDPipelineRunStateKey.String("pending")// The executing state spans the execution of any run tasks (eg. build, test).// Stability: developmentCICDPipelineRunStateExecuting = CICDPipelineRunStateKey.String("executing")// The finalizing state spans from when the run has finished executing (eg.// cleanup of run resources).// Stability: developmentCICDPipelineRunStateFinalizing = CICDPipelineRunStateKey.String("finalizing"))// Enum values for cicd.pipeline.task.run.resultvar (// The task run finished successfully.// Stability: developmentCICDPipelineTaskRunResultSuccess = CICDPipelineTaskRunResultKey.String("success")// The task run did not finish successfully, eg. due to a compile error or a// failing test. Such failures are usually detected by non-zero exit codes of// the tools executed in the task run.// Stability: developmentCICDPipelineTaskRunResultFailure = CICDPipelineTaskRunResultKey.String("failure")// The task run failed due to an error in the CICD system, eg. due to the worker// being killed.// Stability: developmentCICDPipelineTaskRunResultError = CICDPipelineTaskRunResultKey.String("error")// A timeout caused the task run to be interrupted.// Stability: developmentCICDPipelineTaskRunResultTimeout = CICDPipelineTaskRunResultKey.String("timeout")// The task run was cancelled, eg. by a user manually cancelling the task run.// Stability: developmentCICDPipelineTaskRunResultCancellation = CICDPipelineTaskRunResultKey.String("cancellation")// The task run was skipped, eg. due to a precondition not being met.// Stability: developmentCICDPipelineTaskRunResultSkip = CICDPipelineTaskRunResultKey.String("skip"))// Enum values for cicd.pipeline.task.typevar (// build// Stability: developmentCICDPipelineTaskTypeBuild = CICDPipelineTaskTypeKey.String("build")// test// Stability: developmentCICDPipelineTaskTypeTest = CICDPipelineTaskTypeKey.String("test")// deploy// Stability: developmentCICDPipelineTaskTypeDeploy = CICDPipelineTaskTypeKey.String("deploy"))// Enum values for cicd.worker.statevar (// The worker is not performing work for the CICD system. It is available to the// CICD system to perform work on (online / idle).// Stability: developmentCICDWorkerStateAvailable = CICDWorkerStateKey.String("available")// The worker is performing work for the CICD system.// Stability: developmentCICDWorkerStateBusy = CICDWorkerStateKey.String("busy")// The worker is not available to the CICD system (disconnected / down).// Stability: developmentCICDWorkerStateOffline = CICDWorkerStateKey.String("offline"))// Namespace: clientconst (// ClientAddressKey is the attribute Key conforming to the "client.address"// semantic conventions. It represents the client address - domain name if// available without reverse DNS lookup; otherwise, IP address or Unix domain// socket name.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "client.example.com", "10.1.2.80", "/tmp/my.sock"// Note: When observed from the server side, and when communicating through an// intermediary, `client.address` SHOULD represent the client address behind any// intermediaries, for example proxies, if it's available.ClientAddressKey = attribute.Key("client.address")// ClientPortKey is the attribute Key conforming to the "client.port" semantic// conventions. It represents the client port number.//// Type: int// RequirementLevel: Recommended// Stability: Stable//// Examples: 65123// Note: When observed from the server side, and when communicating through an// intermediary, `client.port` SHOULD represent the client port behind any// intermediaries, for example proxies, if it's available.ClientPortKey = attribute.Key("client.port"))// ClientAddress returns an attribute KeyValue conforming to the "client.address"// semantic conventions. It represents the client address - domain name if// available without reverse DNS lookup; otherwise, IP address or Unix domain// socket name.func ( string) attribute.KeyValue {return ClientAddressKey.String()}// ClientPort returns an attribute KeyValue conforming to the "client.port"// semantic conventions. It represents the client port number.func ( int) attribute.KeyValue {return ClientPortKey.Int()}// Namespace: cloudconst (// CloudAccountIDKey is the attribute Key conforming to the "cloud.account.id"// semantic conventions. It represents the cloud account ID the resource is// assigned to.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "111111111111", "opentelemetry"CloudAccountIDKey = attribute.Key("cloud.account.id")// CloudAvailabilityZoneKey is the attribute Key conforming to the// "cloud.availability_zone" semantic conventions. It represents the cloud// regions often have multiple, isolated locations known as zones to increase// availability. Availability zone represents the zone where the resource is// running.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "us-east-1c"// Note: Availability zones are called "zones" on Alibaba Cloud and Google// Cloud.CloudAvailabilityZoneKey = attribute.Key("cloud.availability_zone")// CloudPlatformKey is the attribute Key conforming to the "cloud.platform"// semantic conventions. It represents the cloud platform in use.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: The prefix of the service SHOULD match the one specified in// `cloud.provider`.CloudPlatformKey = attribute.Key("cloud.platform")// CloudProviderKey is the attribute Key conforming to the "cloud.provider"// semantic conventions. It represents the name of the cloud provider.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:CloudProviderKey = attribute.Key("cloud.provider")// CloudRegionKey is the attribute Key conforming to the "cloud.region" semantic// conventions. It represents the geographical region within a cloud provider.// When associated with a resource, this attribute specifies the region where// the resource operates. When calling services or APIs deployed on a cloud,// this attribute identifies the region where the called destination is// deployed.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "us-central1", "us-east-1"// Note: Refer to your provider's docs to see the available regions, for example// [Alibaba Cloud regions], [AWS regions], [Azure regions],// [Google Cloud regions], or [Tencent Cloud regions].//// [Alibaba Cloud regions]: https://www.alibabacloud.com/help/doc-detail/40654.htm// [AWS regions]: https://aws.amazon.com/about-aws/global-infrastructure/regions_az/// [Azure regions]: https://azure.microsoft.com/global-infrastructure/geographies/// [Google Cloud regions]: https://cloud.google.com/about/locations// [Tencent Cloud regions]: https://www.tencentcloud.com/document/product/213/6091CloudRegionKey = attribute.Key("cloud.region")// CloudResourceIDKey is the attribute Key conforming to the "cloud.resource_id"// semantic conventions. It represents the 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).//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "arn:aws:lambda:REGION:ACCOUNT_ID:function:my-function",// "//run.googleapis.com/projects/PROJECT_ID/locations/LOCATION_ID/services/SERVICE_ID",// "/subscriptions/<SUBSCRIPTION_GUID>/resourceGroups/<RG>// /providers/Microsoft.Web/sites/<FUNCAPP>/functions/<FUNC>"// Note: 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.// The following well-known definitions MUST be used if you set this attribute// and they apply://// - **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// invocable with// multiple different aliases.// - **GCP:** The [URI of the resource]// - **Azure:** The [Fully Qualified Resource ID] of the invoked function,// *not* the function app, having the form//// `/subscriptions/<SUBSCRIPTION_GUID>/resourceGroups/<RG>/providers/Microsoft.Web/sites/<FUNCAPP>/functions/<FUNC>`// .// This means that a span attribute MUST be used, as an Azure function app// can host multiple functions that would usually share// a TracerProvider.////// [ARN]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html// [fully qualified resource ID]: https://learn.microsoft.com/rest/api/resources/resources/get-by-id// [full resource name]: https://google.aip.dev/122#full-resource-names// [ARN]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html// [alias suffix]: https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html// [URI of the resource]: https://cloud.google.com/iam/docs/full-resource-names// [Fully Qualified Resource ID]: https://learn.microsoft.com/rest/api/resources/resources/get-by-idCloudResourceIDKey = attribute.Key("cloud.resource_id"))// CloudAccountID returns an attribute KeyValue conforming to the// "cloud.account.id" semantic conventions. It represents the cloud account ID// the resource is assigned to.func ( string) attribute.KeyValue {return CloudAccountIDKey.String()}// CloudAvailabilityZone returns an attribute KeyValue conforming to the// "cloud.availability_zone" semantic conventions. It represents the cloud// regions often have multiple, isolated locations known as zones to increase// availability. Availability zone represents the zone where the resource is// running.func ( string) attribute.KeyValue {return CloudAvailabilityZoneKey.String()}// CloudRegion returns an attribute KeyValue conforming to the "cloud.region"// semantic conventions. It represents the geographical region within a cloud// provider. When associated with a resource, this attribute specifies the region// where the resource operates. When calling services or APIs deployed on a// cloud, this attribute identifies the region where the called destination is// deployed.func ( string) attribute.KeyValue {return CloudRegionKey.String()}// CloudResourceID returns an attribute KeyValue conforming to the// "cloud.resource_id" semantic conventions. It represents the 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).//// [ARN]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html// [fully qualified resource ID]: https://learn.microsoft.com/rest/api/resources/resources/get-by-id// [full resource name]: https://google.aip.dev/122#full-resource-namesfunc ( string) attribute.KeyValue {return CloudResourceIDKey.String()}// Enum values for cloud.platformvar (// Alibaba Cloud Elastic Compute Service// Stability: developmentCloudPlatformAlibabaCloudECS = CloudPlatformKey.String("alibaba_cloud_ecs")// Alibaba Cloud Function Compute// Stability: developmentCloudPlatformAlibabaCloudFC = CloudPlatformKey.String("alibaba_cloud_fc")// Red Hat OpenShift on Alibaba Cloud// Stability: developmentCloudPlatformAlibabaCloudOpenShift = CloudPlatformKey.String("alibaba_cloud_openshift")// AWS Elastic Compute Cloud// Stability: developmentCloudPlatformAWSEC2 = CloudPlatformKey.String("aws_ec2")// AWS Elastic Container Service// Stability: developmentCloudPlatformAWSECS = CloudPlatformKey.String("aws_ecs")// AWS Elastic Kubernetes Service// Stability: developmentCloudPlatformAWSEKS = CloudPlatformKey.String("aws_eks")// AWS Lambda// Stability: developmentCloudPlatformAWSLambda = CloudPlatformKey.String("aws_lambda")// AWS Elastic Beanstalk// Stability: developmentCloudPlatformAWSElasticBeanstalk = CloudPlatformKey.String("aws_elastic_beanstalk")// AWS App Runner// Stability: developmentCloudPlatformAWSAppRunner = CloudPlatformKey.String("aws_app_runner")// Red Hat OpenShift on AWS (ROSA)// Stability: developmentCloudPlatformAWSOpenShift = CloudPlatformKey.String("aws_openshift")// Azure Virtual Machines// Stability: developmentCloudPlatformAzureVM = CloudPlatformKey.String("azure.vm")// Azure Container Apps// Stability: developmentCloudPlatformAzureContainerApps = CloudPlatformKey.String("azure.container_apps")// Azure Container Instances// Stability: developmentCloudPlatformAzureContainerInstances = CloudPlatformKey.String("azure.container_instances")// Azure Kubernetes Service// Stability: developmentCloudPlatformAzureAKS = CloudPlatformKey.String("azure.aks")// Azure Functions// Stability: developmentCloudPlatformAzureFunctions = CloudPlatformKey.String("azure.functions")// Azure App Service// Stability: developmentCloudPlatformAzureAppService = CloudPlatformKey.String("azure.app_service")// Azure Red Hat OpenShift// Stability: developmentCloudPlatformAzureOpenShift = CloudPlatformKey.String("azure.openshift")// Google Bare Metal Solution (BMS)// Stability: developmentCloudPlatformGCPBareMetalSolution = CloudPlatformKey.String("gcp_bare_metal_solution")// Google Cloud Compute Engine (GCE)// Stability: developmentCloudPlatformGCPComputeEngine = CloudPlatformKey.String("gcp_compute_engine")// Google Cloud Run// Stability: developmentCloudPlatformGCPCloudRun = CloudPlatformKey.String("gcp_cloud_run")// Google Cloud Kubernetes Engine (GKE)// Stability: developmentCloudPlatformGCPKubernetesEngine = CloudPlatformKey.String("gcp_kubernetes_engine")// Google Cloud Functions (GCF)// Stability: developmentCloudPlatformGCPCloudFunctions = CloudPlatformKey.String("gcp_cloud_functions")// Google Cloud App Engine (GAE)// Stability: developmentCloudPlatformGCPAppEngine = CloudPlatformKey.String("gcp_app_engine")// Red Hat OpenShift on Google Cloud// Stability: developmentCloudPlatformGCPOpenShift = CloudPlatformKey.String("gcp_openshift")// Red Hat OpenShift on IBM Cloud// Stability: developmentCloudPlatformIBMCloudOpenShift = CloudPlatformKey.String("ibm_cloud_openshift")// Compute on Oracle Cloud Infrastructure (OCI)// Stability: developmentCloudPlatformOracleCloudCompute = CloudPlatformKey.String("oracle_cloud_compute")// Kubernetes Engine (OKE) on Oracle Cloud Infrastructure (OCI)// Stability: developmentCloudPlatformOracleCloudOKE = CloudPlatformKey.String("oracle_cloud_oke")// Tencent Cloud Cloud Virtual Machine (CVM)// Stability: developmentCloudPlatformTencentCloudCVM = CloudPlatformKey.String("tencent_cloud_cvm")// Tencent Cloud Elastic Kubernetes Service (EKS)// Stability: developmentCloudPlatformTencentCloudEKS = CloudPlatformKey.String("tencent_cloud_eks")// Tencent Cloud Serverless Cloud Function (SCF)// Stability: developmentCloudPlatformTencentCloudSCF = CloudPlatformKey.String("tencent_cloud_scf"))// Enum values for cloud.providervar (// Alibaba Cloud// Stability: developmentCloudProviderAlibabaCloud = CloudProviderKey.String("alibaba_cloud")// Amazon Web Services// Stability: developmentCloudProviderAWS = CloudProviderKey.String("aws")// Microsoft Azure// Stability: developmentCloudProviderAzure = CloudProviderKey.String("azure")// Google Cloud Platform// Stability: developmentCloudProviderGCP = CloudProviderKey.String("gcp")// Heroku Platform as a Service// Stability: developmentCloudProviderHeroku = CloudProviderKey.String("heroku")// IBM Cloud// Stability: developmentCloudProviderIBMCloud = CloudProviderKey.String("ibm_cloud")// Oracle Cloud Infrastructure (OCI)// Stability: developmentCloudProviderOracleCloud = CloudProviderKey.String("oracle_cloud")// Tencent Cloud// Stability: developmentCloudProviderTencentCloud = CloudProviderKey.String("tencent_cloud"))// Namespace: cloudeventsconst (// CloudEventsEventIDKey is the attribute Key conforming to the// "cloudevents.event_id" semantic conventions. It represents the [event_id]// uniquely identifies the event.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "123e4567-e89b-12d3-a456-426614174000", "0001"//// [event_id]: https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#idCloudEventsEventIDKey = attribute.Key("cloudevents.event_id")// CloudEventsEventSourceKey is the attribute Key conforming to the// "cloudevents.event_source" semantic conventions. It represents the [source]// identifies the context in which an event happened.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "https://github.com/cloudevents", "/cloudevents/spec/pull/123",// "my-service"//// [source]: https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#source-1CloudEventsEventSourceKey = attribute.Key("cloudevents.event_source")// CloudEventsEventSpecVersionKey is the attribute Key conforming to the// "cloudevents.event_spec_version" semantic conventions. It represents the// [version of the CloudEvents specification] which the event uses.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: 1.0//// [version of the CloudEvents specification]: https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#specversionCloudEventsEventSpecVersionKey = attribute.Key("cloudevents.event_spec_version")// CloudEventsEventSubjectKey is the attribute Key conforming to the// "cloudevents.event_subject" semantic conventions. It represents the [subject]// of the event in the context of the event producer (identified by source).//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: mynewfile.jpg//// [subject]: https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#subjectCloudEventsEventSubjectKey = attribute.Key("cloudevents.event_subject")// CloudEventsEventTypeKey is the attribute Key conforming to the// "cloudevents.event_type" semantic conventions. It represents the [event_type]// contains a value describing the type of event related to the originating// occurrence.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "com.github.pull_request.opened", "com.example.object.deleted.v2"//// [event_type]: https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#typeCloudEventsEventTypeKey = attribute.Key("cloudevents.event_type"))// CloudEventsEventID returns an attribute KeyValue conforming to the// "cloudevents.event_id" semantic conventions. It represents the [event_id]// uniquely identifies the event.//// [event_id]: https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#idfunc ( string) attribute.KeyValue {return CloudEventsEventIDKey.String()}// CloudEventsEventSource returns an attribute KeyValue conforming to the// "cloudevents.event_source" semantic conventions. It represents the [source]// identifies the context in which an event happened.//// [source]: https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#source-1func ( string) attribute.KeyValue {return CloudEventsEventSourceKey.String()}// CloudEventsEventSpecVersion returns an attribute KeyValue conforming to the// "cloudevents.event_spec_version" semantic conventions. It represents the// [version of the CloudEvents specification] which the event uses.//// [version of the CloudEvents specification]: https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#specversionfunc ( string) attribute.KeyValue {return CloudEventsEventSpecVersionKey.String()}// CloudEventsEventSubject returns an attribute KeyValue conforming to the// "cloudevents.event_subject" semantic conventions. It represents the [subject]// of the event in the context of the event producer (identified by source).//// [subject]: https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#subjectfunc ( string) attribute.KeyValue {return CloudEventsEventSubjectKey.String()}// CloudEventsEventType returns an attribute KeyValue conforming to the// "cloudevents.event_type" semantic conventions. It represents the [event_type]// contains a value describing the type of event related to the originating// occurrence.//// [event_type]: https://github.com/cloudevents/spec/blob/v1.0.2/cloudevents/spec.md#typefunc ( string) attribute.KeyValue {return CloudEventsEventTypeKey.String()}// Namespace: cloudfoundryconst (// CloudFoundryAppIDKey is the attribute Key conforming to the// "cloudfoundry.app.id" semantic conventions. It represents the guid of the// application.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "218fc5a9-a5f1-4b54-aa05-46717d0ab26d"// Note: Application instrumentation should use the value from environment// variable `VCAP_APPLICATION.application_id`. This is the same value as// reported by `cf app <app-name> --guid`.CloudFoundryAppIDKey = attribute.Key("cloudfoundry.app.id")// CloudFoundryAppInstanceIDKey is the attribute Key conforming to the// "cloudfoundry.app.instance.id" semantic conventions. It represents the index// of the application instance. 0 when just one instance is active.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "0", "1"// Note: CloudFoundry defines the `instance_id` in the [Loggregator v2 envelope]// .// It is used for logs and metrics emitted by CloudFoundry. It is// supposed to contain the application instance index for applications// deployed on the runtime.//// Application instrumentation should use the value from environment// variable `CF_INSTANCE_INDEX`.//// [Loggregator v2 envelope]: https://github.com/cloudfoundry/loggregator-api#v2-envelopeCloudFoundryAppInstanceIDKey = attribute.Key("cloudfoundry.app.instance.id")// CloudFoundryAppNameKey is the attribute Key conforming to the// "cloudfoundry.app.name" semantic conventions. It represents the name of the// application.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "my-app-name"// Note: Application instrumentation should use the value from environment// variable `VCAP_APPLICATION.application_name`. This is the same value// as reported by `cf apps`.CloudFoundryAppNameKey = attribute.Key("cloudfoundry.app.name")// CloudFoundryOrgIDKey is the attribute Key conforming to the// "cloudfoundry.org.id" semantic conventions. It represents the guid of the// CloudFoundry org the application is running in.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "218fc5a9-a5f1-4b54-aa05-46717d0ab26d"// Note: Application instrumentation should use the value from environment// variable `VCAP_APPLICATION.org_id`. This is the same value as// reported by `cf org <org-name> --guid`.CloudFoundryOrgIDKey = attribute.Key("cloudfoundry.org.id")// CloudFoundryOrgNameKey is the attribute Key conforming to the// "cloudfoundry.org.name" semantic conventions. It represents the name of the// CloudFoundry organization the app is running in.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "my-org-name"// Note: Application instrumentation should use the value from environment// variable `VCAP_APPLICATION.org_name`. This is the same value as// reported by `cf orgs`.CloudFoundryOrgNameKey = attribute.Key("cloudfoundry.org.name")// CloudFoundryProcessIDKey is the attribute Key conforming to the// "cloudfoundry.process.id" semantic conventions. It represents the UID// identifying the process.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "218fc5a9-a5f1-4b54-aa05-46717d0ab26d"// Note: Application instrumentation should use the value from environment// variable `VCAP_APPLICATION.process_id`. It is supposed to be equal to// `VCAP_APPLICATION.app_id` for applications deployed to the runtime.// For system components, this could be the actual PID.CloudFoundryProcessIDKey = attribute.Key("cloudfoundry.process.id")// CloudFoundryProcessTypeKey is the attribute Key conforming to the// "cloudfoundry.process.type" semantic conventions. It represents the type of// process.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "web"// Note: CloudFoundry applications can consist of multiple jobs. Usually the// main process will be of type `web`. There can be additional background// tasks or side-cars with different process types.CloudFoundryProcessTypeKey = attribute.Key("cloudfoundry.process.type")// CloudFoundrySpaceIDKey is the attribute Key conforming to the// "cloudfoundry.space.id" semantic conventions. It represents the guid of the// CloudFoundry space the application is running in.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "218fc5a9-a5f1-4b54-aa05-46717d0ab26d"// Note: Application instrumentation should use the value from environment// variable `VCAP_APPLICATION.space_id`. This is the same value as// reported by `cf space <space-name> --guid`.CloudFoundrySpaceIDKey = attribute.Key("cloudfoundry.space.id")// CloudFoundrySpaceNameKey is the attribute Key conforming to the// "cloudfoundry.space.name" semantic conventions. It represents the name of the// CloudFoundry space the application is running in.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "my-space-name"// Note: Application instrumentation should use the value from environment// variable `VCAP_APPLICATION.space_name`. This is the same value as// reported by `cf spaces`.CloudFoundrySpaceNameKey = attribute.Key("cloudfoundry.space.name")// CloudFoundrySystemIDKey is the attribute Key conforming to the// "cloudfoundry.system.id" semantic conventions. It represents a guid or// another name describing the event source.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "cf/gorouter"// Note: CloudFoundry defines the `source_id` in the [Loggregator v2 envelope].// It is used for logs and metrics emitted by CloudFoundry. It is// supposed to contain the component name, e.g. "gorouter", for// CloudFoundry components.//// When system components are instrumented, values from the// [Bosh spec]// should be used. The `system.id` should be set to// `spec.deployment/spec.name`.//// [Loggregator v2 envelope]: https://github.com/cloudfoundry/loggregator-api#v2-envelope// [Bosh spec]: https://bosh.io/docs/jobs/#properties-specCloudFoundrySystemIDKey = attribute.Key("cloudfoundry.system.id")// CloudFoundrySystemInstanceIDKey is the attribute Key conforming to the// "cloudfoundry.system.instance.id" semantic conventions. It represents a guid// describing the concrete instance of the event source.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "218fc5a9-a5f1-4b54-aa05-46717d0ab26d"// Note: CloudFoundry defines the `instance_id` in the [Loggregator v2 envelope]// .// It is used for logs and metrics emitted by CloudFoundry. It is// supposed to contain the vm id for CloudFoundry components.//// When system components are instrumented, values from the// [Bosh spec]// should be used. The `system.instance.id` should be set to `spec.id`.//// [Loggregator v2 envelope]: https://github.com/cloudfoundry/loggregator-api#v2-envelope// [Bosh spec]: https://bosh.io/docs/jobs/#properties-specCloudFoundrySystemInstanceIDKey = attribute.Key("cloudfoundry.system.instance.id"))// CloudFoundryAppID returns an attribute KeyValue conforming to the// "cloudfoundry.app.id" semantic conventions. It represents the guid of the// application.func ( string) attribute.KeyValue {return CloudFoundryAppIDKey.String()}// CloudFoundryAppInstanceID returns an attribute KeyValue conforming to the// "cloudfoundry.app.instance.id" semantic conventions. It represents the index// of the application instance. 0 when just one instance is active.func ( string) attribute.KeyValue {return CloudFoundryAppInstanceIDKey.String()}// CloudFoundryAppName returns an attribute KeyValue conforming to the// "cloudfoundry.app.name" semantic conventions. It represents the name of the// application.func ( string) attribute.KeyValue {return CloudFoundryAppNameKey.String()}// CloudFoundryOrgID returns an attribute KeyValue conforming to the// "cloudfoundry.org.id" semantic conventions. It represents the guid of the// CloudFoundry org the application is running in.func ( string) attribute.KeyValue {return CloudFoundryOrgIDKey.String()}// CloudFoundryOrgName returns an attribute KeyValue conforming to the// "cloudfoundry.org.name" semantic conventions. It represents the name of the// CloudFoundry organization the app is running in.func ( string) attribute.KeyValue {return CloudFoundryOrgNameKey.String()}// CloudFoundryProcessID returns an attribute KeyValue conforming to the// "cloudfoundry.process.id" semantic conventions. It represents the UID// identifying the process.func ( string) attribute.KeyValue {return CloudFoundryProcessIDKey.String()}// CloudFoundryProcessType returns an attribute KeyValue conforming to the// "cloudfoundry.process.type" semantic conventions. It represents the type of// process.func ( string) attribute.KeyValue {return CloudFoundryProcessTypeKey.String()}// CloudFoundrySpaceID returns an attribute KeyValue conforming to the// "cloudfoundry.space.id" semantic conventions. It represents the guid of the// CloudFoundry space the application is running in.func ( string) attribute.KeyValue {return CloudFoundrySpaceIDKey.String()}// CloudFoundrySpaceName returns an attribute KeyValue conforming to the// "cloudfoundry.space.name" semantic conventions. It represents the name of the// CloudFoundry space the application is running in.func ( string) attribute.KeyValue {return CloudFoundrySpaceNameKey.String()}// CloudFoundrySystemID returns an attribute KeyValue conforming to the// "cloudfoundry.system.id" semantic conventions. It represents a guid or another// name describing the event source.func ( string) attribute.KeyValue {return CloudFoundrySystemIDKey.String()}// CloudFoundrySystemInstanceID returns an attribute KeyValue conforming to the// "cloudfoundry.system.instance.id" semantic conventions. It represents a guid// describing the concrete instance of the event source.func ( string) attribute.KeyValue {return CloudFoundrySystemInstanceIDKey.String()}// Namespace: codeconst (// CodeColumnNumberKey is the attribute Key conforming to the// "code.column.number" semantic conventions. It represents the column number in// `code.file.path` best representing the operation. It SHOULD point within the// code unit named in `code.function.name`. This attribute MUST NOT be used on// the Profile signal since the data is already captured in 'message Line'. This// constraint is imposed to prevent redundancy and maintain data integrity.//// Type: int// RequirementLevel: Recommended// Stability: StableCodeColumnNumberKey = attribute.Key("code.column.number")// CodeFilePathKey is the attribute Key conforming to the "code.file.path"// semantic conventions. It represents the source code file name that identifies// the code unit as uniquely as possible (preferably an absolute file path).// This attribute MUST NOT be used on the Profile signal since the data is// already captured in 'message Function'. This constraint is imposed to prevent// redundancy and maintain data integrity.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: /usr/local/MyApplication/content_root/app/index.phpCodeFilePathKey = attribute.Key("code.file.path")// CodeFunctionNameKey is the attribute Key conforming to the// "code.function.name" semantic conventions. It represents the method or// function fully-qualified name without arguments. The value should fit the// natural representation of the language runtime, which is also likely the same// used within `code.stacktrace` attribute value. This attribute MUST NOT be// used on the Profile signal since the data is already captured in 'message// Function'. This constraint is imposed to prevent redundancy and maintain data// integrity.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "com.example.MyHttpService.serveRequest",// "GuzzleHttp\Client::transfer", "fopen"// Note: Values and format depends on each language runtime, thus it is// impossible to provide an exhaustive list of examples.// The values are usually the same (or prefixes of) the ones found in native// stack trace representation stored in// `code.stacktrace` without information on arguments.//// Examples://// - Java method: `com.example.MyHttpService.serveRequest`// - Java anonymous class method: `com.mycompany.Main$1.myMethod`// - Java lambda method:// `com.mycompany.Main$$Lambda/0x0000748ae4149c00.myMethod`// - PHP function: `GuzzleHttp\Client::transfer`// - Go function: `github.com/my/repo/pkg.foo.func5`// - Elixir: `OpenTelemetry.Ctx.new`// - Erlang: `opentelemetry_ctx:new`// - Rust: `playground::my_module::my_cool_func`// - C function: `fopen`CodeFunctionNameKey = attribute.Key("code.function.name")// CodeLineNumberKey is the attribute Key conforming to the "code.line.number"// semantic conventions. It represents the line number in `code.file.path` best// representing the operation. It SHOULD point within the code unit named in// `code.function.name`. This attribute MUST NOT be used on the Profile signal// since the data is already captured in 'message Line'. This constraint is// imposed to prevent redundancy and maintain data integrity.//// Type: int// RequirementLevel: Recommended// Stability: StableCodeLineNumberKey = attribute.Key("code.line.number")// CodeStacktraceKey is the attribute Key conforming to the "code.stacktrace"// semantic conventions. It represents a stacktrace as a string in the natural// representation for the language runtime. The representation is identical to// [`exception.stacktrace`]. This attribute MUST NOT be used on the Profile// signal since the data is already captured in 'message Location'. This// constraint is imposed to prevent redundancy and maintain data integrity.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: at com.example.GenerateTrace.methodB(GenerateTrace.java:13)\n at// com.example.GenerateTrace.methodA(GenerateTrace.java:9)\n at// com.example.GenerateTrace.main(GenerateTrace.java:5)//// [`exception.stacktrace`]: /docs/exceptions/exceptions-spans.md#stacktrace-representationCodeStacktraceKey = attribute.Key("code.stacktrace"))// CodeColumnNumber returns an attribute KeyValue conforming to the// "code.column.number" semantic conventions. It represents the column number in// `code.file.path` best representing the operation. It SHOULD point within the// code unit named in `code.function.name`. This attribute MUST NOT be used on// the Profile signal since the data is already captured in 'message Line'. This// constraint is imposed to prevent redundancy and maintain data integrity.func ( int) attribute.KeyValue {return CodeColumnNumberKey.Int()}// CodeFilePath returns an attribute KeyValue conforming to the "code.file.path"// semantic conventions. It represents the source code file name that identifies// the code unit as uniquely as possible (preferably an absolute file path). This// attribute MUST NOT be used on the Profile signal since the data is already// captured in 'message Function'. This constraint is imposed to prevent// redundancy and maintain data integrity.func ( string) attribute.KeyValue {return CodeFilePathKey.String()}// CodeFunctionName returns an attribute KeyValue conforming to the// "code.function.name" semantic conventions. It represents the method or// function fully-qualified name without arguments. The value should fit the// natural representation of the language runtime, which is also likely the same// used within `code.stacktrace` attribute value. This attribute MUST NOT be used// on the Profile signal since the data is already captured in 'message// Function'. This constraint is imposed to prevent redundancy and maintain data// integrity.func ( string) attribute.KeyValue {return CodeFunctionNameKey.String()}// CodeLineNumber returns an attribute KeyValue conforming to the// "code.line.number" semantic conventions. It represents the line number in// `code.file.path` best representing the operation. It SHOULD point within the// code unit named in `code.function.name`. This attribute MUST NOT be used on// the Profile signal since the data is already captured in 'message Line'. This// constraint is imposed to prevent redundancy and maintain data integrity.func ( int) attribute.KeyValue {return CodeLineNumberKey.Int()}// CodeStacktrace returns an attribute KeyValue conforming to the// "code.stacktrace" semantic conventions. It represents a stacktrace as a string// in the natural representation for the language runtime. The representation is// identical to [`exception.stacktrace`]. This attribute MUST NOT be used on the// Profile signal since the data is already captured in 'message Location'. This// constraint is imposed to prevent redundancy and maintain data integrity.//// [`exception.stacktrace`]: /docs/exceptions/exceptions-spans.md#stacktrace-representationfunc ( string) attribute.KeyValue {return CodeStacktraceKey.String()}// Namespace: containerconst (// ContainerCommandKey is the attribute Key conforming to the// "container.command" semantic conventions. It represents the command used to// run the container (i.e. the command name).//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "otelcontribcol"// Note: If using embedded credentials or sensitive data, it is recommended to// remove them to prevent potential leakage.ContainerCommandKey = attribute.Key("container.command")// ContainerCommandArgsKey is the attribute Key conforming to the// "container.command_args" semantic conventions. It represents the all the// command arguments (including the command/executable itself) run by the// container.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "otelcontribcol", "--config", "config.yaml"ContainerCommandArgsKey = attribute.Key("container.command_args")// ContainerCommandLineKey is the attribute Key conforming to the// "container.command_line" semantic conventions. It represents the full command// run by the container as a single string representing the full command.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "otelcontribcol --config config.yaml"ContainerCommandLineKey = attribute.Key("container.command_line")// ContainerCSIPluginNameKey is the attribute Key conforming to the// "container.csi.plugin.name" semantic conventions. It represents the name of// the CSI ([Container Storage Interface]) plugin used by the volume.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "pd.csi.storage.gke.io"// Note: This can sometimes be referred to as a "driver" in CSI implementations.// This should represent the `name` field of the GetPluginInfo RPC.//// [Container Storage Interface]: https://github.com/container-storage-interface/specContainerCSIPluginNameKey = attribute.Key("container.csi.plugin.name")// ContainerCSIVolumeIDKey is the attribute Key conforming to the// "container.csi.volume.id" semantic conventions. It represents the unique// volume ID returned by the CSI ([Container Storage Interface]) plugin.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "projects/my-gcp-project/zones/my-gcp-zone/disks/my-gcp-disk"// Note: This can sometimes be referred to as a "volume handle" in CSI// implementations. This should represent the `Volume.volume_id` field in CSI// spec.//// [Container Storage Interface]: https://github.com/container-storage-interface/specContainerCSIVolumeIDKey = attribute.Key("container.csi.volume.id")// ContainerIDKey is the attribute Key conforming to the "container.id" semantic// conventions. It represents the container ID. Usually a UUID, as for example// used to [identify Docker containers]. The UUID might be abbreviated.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "a3bf90e006b2"//// [identify Docker containers]: https://docs.docker.com/engine/containers/run/#container-identificationContainerIDKey = attribute.Key("container.id")// ContainerImageIDKey is the attribute Key conforming to the// "container.image.id" semantic conventions. It represents the runtime specific// image identifier. Usually a hash algorithm followed by a UUID.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples:// "sha256:19c92d0a00d1b66d897bceaa7319bee0dd38a10a851c60bcec9474aa3f01e50f"// Note: Docker defines a sha256 of the image id; `container.image.id`// corresponds to the `Image` field from the Docker container inspect [API]// endpoint.// K8s defines a link to the container registry repository with digest// `"imageID": "registry.azurecr.io /namespace/service/dockerfile@sha256:bdeabd40c3a8a492eaf9e8e44d0ebbb84bac7ee25ac0cf8a7159d25f62555625"`// .// The ID is assigned by the container runtime and can vary in different// environments. Consider using `oci.manifest.digest` if it is important to// identify the same image in different environments/runtimes.//// [API]: https://docs.docker.com/engine/api/v1.43/#tag/Container/operation/ContainerInspectContainerImageIDKey = attribute.Key("container.image.id")// ContainerImageNameKey is the attribute Key conforming to the// "container.image.name" semantic conventions. It represents the name of the// image the container was built on.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "gcr.io/opentelemetry/operator"ContainerImageNameKey = attribute.Key("container.image.name")// ContainerImageRepoDigestsKey is the attribute Key conforming to the// "container.image.repo_digests" semantic conventions. It represents the repo// digests of the container image as provided by the container runtime.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples:// "example@sha256:afcc7f1ac1b49db317a7196c902e61c6c3c4607d63599ee1a82d702d249a0ccb",// "internal.registry.example.com:5000/example@sha256:b69959407d21e8a062e0416bf13405bb2b71ed7a84dde4158ebafacfa06f5578"// Note: [Docker] and [CRI] report those under the `RepoDigests` field.//// [Docker]: https://docs.docker.com/engine/api/v1.43/#tag/Image/operation/ImageInspect// [CRI]: https://github.com/kubernetes/cri-api/blob/c75ef5b473bbe2d0a4fc92f82235efd665ea8e9f/pkg/apis/runtime/v1/api.proto#L1237-L1238ContainerImageRepoDigestsKey = attribute.Key("container.image.repo_digests")// ContainerImageTagsKey is the attribute Key conforming to the// "container.image.tags" semantic conventions. It represents the container// image tags. An example can be found in [Docker Image Inspect]. Should be only// the `<tag>` section of the full name for example from// `registry.example.com/my-org/my-image:<tag>`.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "v1.27.1", "3.5.7-0"//// [Docker Image Inspect]: https://docs.docker.com/engine/api/v1.43/#tag/Image/operation/ImageInspectContainerImageTagsKey = attribute.Key("container.image.tags")// ContainerNameKey is the attribute Key conforming to the "container.name"// semantic conventions. It represents the container name used by container// runtime.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "opentelemetry-autoconf"ContainerNameKey = attribute.Key("container.name")// ContainerRuntimeDescriptionKey is the attribute Key conforming to the// "container.runtime.description" semantic conventions. It represents a// description about the runtime which could include, for example details about// the CRI/API version being used or other customisations.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "docker://19.3.1 - CRI: 1.22.0"ContainerRuntimeDescriptionKey = attribute.Key("container.runtime.description")// ContainerRuntimeNameKey is the attribute Key conforming to the// "container.runtime.name" semantic conventions. It represents the container// runtime managing this container.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "docker", "containerd", "rkt"ContainerRuntimeNameKey = attribute.Key("container.runtime.name")// ContainerRuntimeVersionKey is the attribute Key conforming to the// "container.runtime.version" semantic conventions. It represents the version// of the runtime of this process, as returned by the runtime without// modification.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: 1.0.0ContainerRuntimeVersionKey = attribute.Key("container.runtime.version"))// ContainerCommand returns an attribute KeyValue conforming to the// "container.command" semantic conventions. It represents the command used to// run the container (i.e. the command name).func ( string) attribute.KeyValue {return ContainerCommandKey.String()}// ContainerCommandArgs returns an attribute KeyValue conforming to the// "container.command_args" semantic conventions. It represents the all the// command arguments (including the command/executable itself) run by the// container.func ( ...string) attribute.KeyValue {return ContainerCommandArgsKey.StringSlice()}// ContainerCommandLine returns an attribute KeyValue conforming to the// "container.command_line" semantic conventions. It represents the full command// run by the container as a single string representing the full command.func ( string) attribute.KeyValue {return ContainerCommandLineKey.String()}// ContainerCSIPluginName returns an attribute KeyValue conforming to the// "container.csi.plugin.name" semantic conventions. It represents the name of// the CSI ([Container Storage Interface]) plugin used by the volume.//// [Container Storage Interface]: https://github.com/container-storage-interface/specfunc ( string) attribute.KeyValue {return ContainerCSIPluginNameKey.String()}// ContainerCSIVolumeID returns an attribute KeyValue conforming to the// "container.csi.volume.id" semantic conventions. It represents the unique// volume ID returned by the CSI ([Container Storage Interface]) plugin.//// [Container Storage Interface]: https://github.com/container-storage-interface/specfunc ( string) attribute.KeyValue {return ContainerCSIVolumeIDKey.String()}// ContainerID returns an attribute KeyValue conforming to the "container.id"// semantic conventions. It represents the container ID. Usually a UUID, as for// example used to [identify Docker containers]. The UUID might be abbreviated.//// [identify Docker containers]: https://docs.docker.com/engine/containers/run/#container-identificationfunc ( string) attribute.KeyValue {return ContainerIDKey.String()}// ContainerImageID returns an attribute KeyValue conforming to the// "container.image.id" semantic conventions. It represents the runtime specific// image identifier. Usually a hash algorithm followed by a UUID.func ( string) attribute.KeyValue {return ContainerImageIDKey.String()}// ContainerImageName returns an attribute KeyValue conforming to the// "container.image.name" semantic conventions. It represents the name of the// image the container was built on.func ( string) attribute.KeyValue {return ContainerImageNameKey.String()}// ContainerImageRepoDigests returns an attribute KeyValue conforming to the// "container.image.repo_digests" semantic conventions. It represents the repo// digests of the container image as provided by the container runtime.func ( ...string) attribute.KeyValue {return ContainerImageRepoDigestsKey.StringSlice()}// ContainerImageTags returns an attribute KeyValue conforming to the// "container.image.tags" semantic conventions. It represents the container image// tags. An example can be found in [Docker Image Inspect]. Should be only the// `<tag>` section of the full name for example from// `registry.example.com/my-org/my-image:<tag>`.//// [Docker Image Inspect]: https://docs.docker.com/engine/api/v1.43/#tag/Image/operation/ImageInspectfunc ( ...string) attribute.KeyValue {return ContainerImageTagsKey.StringSlice()}// ContainerLabel returns an attribute KeyValue conforming to the// "container.label" semantic conventions. It represents the container labels,// `<key>` being the label name, the value being the label value.func ( string, string) attribute.KeyValue {return attribute.String("container.label."+, )}// ContainerName returns an attribute KeyValue conforming to the "container.name"// semantic conventions. It represents the container name used by container// runtime.func ( string) attribute.KeyValue {return ContainerNameKey.String()}// ContainerRuntimeDescription returns an attribute KeyValue conforming to the// "container.runtime.description" semantic conventions. It represents a// description about the runtime which could include, for example details about// the CRI/API version being used or other customisations.func ( string) attribute.KeyValue {return ContainerRuntimeDescriptionKey.String()}// ContainerRuntimeName returns an attribute KeyValue conforming to the// "container.runtime.name" semantic conventions. It represents the container// runtime managing this container.func ( string) attribute.KeyValue {return ContainerRuntimeNameKey.String()}// ContainerRuntimeVersion returns an attribute KeyValue conforming to the// "container.runtime.version" semantic conventions. It represents the version of// the runtime of this process, as returned by the runtime without modification.func ( string) attribute.KeyValue {return ContainerRuntimeVersionKey.String()}// Namespace: cpuconst (// CPULogicalNumberKey is the attribute Key conforming to the// "cpu.logical_number" semantic conventions. It represents the logical CPU// number [0..n-1].//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 1CPULogicalNumberKey = attribute.Key("cpu.logical_number")// CPUModeKey is the attribute Key conforming to the "cpu.mode" semantic// conventions. It represents the mode of the CPU.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "user", "system"CPUModeKey = attribute.Key("cpu.mode"))// CPULogicalNumber returns an attribute KeyValue conforming to the// "cpu.logical_number" semantic conventions. It represents the logical CPU// number [0..n-1].func ( int) attribute.KeyValue {return CPULogicalNumberKey.Int()}// Enum values for cpu.modevar (// User// Stability: developmentCPUModeUser = CPUModeKey.String("user")// System// Stability: developmentCPUModeSystem = CPUModeKey.String("system")// Nice// Stability: developmentCPUModeNice = CPUModeKey.String("nice")// Idle// Stability: developmentCPUModeIdle = CPUModeKey.String("idle")// IO Wait// Stability: developmentCPUModeIOWait = CPUModeKey.String("iowait")// Interrupt// Stability: developmentCPUModeInterrupt = CPUModeKey.String("interrupt")// Steal// Stability: developmentCPUModeSteal = CPUModeKey.String("steal")// Kernel// Stability: developmentCPUModeKernel = CPUModeKey.String("kernel"))// Namespace: dbconst (// DBClientConnectionPoolNameKey is the attribute Key conforming to the// "db.client.connection.pool.name" semantic conventions. It represents 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.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "myDataSource"DBClientConnectionPoolNameKey = attribute.Key("db.client.connection.pool.name")// DBClientConnectionStateKey is the attribute Key conforming to the// "db.client.connection.state" semantic conventions. It represents the state of// a connection in the pool.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "idle"DBClientConnectionStateKey = attribute.Key("db.client.connection.state")// DBCollectionNameKey is the attribute Key conforming to the// "db.collection.name" semantic conventions. It represents the name of a// collection (table, container) within the database.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "public.users", "customers"// Note: It is RECOMMENDED to capture the value as provided by the application// without attempting to do any case normalization.//// The collection name SHOULD NOT be extracted from `db.query.text`,// when the database system supports query text with multiple collections// in non-batch operations.//// For batch operations, if the individual operations are known to have the same// collection name then that collection name SHOULD be used.DBCollectionNameKey = attribute.Key("db.collection.name")// DBNamespaceKey is the attribute Key conforming to the "db.namespace" semantic// conventions. It represents the name of the database, fully qualified within// the server address and port.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "customers", "test.users"// Note: If a database system has multiple namespace components, they SHOULD be// concatenated from the most general to the most specific namespace component,// using `|` as a separator between the components. Any missing components (and// their associated separators) SHOULD be omitted.// Semantic conventions for individual database systems SHOULD document what// `db.namespace` means in the context of that system.// It is RECOMMENDED to capture the value as provided by the application without// attempting to do any case normalization.DBNamespaceKey = attribute.Key("db.namespace")// DBOperationBatchSizeKey is the attribute Key conforming to the// "db.operation.batch.size" semantic conventions. It represents the number of// queries included in a batch operation.//// Type: int// RequirementLevel: Recommended// Stability: Stable//// Examples: 2, 3, 4// Note: Operations are only considered batches when they contain two or more// operations, and so `db.operation.batch.size` SHOULD never be `1`.DBOperationBatchSizeKey = attribute.Key("db.operation.batch.size")// DBOperationNameKey is the attribute Key conforming to the "db.operation.name"// semantic conventions. It represents the name of the operation or command// being executed.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "findAndModify", "HMSET", "SELECT"// Note: It is RECOMMENDED to capture the value as provided by the application// without attempting to do any case normalization.//// The operation name SHOULD NOT be extracted from `db.query.text`,// when the database system supports query text with multiple operations// in non-batch operations.//// If spaces can occur in the operation name, multiple consecutive spaces// SHOULD be normalized to a single space.//// 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.DBOperationNameKey = attribute.Key("db.operation.name")// DBQuerySummaryKey is the attribute Key conforming to the "db.query.summary"// semantic conventions. It represents the low cardinality summary of a database// query.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "SELECT wuser_table", "INSERT shipping_details SELECT orders", "get// user by id"// Note: The query summary describes a class of database queries and is useful// as a grouping key, especially when analyzing telemetry for database// calls involving complex queries.//// Summary may be available to the instrumentation through// instrumentation hooks or other means. If it is not available,// instrumentations// that support query parsing SHOULD generate a summary following// [Generating query summary]// section.//// [Generating query summary]: /docs/database/database-spans.md#generating-a-summary-of-the-queryDBQuerySummaryKey = attribute.Key("db.query.summary")// DBQueryTextKey is the attribute Key conforming to the "db.query.text"// semantic conventions. It represents the database query being executed.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "SELECT * FROM wuser_table where username = ?", "SET mykey ?"// Note: 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.// Parameterized query text SHOULD NOT be sanitized. 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.//// [Sanitization of `db.query.text`]: /docs/database/database-spans.md#sanitization-of-dbquerytextDBQueryTextKey = attribute.Key("db.query.text")// DBResponseReturnedRowsKey is the attribute Key conforming to the// "db.response.returned_rows" semantic conventions. It represents the number of// rows returned by the operation.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 10, 30, 1000DBResponseReturnedRowsKey = attribute.Key("db.response.returned_rows")// DBResponseStatusCodeKey is the attribute Key conforming to the// "db.response.status_code" semantic conventions. It represents the database// response status code.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "102", "ORA-17002", "08P01", "404"// Note: The status code returned by the database. Usually it represents an// error code, but may also represent partial success, warning, or differentiate// between various types of successful outcomes.// Semantic conventions for individual database systems SHOULD document what// `db.response.status_code` means in the context of that system.DBResponseStatusCodeKey = attribute.Key("db.response.status_code")// DBStoredProcedureNameKey is the attribute Key conforming to the// "db.stored_procedure.name" semantic conventions. It represents the name of a// stored procedure within the database.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "GetCustomer"// Note: It is RECOMMENDED to capture the value as provided by the application// without attempting to do any case normalization.//// For batch operations, if the individual operations are known to have the same// stored procedure name then that stored procedure name SHOULD be used.DBStoredProcedureNameKey = attribute.Key("db.stored_procedure.name")// DBSystemNameKey is the attribute Key conforming to the "db.system.name"// semantic conventions. It represents the database management system (DBMS)// product as identified by the client instrumentation.//// Type: Enum// RequirementLevel: Recommended// Stability: Stable//// Examples:// Note: The actual DBMS may differ from the one identified by the client. For// example, when using PostgreSQL client libraries to connect to a CockroachDB,// the `db.system.name` is set to `postgresql` based on the instrumentation's// best knowledge.DBSystemNameKey = attribute.Key("db.system.name"))// DBClientConnectionPoolName returns an attribute KeyValue conforming to the// "db.client.connection.pool.name" semantic conventions. It represents 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.func ( string) attribute.KeyValue {return DBClientConnectionPoolNameKey.String()}// DBCollectionName returns an attribute KeyValue conforming to the// "db.collection.name" semantic conventions. It represents the name of a// collection (table, container) within the database.func ( string) attribute.KeyValue {return DBCollectionNameKey.String()}// DBNamespace returns an attribute KeyValue conforming to the "db.namespace"// semantic conventions. It represents the name of the database, fully qualified// within the server address and port.func ( string) attribute.KeyValue {return DBNamespaceKey.String()}// DBOperationBatchSize returns an attribute KeyValue conforming to the// "db.operation.batch.size" semantic conventions. It represents the number of// queries included in a batch operation.func ( int) attribute.KeyValue {return DBOperationBatchSizeKey.Int()}// DBOperationName returns an attribute KeyValue conforming to the// "db.operation.name" semantic conventions. It represents the name of the// operation or command being executed.func ( string) attribute.KeyValue {return DBOperationNameKey.String()}// DBOperationParameter returns an attribute KeyValue conforming to the// "db.operation.parameter" semantic conventions. It represents a database// operation parameter, with `<key>` being the parameter name, and the attribute// value being a string representation of the parameter value.func ( string, string) attribute.KeyValue {return attribute.String("db.operation.parameter."+, )}// DBQueryParameter returns an attribute KeyValue conforming to the// "db.query.parameter" semantic conventions. It represents a database query// parameter, with `<key>` being the parameter name, and the attribute value// being a string representation of the parameter value.func ( string, string) attribute.KeyValue {return attribute.String("db.query.parameter."+, )}// DBQuerySummary returns an attribute KeyValue conforming to the// "db.query.summary" semantic conventions. It represents the low cardinality// summary of a database query.func ( string) attribute.KeyValue {return DBQuerySummaryKey.String()}// DBQueryText returns an attribute KeyValue conforming to the "db.query.text"// semantic conventions. It represents the database query being executed.func ( string) attribute.KeyValue {return DBQueryTextKey.String()}// DBResponseReturnedRows returns an attribute KeyValue conforming to the// "db.response.returned_rows" semantic conventions. It represents the number of// rows returned by the operation.func ( int) attribute.KeyValue {return DBResponseReturnedRowsKey.Int()}// DBResponseStatusCode returns an attribute KeyValue conforming to the// "db.response.status_code" semantic conventions. It represents the database// response status code.func ( string) attribute.KeyValue {return DBResponseStatusCodeKey.String()}// DBStoredProcedureName returns an attribute KeyValue conforming to the// "db.stored_procedure.name" semantic conventions. It represents the name of a// stored procedure within the database.func ( string) attribute.KeyValue {return DBStoredProcedureNameKey.String()}// Enum values for db.client.connection.statevar (// idle// Stability: developmentDBClientConnectionStateIdle = DBClientConnectionStateKey.String("idle")// used// Stability: developmentDBClientConnectionStateUsed = DBClientConnectionStateKey.String("used"))// Enum values for db.system.namevar (// Some other SQL database. Fallback only.// Stability: developmentDBSystemNameOtherSQL = DBSystemNameKey.String("other_sql")// [Adabas (Adaptable Database System)]// Stability: development//// [Adabas (Adaptable Database System)]: https://documentation.softwareag.com/?pf=adabasDBSystemNameSoftwareagAdabas = DBSystemNameKey.String("softwareag.adabas")// [Actian Ingres]// Stability: development//// [Actian Ingres]: https://www.actian.com/databases/ingres/DBSystemNameActianIngres = DBSystemNameKey.String("actian.ingres")// [Amazon DynamoDB]// Stability: development//// [Amazon DynamoDB]: https://aws.amazon.com/pm/dynamodb/DBSystemNameAWSDynamoDB = DBSystemNameKey.String("aws.dynamodb")// [Amazon Redshift]// Stability: development//// [Amazon Redshift]: https://aws.amazon.com/redshift/DBSystemNameAWSRedshift = DBSystemNameKey.String("aws.redshift")// [Azure Cosmos DB]// Stability: development//// [Azure Cosmos DB]: https://learn.microsoft.com/azure/cosmos-dbDBSystemNameAzureCosmosDB = DBSystemNameKey.String("azure.cosmosdb")// [InterSystems Caché]// Stability: development//// [InterSystems Caché]: https://www.intersystems.com/products/cache/DBSystemNameIntersystemsCache = DBSystemNameKey.String("intersystems.cache")// [Apache Cassandra]// Stability: development//// [Apache Cassandra]: https://cassandra.apache.org/DBSystemNameCassandra = DBSystemNameKey.String("cassandra")// [ClickHouse]// Stability: development//// [ClickHouse]: https://clickhouse.com/DBSystemNameClickHouse = DBSystemNameKey.String("clickhouse")// [CockroachDB]// Stability: development//// [CockroachDB]: https://www.cockroachlabs.com/DBSystemNameCockroachDB = DBSystemNameKey.String("cockroachdb")// [Couchbase]// Stability: development//// [Couchbase]: https://www.couchbase.com/DBSystemNameCouchbase = DBSystemNameKey.String("couchbase")// [Apache CouchDB]// Stability: development//// [Apache CouchDB]: https://couchdb.apache.org/DBSystemNameCouchDB = DBSystemNameKey.String("couchdb")// [Apache Derby]// Stability: development//// [Apache Derby]: https://db.apache.org/derby/DBSystemNameDerby = DBSystemNameKey.String("derby")// [Elasticsearch]// Stability: development//// [Elasticsearch]: https://www.elastic.co/elasticsearchDBSystemNameElasticsearch = DBSystemNameKey.String("elasticsearch")// [Firebird]// Stability: development//// [Firebird]: https://www.firebirdsql.org/DBSystemNameFirebirdSQL = DBSystemNameKey.String("firebirdsql")// [Google Cloud Spanner]// Stability: development//// [Google Cloud Spanner]: https://cloud.google.com/spannerDBSystemNameGCPSpanner = DBSystemNameKey.String("gcp.spanner")// [Apache Geode]// Stability: development//// [Apache Geode]: https://geode.apache.org/DBSystemNameGeode = DBSystemNameKey.String("geode")// [H2 Database]// Stability: development//// [H2 Database]: https://h2database.com/DBSystemNameH2database = DBSystemNameKey.String("h2database")// [Apache HBase]// Stability: development//// [Apache HBase]: https://hbase.apache.org/DBSystemNameHBase = DBSystemNameKey.String("hbase")// [Apache Hive]// Stability: development//// [Apache Hive]: https://hive.apache.org/DBSystemNameHive = DBSystemNameKey.String("hive")// [HyperSQL Database]// Stability: development//// [HyperSQL Database]: https://hsqldb.org/DBSystemNameHSQLDB = DBSystemNameKey.String("hsqldb")// [IBM Db2]// Stability: development//// [IBM Db2]: https://www.ibm.com/db2DBSystemNameIBMDB2 = DBSystemNameKey.String("ibm.db2")// [IBM Informix]// Stability: development//// [IBM Informix]: https://www.ibm.com/products/informixDBSystemNameIBMInformix = DBSystemNameKey.String("ibm.informix")// [IBM Netezza]// Stability: development//// [IBM Netezza]: https://www.ibm.com/products/netezzaDBSystemNameIBMNetezza = DBSystemNameKey.String("ibm.netezza")// [InfluxDB]// Stability: development//// [InfluxDB]: https://www.influxdata.com/DBSystemNameInfluxDB = DBSystemNameKey.String("influxdb")// [Instant]// Stability: development//// [Instant]: https://www.instantdb.com/DBSystemNameInstantDB = DBSystemNameKey.String("instantdb")// [MariaDB]// Stability: stable//// [MariaDB]: https://mariadb.org/DBSystemNameMariaDB = DBSystemNameKey.String("mariadb")// [Memcached]// Stability: development//// [Memcached]: https://memcached.org/DBSystemNameMemcached = DBSystemNameKey.String("memcached")// [MongoDB]// Stability: development//// [MongoDB]: https://www.mongodb.com/DBSystemNameMongoDB = DBSystemNameKey.String("mongodb")// [Microsoft SQL Server]// Stability: stable//// [Microsoft SQL Server]: https://www.microsoft.com/sql-serverDBSystemNameMicrosoftSQLServer = DBSystemNameKey.String("microsoft.sql_server")// [MySQL]// Stability: stable//// [MySQL]: https://www.mysql.com/DBSystemNameMySQL = DBSystemNameKey.String("mysql")// [Neo4j]// Stability: development//// [Neo4j]: https://neo4j.com/DBSystemNameNeo4j = DBSystemNameKey.String("neo4j")// [OpenSearch]// Stability: development//// [OpenSearch]: https://opensearch.org/DBSystemNameOpenSearch = DBSystemNameKey.String("opensearch")// [Oracle Database]// Stability: development//// [Oracle Database]: https://www.oracle.com/database/DBSystemNameOracleDB = DBSystemNameKey.String("oracle.db")// [PostgreSQL]// Stability: stable//// [PostgreSQL]: https://www.postgresql.org/DBSystemNamePostgreSQL = DBSystemNameKey.String("postgresql")// [Redis]// Stability: development//// [Redis]: https://redis.io/DBSystemNameRedis = DBSystemNameKey.String("redis")// [SAP HANA]// Stability: development//// [SAP HANA]: https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.htmlDBSystemNameSAPHANA = DBSystemNameKey.String("sap.hana")// [SAP MaxDB]// Stability: development//// [SAP MaxDB]: https://maxdb.sap.com/DBSystemNameSAPMaxDB = DBSystemNameKey.String("sap.maxdb")// [SQLite]// Stability: development//// [SQLite]: https://www.sqlite.org/DBSystemNameSQLite = DBSystemNameKey.String("sqlite")// [Teradata]// Stability: development//// [Teradata]: https://www.teradata.com/DBSystemNameTeradata = DBSystemNameKey.String("teradata")// [Trino]// Stability: development//// [Trino]: https://trino.io/DBSystemNameTrino = DBSystemNameKey.String("trino"))// Namespace: deploymentconst (// DeploymentEnvironmentNameKey is the attribute Key conforming to the// "deployment.environment.name" semantic conventions. It represents the name of// the [deployment environment] (aka deployment tier).//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "staging", "production"// Note: `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://// - `service.name=frontend`, `deployment.environment.name=production`// - `service.name=frontend`, `deployment.environment.name=staging`.////// [deployment environment]: https://wikipedia.org/wiki/Deployment_environmentDeploymentEnvironmentNameKey = attribute.Key("deployment.environment.name")// DeploymentIDKey is the attribute Key conforming to the "deployment.id"// semantic conventions. It represents the id of the deployment.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "1208"DeploymentIDKey = attribute.Key("deployment.id")// DeploymentNameKey is the attribute Key conforming to the "deployment.name"// semantic conventions. It represents the name of the deployment.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "deploy my app", "deploy-frontend"DeploymentNameKey = attribute.Key("deployment.name")// DeploymentStatusKey is the attribute Key conforming to the// "deployment.status" semantic conventions. It represents the status of the// deployment.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:DeploymentStatusKey = attribute.Key("deployment.status"))// DeploymentEnvironmentName returns an attribute KeyValue conforming to the// "deployment.environment.name" semantic conventions. It represents the name of// the [deployment environment] (aka deployment tier).//// [deployment environment]: https://wikipedia.org/wiki/Deployment_environmentfunc ( string) attribute.KeyValue {return DeploymentEnvironmentNameKey.String()}// DeploymentID returns an attribute KeyValue conforming to the "deployment.id"// semantic conventions. It represents the id of the deployment.func ( string) attribute.KeyValue {return DeploymentIDKey.String()}// DeploymentName returns an attribute KeyValue conforming to the// "deployment.name" semantic conventions. It represents the name of the// deployment.func ( string) attribute.KeyValue {return DeploymentNameKey.String()}// Enum values for deployment.statusvar (// failed// Stability: developmentDeploymentStatusFailed = DeploymentStatusKey.String("failed")// succeeded// Stability: developmentDeploymentStatusSucceeded = DeploymentStatusKey.String("succeeded"))// Namespace: destinationconst (// DestinationAddressKey is the attribute Key conforming to the// "destination.address" semantic conventions. It represents the destination// address - domain name if available without reverse DNS lookup; otherwise, IP// address or Unix domain socket name.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "destination.example.com", "10.1.2.80", "/tmp/my.sock"// Note: When observed from the source side, and when communicating through an// intermediary, `destination.address` SHOULD represent the destination address// behind any intermediaries, for example proxies, if it's available.DestinationAddressKey = attribute.Key("destination.address")// DestinationPortKey is the attribute Key conforming to the "destination.port"// semantic conventions. It represents the destination port number.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 3389, 2888DestinationPortKey = attribute.Key("destination.port"))// DestinationAddress returns an attribute KeyValue conforming to the// "destination.address" semantic conventions. It represents the destination// address - domain name if available without reverse DNS lookup; otherwise, IP// address or Unix domain socket name.func ( string) attribute.KeyValue {return DestinationAddressKey.String()}// DestinationPort returns an attribute KeyValue conforming to the// "destination.port" semantic conventions. It represents the destination port// number.func ( int) attribute.KeyValue {return DestinationPortKey.Int()}// Namespace: deviceconst (// DeviceIDKey is the attribute Key conforming to the "device.id" semantic// conventions. It represents a unique identifier representing the device.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "123456789012345", "01:23:45:67:89:AB"// Note: Its value SHOULD be identical for all apps on a device and it SHOULD// NOT change if an app is uninstalled and re-installed.// However, it might be resettable by the user for all apps on a device.// Hardware IDs (e.g. vendor-specific serial number, IMEI or MAC address) MAY be// used as values.//// More information about Android identifier best practices can be found in the// [Android user data IDs guide].//// > [!WARNING]> This attribute may contain sensitive (PII) information. Caution// > should be taken when storing personal data or anything which can identify a// > user. GDPR and data protection laws may apply,// > ensure you do your own due diligence.> Due to these reasons, this// > identifier is not recommended for consumer applications and will likely// > result in rejection from both Google Play and App Store.// > However, it may be appropriate for specific enterprise scenarios, such as// > kiosk devices or enterprise-managed devices, with appropriate compliance// > clearance.// > Any instrumentation providing this identifier MUST implement it as an// > opt-in feature.> See [`app.installation.id`]> for a more// > privacy-preserving alternative.//// [Android user data IDs guide]: https://developer.android.com/training/articles/user-data-ids// [`app.installation.id`]: /docs/registry/attributes/app.md#app-installation-idDeviceIDKey = attribute.Key("device.id")// DeviceManufacturerKey is the attribute Key conforming to the// "device.manufacturer" semantic conventions. It represents the name of the// device manufacturer.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Apple", "Samsung"// Note: The Android OS provides this field via [Build]. iOS apps SHOULD// hardcode the value `Apple`.//// [Build]: https://developer.android.com/reference/android/os/Build#MANUFACTURERDeviceManufacturerKey = attribute.Key("device.manufacturer")// DeviceModelIdentifierKey is the attribute Key conforming to the// "device.model.identifier" semantic conventions. It represents the model// identifier for the device.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "iPhone3,4", "SM-G920F"// Note: It's recommended this value represents a machine-readable version of// the model identifier rather than the market or consumer-friendly name of the// device.DeviceModelIdentifierKey = attribute.Key("device.model.identifier")// DeviceModelNameKey is the attribute Key conforming to the "device.model.name"// semantic conventions. It represents the marketing name for the device model.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "iPhone 6s Plus", "Samsung Galaxy S6"// Note: It's recommended this value represents a human-readable version of the// device model rather than a machine-readable alternative.DeviceModelNameKey = attribute.Key("device.model.name"))// DeviceID returns an attribute KeyValue conforming to the "device.id" semantic// conventions. It represents a unique identifier representing the device.func ( string) attribute.KeyValue {return DeviceIDKey.String()}// DeviceManufacturer returns an attribute KeyValue conforming to the// "device.manufacturer" semantic conventions. It represents the name of the// device manufacturer.func ( string) attribute.KeyValue {return DeviceManufacturerKey.String()}// DeviceModelIdentifier returns an attribute KeyValue conforming to the// "device.model.identifier" semantic conventions. It represents the model// identifier for the device.func ( string) attribute.KeyValue {return DeviceModelIdentifierKey.String()}// DeviceModelName returns an attribute KeyValue conforming to the// "device.model.name" semantic conventions. It represents the marketing name for// the device model.func ( string) attribute.KeyValue {return DeviceModelNameKey.String()}// Namespace: diskconst (// DiskIODirectionKey is the attribute Key conforming to the "disk.io.direction"// semantic conventions. It represents the disk IO operation direction.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "read"DiskIODirectionKey = attribute.Key("disk.io.direction"))// Enum values for disk.io.directionvar (// read// Stability: developmentDiskIODirectionRead = DiskIODirectionKey.String("read")// write// Stability: developmentDiskIODirectionWrite = DiskIODirectionKey.String("write"))// Namespace: dnsconst (// DNSAnswersKey is the attribute Key conforming to the "dns.answers" semantic// conventions. It represents the list of IPv4 or IPv6 addresses resolved during// DNS lookup.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "10.0.0.1", "2001:0db8:85a3:0000:0000:8a2e:0370:7334"DNSAnswersKey = attribute.Key("dns.answers")// DNSQuestionNameKey is the attribute Key conforming to the "dns.question.name"// semantic conventions. It represents the name being queried.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "www.example.com", "opentelemetry.io"// Note: If the name field contains non-printable characters (below 32 or above// 126), those characters should be represented as escaped base 10 integers// (\DDD). Back slashes and quotes should be escaped. Tabs, carriage returns,// and line feeds should be converted to \t, \r, and \n respectively.DNSQuestionNameKey = attribute.Key("dns.question.name"))// DNSAnswers returns an attribute KeyValue conforming to the "dns.answers"// semantic conventions. It represents the list of IPv4 or IPv6 addresses// resolved during DNS lookup.func ( ...string) attribute.KeyValue {return DNSAnswersKey.StringSlice()}// DNSQuestionName returns an attribute KeyValue conforming to the// "dns.question.name" semantic conventions. It represents the name being// queried.func ( string) attribute.KeyValue {return DNSQuestionNameKey.String()}// Namespace: elasticsearchconst (// ElasticsearchNodeNameKey is the attribute Key conforming to the// "elasticsearch.node.name" semantic conventions. It represents the represents// the human-readable identifier of the node/instance to which a request was// routed.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "instance-0000000001"ElasticsearchNodeNameKey = attribute.Key("elasticsearch.node.name"))// ElasticsearchNodeName returns an attribute KeyValue conforming to the// "elasticsearch.node.name" semantic conventions. It represents the represents// the human-readable identifier of the node/instance to which a request was// routed.func ( string) attribute.KeyValue {return ElasticsearchNodeNameKey.String()}// Namespace: enduserconst (// EnduserIDKey is the attribute Key conforming to the "enduser.id" semantic// conventions. It represents the unique identifier of an end user in the// system. It maybe a username, email address, or other identifier.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "username"// Note: Unique identifier of an end user in the system.//// > [!Warning]// > This field contains sensitive (PII) information.EnduserIDKey = attribute.Key("enduser.id")// EnduserPseudoIDKey is the attribute Key conforming to the "enduser.pseudo.id"// semantic conventions. It represents the pseudonymous identifier of an end// user. This identifier should be a random value that is not directly linked or// associated with the end user's actual identity.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "QdH5CAWJgqVT4rOr0qtumf"// Note: Pseudonymous identifier of an end user.//// > [!Warning]// > This field contains sensitive (linkable PII) information.EnduserPseudoIDKey = attribute.Key("enduser.pseudo.id"))// EnduserID returns an attribute KeyValue conforming to the "enduser.id"// semantic conventions. It represents the unique identifier of an end user in// the system. It maybe a username, email address, or other identifier.func ( string) attribute.KeyValue {return EnduserIDKey.String()}// EnduserPseudoID returns an attribute KeyValue conforming to the// "enduser.pseudo.id" semantic conventions. It represents the pseudonymous// identifier of an end user. This identifier should be a random value that is// not directly linked or associated with the end user's actual identity.func ( string) attribute.KeyValue {return EnduserPseudoIDKey.String()}// Namespace: errorconst (// ErrorMessageKey is the attribute Key conforming to the "error.message"// semantic conventions. It represents a message providing more detail about an// error in human-readable form.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Unexpected input type: string", "The user has exceeded their// storage quota"// Note: `error.message` should provide additional context and detail about an// error.// It is NOT RECOMMENDED to duplicate the value of `error.type` in// `error.message`.// It is also NOT RECOMMENDED to duplicate the value of `exception.message` in// `error.message`.//// `error.message` is NOT RECOMMENDED for metrics or spans due to its unbounded// cardinality and overlap with span status.ErrorMessageKey = attribute.Key("error.message")// ErrorTypeKey is the attribute Key conforming to the "error.type" semantic// conventions. It represents the describes a class of error the operation ended// with.//// Type: Enum// RequirementLevel: Recommended// Stability: Stable//// Examples: "timeout", "java.net.UnknownHostException",// "server_certificate_invalid", "500"// Note: The `error.type` SHOULD be predictable, and SHOULD have low// cardinality.//// When `error.type` is set to a type (e.g., an exception type), its// canonical class name identifying the type within the artifact SHOULD be used.//// Instrumentations SHOULD document the list of errors they report.//// The cardinality of `error.type` within one instrumentation library SHOULD be// low.// Telemetry consumers that aggregate data from multiple instrumentation// libraries and applications// should be prepared for `error.type` to have high cardinality at query time// when no// additional filters are applied.//// If the operation has completed successfully, instrumentations SHOULD NOT set// `error.type`.//// If a specific domain defines its own set of error identifiers (such as HTTP// or gRPC status codes),// it's RECOMMENDED to://// - Use a domain-specific attribute// - Set `error.type` to capture all errors, regardless of whether they are// defined within the domain-specific set or not.ErrorTypeKey = attribute.Key("error.type"))// ErrorMessage returns an attribute KeyValue conforming to the "error.message"// semantic conventions. It represents a message providing more detail about an// error in human-readable form.func ( string) attribute.KeyValue {return ErrorMessageKey.String()}// Enum values for error.typevar (// A fallback error value to be used when the instrumentation doesn't define a// custom value.//// Stability: stableErrorTypeOther = ErrorTypeKey.String("_OTHER"))// Namespace: exceptionconst (// ExceptionMessageKey is the attribute Key conforming to the// "exception.message" semantic conventions. It represents the exception// message.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "Division by zero", "Can't convert 'int' object to str implicitly"ExceptionMessageKey = attribute.Key("exception.message")// ExceptionStacktraceKey is the attribute Key conforming to the// "exception.stacktrace" semantic conventions. It represents a stacktrace as a// string in the natural representation for the language runtime. The// representation is to be determined and documented by each language SIG.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: Exception in thread "main" java.lang.RuntimeException: Test// exception\n at com.example.GenerateTrace.methodB(GenerateTrace.java:13)\n at// com.example.GenerateTrace.methodA(GenerateTrace.java:9)\n at// com.example.GenerateTrace.main(GenerateTrace.java:5)ExceptionStacktraceKey = attribute.Key("exception.stacktrace")// ExceptionTypeKey is the attribute Key conforming to the "exception.type"// semantic conventions. It represents the type of the exception (its// fully-qualified class name, if applicable). The dynamic type of the exception// should be preferred over the static type in languages that support it.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "java.net.ConnectException", "OSError"ExceptionTypeKey = attribute.Key("exception.type"))// ExceptionMessage returns an attribute KeyValue conforming to the// "exception.message" semantic conventions. It represents the exception message.func ( string) attribute.KeyValue {return ExceptionMessageKey.String()}// ExceptionStacktrace returns an attribute KeyValue conforming to the// "exception.stacktrace" semantic conventions. It represents a stacktrace as a// string in the natural representation for the language runtime. The// representation is to be determined and documented by each language SIG.func ( string) attribute.KeyValue {return ExceptionStacktraceKey.String()}// ExceptionType returns an attribute KeyValue conforming to the "exception.type"// semantic conventions. It represents the type of the exception (its// fully-qualified class name, if applicable). The dynamic type of the exception// should be preferred over the static type in languages that support it.func ( string) attribute.KeyValue {return ExceptionTypeKey.String()}// Namespace: faasconst (// FaaSColdstartKey is the attribute Key conforming to the "faas.coldstart"// semantic conventions. It represents a boolean that is true if the serverless// function is executed for the first time (aka cold-start).//// Type: boolean// RequirementLevel: Recommended// Stability: Development//// Examples:FaaSColdstartKey = attribute.Key("faas.coldstart")// FaaSCronKey is the attribute Key conforming to the "faas.cron" semantic// conventions. It represents a string containing the schedule period as// [Cron Expression].//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: 0/5 * * * ? *//// [Cron Expression]: https://docs.oracle.com/cd/E12058_01/doc/doc.1014/e12030/cron_expressions.htmFaaSCronKey = attribute.Key("faas.cron")// FaaSDocumentCollectionKey is the attribute Key conforming to the// "faas.document.collection" semantic conventions. It represents the name of// the source on which the triggering operation was performed. For example, in// Cloud Storage or S3 corresponds to the bucket name, and in Cosmos DB to the// database name.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "myBucketName", "myDbName"FaaSDocumentCollectionKey = attribute.Key("faas.document.collection")// FaaSDocumentNameKey is the attribute Key conforming to the// "faas.document.name" semantic conventions. It represents the document// name/table subjected to the operation. For example, in Cloud Storage or S3 is// the name of the file, and in Cosmos DB the table name.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "myFile.txt", "myTableName"FaaSDocumentNameKey = attribute.Key("faas.document.name")// FaaSDocumentOperationKey is the attribute Key conforming to the// "faas.document.operation" semantic conventions. It represents the describes// the type of the operation that was performed on the data.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:FaaSDocumentOperationKey = attribute.Key("faas.document.operation")// FaaSDocumentTimeKey is the attribute Key conforming to the// "faas.document.time" semantic conventions. It represents a string containing// the time when the data was accessed in the [ISO 8601] format expressed in// [UTC].//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: 2020-01-23T13:47:06Z//// [ISO 8601]: https://www.iso.org/iso-8601-date-and-time-format.html// [UTC]: https://www.w3.org/TR/NOTE-datetimeFaaSDocumentTimeKey = attribute.Key("faas.document.time")// FaaSInstanceKey is the attribute Key conforming to the "faas.instance"// semantic conventions. It represents the execution environment ID as a string,// that will be potentially reused for other invocations to the same// function/function version.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "2021/06/28/[$LATEST]2f399eb14537447da05ab2a2e39309de"// Note: - **AWS Lambda:** Use the (full) log stream name.FaaSInstanceKey = attribute.Key("faas.instance")// FaaSInvocationIDKey is the attribute Key conforming to the// "faas.invocation_id" semantic conventions. It represents the invocation ID of// the current function invocation.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: af9d5aa4-a685-4c5f-a22b-444f80b3cc28FaaSInvocationIDKey = attribute.Key("faas.invocation_id")// FaaSInvokedNameKey is the attribute Key conforming to the "faas.invoked_name"// semantic conventions. It represents the name of the invoked function.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: my-function// Note: SHOULD be equal to the `faas.name` resource attribute of the invoked// function.FaaSInvokedNameKey = attribute.Key("faas.invoked_name")// FaaSInvokedProviderKey is the attribute Key conforming to the// "faas.invoked_provider" semantic conventions. It represents the cloud// provider of the invoked function.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: SHOULD be equal to the `cloud.provider` resource attribute of the// invoked function.FaaSInvokedProviderKey = attribute.Key("faas.invoked_provider")// FaaSInvokedRegionKey is the attribute Key conforming to the// "faas.invoked_region" semantic conventions. It represents the cloud region of// the invoked function.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: eu-central-1// Note: SHOULD be equal to the `cloud.region` resource attribute of the invoked// function.FaaSInvokedRegionKey = attribute.Key("faas.invoked_region")// FaaSMaxMemoryKey is the attribute Key conforming to the "faas.max_memory"// semantic conventions. It represents the amount of memory available to the// serverless function converted to Bytes.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Note: It's recommended to set this attribute since e.g. too little memory can// easily stop a Java AWS Lambda function from working correctly. On AWS Lambda,// the environment variable `AWS_LAMBDA_FUNCTION_MEMORY_SIZE` provides this// information (which must be multiplied by 1,048,576).FaaSMaxMemoryKey = attribute.Key("faas.max_memory")// FaaSNameKey is the attribute Key conforming to the "faas.name" semantic// conventions. It represents the name of the single function that this runtime// instance executes.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "my-function", "myazurefunctionapp/some-function-name"// Note: This is the name of the function as configured/deployed on the FaaS// platform and is usually different from the name of the callback// function (which may be stored in the// [`code.namespace`/`code.function.name`]// span attributes).//// For some cloud providers, the above definition is ambiguous. The following// definition of function name MUST be used for this attribute// (and consequently the span name) for the listed cloud providers/products://// - **Azure:** The full name `<FUNCAPP>/<FUNC>`, i.e., function app name// followed by a forward slash followed by the function name (this form// can also be seen in the resource JSON for the function).// This means that a span attribute MUST be used, as an Azure function// app can host multiple functions that would usually share// a TracerProvider (see also the `cloud.resource_id` attribute).////// [`code.namespace`/`code.function.name`]: /docs/general/attributes.md#source-code-attributesFaaSNameKey = attribute.Key("faas.name")// FaaSTimeKey is the attribute Key conforming to the "faas.time" semantic// conventions. It represents a string containing the function invocation time// in the [ISO 8601] format expressed in [UTC].//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: 2020-01-23T13:47:06Z//// [ISO 8601]: https://www.iso.org/iso-8601-date-and-time-format.html// [UTC]: https://www.w3.org/TR/NOTE-datetimeFaaSTimeKey = attribute.Key("faas.time")// FaaSTriggerKey is the attribute Key conforming to the "faas.trigger" semantic// conventions. It represents the type of the trigger which caused this function// invocation.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:FaaSTriggerKey = attribute.Key("faas.trigger")// FaaSVersionKey is the attribute Key conforming to the "faas.version" semantic// conventions. It represents the immutable version of the function being// executed.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "26", "pinkfroid-00002"// Note: Depending on the cloud provider and platform, use://// - **AWS Lambda:** The [function version]// (an integer represented as a decimal string).// - **Google Cloud Run (Services):** The [revision]// (i.e., the function name plus the revision suffix).// - **Google Cloud Functions:** The value of the// [`K_REVISION` environment variable].// - **Azure Functions:** Not applicable. Do not set this attribute.////// [function version]: https://docs.aws.amazon.com/lambda/latest/dg/configuration-versions.html// [revision]: https://cloud.google.com/run/docs/managing/revisions// [`K_REVISION` environment variable]: https://cloud.google.com/functions/docs/env-var#runtime_environment_variables_set_automaticallyFaaSVersionKey = attribute.Key("faas.version"))// FaaSColdstart returns an attribute KeyValue conforming to the "faas.coldstart"// semantic conventions. It represents a boolean that is true if the serverless// function is executed for the first time (aka cold-start).func ( bool) attribute.KeyValue {return FaaSColdstartKey.Bool()}// FaaSCron returns an attribute KeyValue conforming to the "faas.cron" semantic// conventions. It represents a string containing the schedule period as// [Cron Expression].//// [Cron Expression]: https://docs.oracle.com/cd/E12058_01/doc/doc.1014/e12030/cron_expressions.htmfunc ( string) attribute.KeyValue {return FaaSCronKey.String()}// FaaSDocumentCollection returns an attribute KeyValue conforming to the// "faas.document.collection" semantic conventions. It represents the name of the// source on which the triggering operation was performed. For example, in Cloud// Storage or S3 corresponds to the bucket name, and in Cosmos DB to the database// name.func ( string) attribute.KeyValue {return FaaSDocumentCollectionKey.String()}// FaaSDocumentName returns an attribute KeyValue conforming to the// "faas.document.name" semantic conventions. It represents the document// name/table subjected to the operation. For example, in Cloud Storage or S3 is// the name of the file, and in Cosmos DB the table name.func ( string) attribute.KeyValue {return FaaSDocumentNameKey.String()}// FaaSDocumentTime returns an attribute KeyValue conforming to the// "faas.document.time" semantic conventions. It represents a string containing// the time when the data was accessed in the [ISO 8601] format expressed in// [UTC].//// [ISO 8601]: https://www.iso.org/iso-8601-date-and-time-format.html// [UTC]: https://www.w3.org/TR/NOTE-datetimefunc ( string) attribute.KeyValue {return FaaSDocumentTimeKey.String()}// FaaSInstance returns an attribute KeyValue conforming to the "faas.instance"// semantic conventions. It represents the execution environment ID as a string,// that will be potentially reused for other invocations to the same// function/function version.func ( string) attribute.KeyValue {return FaaSInstanceKey.String()}// FaaSInvocationID returns an attribute KeyValue conforming to the// "faas.invocation_id" semantic conventions. It represents the invocation ID of// the current function invocation.func ( string) attribute.KeyValue {return FaaSInvocationIDKey.String()}// FaaSInvokedName returns an attribute KeyValue conforming to the// "faas.invoked_name" semantic conventions. It represents the name of the// invoked function.func ( string) attribute.KeyValue {return FaaSInvokedNameKey.String()}// FaaSInvokedRegion returns an attribute KeyValue conforming to the// "faas.invoked_region" semantic conventions. It represents the cloud region of// the invoked function.func ( string) attribute.KeyValue {return FaaSInvokedRegionKey.String()}// FaaSMaxMemory returns an attribute KeyValue conforming to the// "faas.max_memory" semantic conventions. It represents the amount of memory// available to the serverless function converted to Bytes.func ( int) attribute.KeyValue {return FaaSMaxMemoryKey.Int()}// FaaSName returns an attribute KeyValue conforming to the "faas.name" semantic// conventions. It represents the name of the single function that this runtime// instance executes.func ( string) attribute.KeyValue {return FaaSNameKey.String()}// FaaSTime returns an attribute KeyValue conforming to the "faas.time" semantic// conventions. It represents a string containing the function invocation time in// the [ISO 8601] format expressed in [UTC].//// [ISO 8601]: https://www.iso.org/iso-8601-date-and-time-format.html// [UTC]: https://www.w3.org/TR/NOTE-datetimefunc ( string) attribute.KeyValue {return FaaSTimeKey.String()}// FaaSVersion returns an attribute KeyValue conforming to the "faas.version"// semantic conventions. It represents the immutable version of the function// being executed.func ( string) attribute.KeyValue {return FaaSVersionKey.String()}// Enum values for faas.document.operationvar (// When a new object is created.// Stability: developmentFaaSDocumentOperationInsert = FaaSDocumentOperationKey.String("insert")// When an object is modified.// Stability: developmentFaaSDocumentOperationEdit = FaaSDocumentOperationKey.String("edit")// When an object is deleted.// Stability: developmentFaaSDocumentOperationDelete = FaaSDocumentOperationKey.String("delete"))// Enum values for faas.invoked_providervar (// Alibaba Cloud// Stability: developmentFaaSInvokedProviderAlibabaCloud = FaaSInvokedProviderKey.String("alibaba_cloud")// Amazon Web Services// Stability: developmentFaaSInvokedProviderAWS = FaaSInvokedProviderKey.String("aws")// Microsoft Azure// Stability: developmentFaaSInvokedProviderAzure = FaaSInvokedProviderKey.String("azure")// Google Cloud Platform// Stability: developmentFaaSInvokedProviderGCP = FaaSInvokedProviderKey.String("gcp")// Tencent Cloud// Stability: developmentFaaSInvokedProviderTencentCloud = FaaSInvokedProviderKey.String("tencent_cloud"))// Enum values for faas.triggervar (// A response to some data source operation such as a database or filesystem// read/write// Stability: developmentFaaSTriggerDatasource = FaaSTriggerKey.String("datasource")// To provide an answer to an inbound HTTP request// Stability: developmentFaaSTriggerHTTP = FaaSTriggerKey.String("http")// A function is set to be executed when messages are sent to a messaging system// Stability: developmentFaaSTriggerPubSub = FaaSTriggerKey.String("pubsub")// A function is scheduled to be executed regularly// Stability: developmentFaaSTriggerTimer = FaaSTriggerKey.String("timer")// If none of the others apply// Stability: developmentFaaSTriggerOther = FaaSTriggerKey.String("other"))// Namespace: feature_flagconst (// FeatureFlagContextIDKey is the attribute Key conforming to the// "feature_flag.context.id" semantic conventions. It represents the unique// identifier for the flag evaluation context. For example, the targeting key.//// Type: string// RequirementLevel: Recommended// Stability: Release_Candidate//// Examples: "5157782b-2203-4c80-a857-dbbd5e7761db"FeatureFlagContextIDKey = attribute.Key("feature_flag.context.id")// FeatureFlagKeyKey is the attribute Key conforming to the "feature_flag.key"// semantic conventions. It represents the lookup key of the feature flag.//// Type: string// RequirementLevel: Recommended// Stability: Release_Candidate//// Examples: "logo-color"FeatureFlagKeyKey = attribute.Key("feature_flag.key")// FeatureFlagProviderNameKey is the attribute Key conforming to the// "feature_flag.provider.name" semantic conventions. It represents the// identifies the feature flag provider.//// Type: string// RequirementLevel: Recommended// Stability: Release_Candidate//// Examples: "Flag Manager"FeatureFlagProviderNameKey = attribute.Key("feature_flag.provider.name")// FeatureFlagResultReasonKey is the attribute Key conforming to the// "feature_flag.result.reason" semantic conventions. It represents the reason// code which shows how a feature flag value was determined.//// Type: Enum// RequirementLevel: Recommended// Stability: Release_Candidate//// Examples: "static", "targeting_match", "error", "default"FeatureFlagResultReasonKey = attribute.Key("feature_flag.result.reason")// FeatureFlagResultValueKey is the attribute Key conforming to the// "feature_flag.result.value" semantic conventions. It represents the evaluated// value of the feature flag.//// Type: any// RequirementLevel: Recommended// Stability: Release_Candidate//// Examples: "#ff0000", true, 3// Note: With some feature flag providers, feature flag results can be quite// large or contain private or sensitive details.// Because of this, `feature_flag.result.variant` is often the preferred// attribute if it is available.//// It may be desirable to redact or otherwise limit the size and scope of// `feature_flag.result.value` if possible.// Because the evaluated flag value is unstructured and may be any type, it is// left to the instrumentation author to determine how best to achieve this.FeatureFlagResultValueKey = attribute.Key("feature_flag.result.value")// FeatureFlagResultVariantKey is the attribute Key conforming to the// "feature_flag.result.variant" semantic conventions. It represents a semantic// identifier for an evaluated flag value.//// Type: string// RequirementLevel: Recommended// Stability: Release_Candidate//// Examples: "red", "true", "on"// Note: A semantic identifier, commonly referred to as a variant, provides a// means// for referring to a value without including the value itself. This can// provide additional context for understanding the meaning behind a value.// For example, the variant `red` maybe be used for the value `#c05543`.FeatureFlagResultVariantKey = attribute.Key("feature_flag.result.variant")// FeatureFlagSetIDKey is the attribute Key conforming to the// "feature_flag.set.id" semantic conventions. It represents the identifier of// the [flag set] to which the feature flag belongs.//// Type: string// RequirementLevel: Recommended// Stability: Release_Candidate//// Examples: "proj-1", "ab98sgs", "service1/dev"//// [flag set]: https://openfeature.dev/specification/glossary/#flag-setFeatureFlagSetIDKey = attribute.Key("feature_flag.set.id")// FeatureFlagVersionKey is the attribute Key conforming to the// "feature_flag.version" semantic conventions. It represents the version of the// ruleset used during the evaluation. This may be any stable value which// uniquely identifies the ruleset.//// Type: string// RequirementLevel: Recommended// Stability: Release_Candidate//// Examples: "1", "01ABCDEF"FeatureFlagVersionKey = attribute.Key("feature_flag.version"))// FeatureFlagContextID returns an attribute KeyValue conforming to the// "feature_flag.context.id" semantic conventions. It represents the unique// identifier for the flag evaluation context. For example, the targeting key.func ( string) attribute.KeyValue {return FeatureFlagContextIDKey.String()}// FeatureFlagKey returns an attribute KeyValue conforming to the// "feature_flag.key" semantic conventions. It represents the lookup key of the// feature flag.func ( string) attribute.KeyValue {return FeatureFlagKeyKey.String()}// FeatureFlagProviderName returns an attribute KeyValue conforming to the// "feature_flag.provider.name" semantic conventions. It represents the// identifies the feature flag provider.func ( string) attribute.KeyValue {return FeatureFlagProviderNameKey.String()}// FeatureFlagResultVariant returns an attribute KeyValue conforming to the// "feature_flag.result.variant" semantic conventions. It represents a semantic// identifier for an evaluated flag value.func ( string) attribute.KeyValue {return FeatureFlagResultVariantKey.String()}// FeatureFlagSetID returns an attribute KeyValue conforming to the// "feature_flag.set.id" semantic conventions. It represents the identifier of// the [flag set] to which the feature flag belongs.//// [flag set]: https://openfeature.dev/specification/glossary/#flag-setfunc ( string) attribute.KeyValue {return FeatureFlagSetIDKey.String()}// FeatureFlagVersion returns an attribute KeyValue conforming to the// "feature_flag.version" semantic conventions. It represents the version of the// ruleset used during the evaluation. This may be any stable value which// uniquely identifies the ruleset.func ( string) attribute.KeyValue {return FeatureFlagVersionKey.String()}// Enum values for feature_flag.result.reasonvar (// The resolved value is static (no dynamic evaluation).// Stability: release_candidateFeatureFlagResultReasonStatic = FeatureFlagResultReasonKey.String("static")// The resolved value fell back to a pre-configured value (no dynamic evaluation// occurred or dynamic evaluation yielded no result).// Stability: release_candidateFeatureFlagResultReasonDefault = FeatureFlagResultReasonKey.String("default")// The resolved value was the result of a dynamic evaluation, such as a rule or// specific user-targeting.// Stability: release_candidateFeatureFlagResultReasonTargetingMatch = FeatureFlagResultReasonKey.String("targeting_match")// The resolved value was the result of pseudorandom assignment.// Stability: release_candidateFeatureFlagResultReasonSplit = FeatureFlagResultReasonKey.String("split")// The resolved value was retrieved from cache.// Stability: release_candidateFeatureFlagResultReasonCached = FeatureFlagResultReasonKey.String("cached")// The resolved value was the result of the flag being disabled in the// management system.// Stability: release_candidateFeatureFlagResultReasonDisabled = FeatureFlagResultReasonKey.String("disabled")// The reason for the resolved value could not be determined.// Stability: release_candidateFeatureFlagResultReasonUnknown = FeatureFlagResultReasonKey.String("unknown")// The resolved value is non-authoritative or possibly out of date// Stability: release_candidateFeatureFlagResultReasonStale = FeatureFlagResultReasonKey.String("stale")// The resolved value was the result of an error.// Stability: release_candidateFeatureFlagResultReasonError = FeatureFlagResultReasonKey.String("error"))// Namespace: fileconst (// FileAccessedKey is the attribute Key conforming to the "file.accessed"// semantic conventions. It represents the time when the file was last accessed,// in ISO 8601 format.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "2021-01-01T12:00:00Z"// Note: This attribute might not be supported by some file systems — NFS,// FAT32, in embedded OS, etc.FileAccessedKey = attribute.Key("file.accessed")// FileAttributesKey is the attribute Key conforming to the "file.attributes"// semantic conventions. It represents the array of file attributes.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "readonly", "hidden"// Note: Attributes names depend on the OS or file system. Here’s a// non-exhaustive list of values expected for this attribute: `archive`,// `compressed`, `directory`, `encrypted`, `execute`, `hidden`, `immutable`,// `journaled`, `read`, `readonly`, `symbolic link`, `system`, `temporary`,// `write`.FileAttributesKey = attribute.Key("file.attributes")// FileChangedKey is the attribute Key conforming to the "file.changed" semantic// conventions. It represents the time when the file attributes or metadata was// last changed, in ISO 8601 format.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "2021-01-01T12:00:00Z"// Note: `file.changed` captures the time when any of the file's properties or// attributes (including the content) are changed, while `file.modified`// captures the timestamp when the file content is modified.FileChangedKey = attribute.Key("file.changed")// FileCreatedKey is the attribute Key conforming to the "file.created" semantic// conventions. It represents the time when the file was created, in ISO 8601// format.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "2021-01-01T12:00:00Z"// Note: This attribute might not be supported by some file systems — NFS,// FAT32, in embedded OS, etc.FileCreatedKey = attribute.Key("file.created")// FileDirectoryKey is the attribute Key conforming to the "file.directory"// semantic conventions. It represents the directory where the file is located.// It should include the drive letter, when appropriate.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "/home/user", "C:\Program Files\MyApp"FileDirectoryKey = attribute.Key("file.directory")// FileExtensionKey is the attribute Key conforming to the "file.extension"// semantic conventions. It represents the file extension, excluding the leading// dot.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "png", "gz"// Note: When the file name has multiple extensions (example.tar.gz), only the// last one should be captured ("gz", not "tar.gz").FileExtensionKey = attribute.Key("file.extension")// FileForkNameKey is the attribute Key conforming to the "file.fork_name"// semantic conventions. It represents the name of the fork. A fork is// additional data associated with a filesystem object.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Zone.Identifier"// Note: On Linux, a resource fork is used to store additional data with a// filesystem object. A file always has at least one fork for the data portion,// and additional forks may exist.// On NTFS, this is analogous to an Alternate Data Stream (ADS), and the default// data stream for a file is just called $DATA. Zone.Identifier is commonly used// by Windows to track contents downloaded from the Internet. An ADS is// typically of the form: C:\path\to\filename.extension:some_fork_name, and// some_fork_name is the value that should populate `fork_name`.// `filename.extension` should populate `file.name`, and `extension` should// populate `file.extension`. The full path, `file.path`, will include the fork// name.FileForkNameKey = attribute.Key("file.fork_name")// FileGroupIDKey is the attribute Key conforming to the "file.group.id"// semantic conventions. It represents the primary Group ID (GID) of the file.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "1000"FileGroupIDKey = attribute.Key("file.group.id")// FileGroupNameKey is the attribute Key conforming to the "file.group.name"// semantic conventions. It represents the primary group name of the file.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "users"FileGroupNameKey = attribute.Key("file.group.name")// FileInodeKey is the attribute Key conforming to the "file.inode" semantic// conventions. It represents the inode representing the file in the filesystem.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "256383"FileInodeKey = attribute.Key("file.inode")// FileModeKey is the attribute Key conforming to the "file.mode" semantic// conventions. It represents the mode of the file in octal representation.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "0640"FileModeKey = attribute.Key("file.mode")// FileModifiedKey is the attribute Key conforming to the "file.modified"// semantic conventions. It represents the time when the file content was last// modified, in ISO 8601 format.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "2021-01-01T12:00:00Z"FileModifiedKey = attribute.Key("file.modified")// FileNameKey is the attribute Key conforming to the "file.name" semantic// conventions. It represents the name of the file including the extension,// without the directory.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "example.png"FileNameKey = attribute.Key("file.name")// FileOwnerIDKey is the attribute Key conforming to the "file.owner.id"// semantic conventions. It represents the user ID (UID) or security identifier// (SID) of the file owner.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "1000"FileOwnerIDKey = attribute.Key("file.owner.id")// FileOwnerNameKey is the attribute Key conforming to the "file.owner.name"// semantic conventions. It represents the username of the file owner.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "root"FileOwnerNameKey = attribute.Key("file.owner.name")// FilePathKey is the attribute Key conforming to the "file.path" semantic// conventions. It represents the full path to the file, including the file// name. It should include the drive letter, when appropriate.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "/home/alice/example.png", "C:\Program Files\MyApp\myapp.exe"FilePathKey = attribute.Key("file.path")// FileSizeKey is the attribute Key conforming to the "file.size" semantic// conventions. It represents the file size in bytes.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples:FileSizeKey = attribute.Key("file.size")// FileSymbolicLinkTargetPathKey is the attribute Key conforming to the// "file.symbolic_link.target_path" semantic conventions. It represents the path// to the target of a symbolic link.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "/usr/bin/python3"// Note: This attribute is only applicable to symbolic links.FileSymbolicLinkTargetPathKey = attribute.Key("file.symbolic_link.target_path"))// FileAccessed returns an attribute KeyValue conforming to the "file.accessed"// semantic conventions. It represents the time when the file was last accessed,// in ISO 8601 format.func ( string) attribute.KeyValue {return FileAccessedKey.String()}// FileAttributes returns an attribute KeyValue conforming to the// "file.attributes" semantic conventions. It represents the array of file// attributes.func ( ...string) attribute.KeyValue {return FileAttributesKey.StringSlice()}// FileChanged returns an attribute KeyValue conforming to the "file.changed"// semantic conventions. It represents the time when the file attributes or// metadata was last changed, in ISO 8601 format.func ( string) attribute.KeyValue {return FileChangedKey.String()}// FileCreated returns an attribute KeyValue conforming to the "file.created"// semantic conventions. It represents the time when the file was created, in ISO// 8601 format.func ( string) attribute.KeyValue {return FileCreatedKey.String()}// FileDirectory returns an attribute KeyValue conforming to the "file.directory"// semantic conventions. It represents the directory where the file is located.// It should include the drive letter, when appropriate.func ( string) attribute.KeyValue {return FileDirectoryKey.String()}// FileExtension returns an attribute KeyValue conforming to the "file.extension"// semantic conventions. It represents the file extension, excluding the leading// dot.func ( string) attribute.KeyValue {return FileExtensionKey.String()}// FileForkName returns an attribute KeyValue conforming to the "file.fork_name"// semantic conventions. It represents the name of the fork. A fork is additional// data associated with a filesystem object.func ( string) attribute.KeyValue {return FileForkNameKey.String()}// FileGroupID returns an attribute KeyValue conforming to the "file.group.id"// semantic conventions. It represents the primary Group ID (GID) of the file.func ( string) attribute.KeyValue {return FileGroupIDKey.String()}// FileGroupName returns an attribute KeyValue conforming to the// "file.group.name" semantic conventions. It represents the primary group name// of the file.func ( string) attribute.KeyValue {return FileGroupNameKey.String()}// FileInode returns an attribute KeyValue conforming to the "file.inode"// semantic conventions. It represents the inode representing the file in the// filesystem.func ( string) attribute.KeyValue {return FileInodeKey.String()}// FileMode returns an attribute KeyValue conforming to the "file.mode" semantic// conventions. It represents the mode of the file in octal representation.func ( string) attribute.KeyValue {return FileModeKey.String()}// FileModified returns an attribute KeyValue conforming to the "file.modified"// semantic conventions. It represents the time when the file content was last// modified, in ISO 8601 format.func ( string) attribute.KeyValue {return FileModifiedKey.String()}// FileName returns an attribute KeyValue conforming to the "file.name" semantic// conventions. It represents the name of the file including the extension,// without the directory.func ( string) attribute.KeyValue {return FileNameKey.String()}// FileOwnerID returns an attribute KeyValue conforming to the "file.owner.id"// semantic conventions. It represents the user ID (UID) or security identifier// (SID) of the file owner.func ( string) attribute.KeyValue {return FileOwnerIDKey.String()}// FileOwnerName returns an attribute KeyValue conforming to the// "file.owner.name" semantic conventions. It represents the username of the file// owner.func ( string) attribute.KeyValue {return FileOwnerNameKey.String()}// FilePath returns an attribute KeyValue conforming to the "file.path" semantic// conventions. It represents the full path to the file, including the file name.// It should include the drive letter, when appropriate.func ( string) attribute.KeyValue {return FilePathKey.String()}// FileSize returns an attribute KeyValue conforming to the "file.size" semantic// conventions. It represents the file size in bytes.func ( int) attribute.KeyValue {return FileSizeKey.Int()}// FileSymbolicLinkTargetPath returns an attribute KeyValue conforming to the// "file.symbolic_link.target_path" semantic conventions. It represents the path// to the target of a symbolic link.func ( string) attribute.KeyValue {return FileSymbolicLinkTargetPathKey.String()}// Namespace: gcpconst (// GCPAppHubApplicationContainerKey is the attribute Key conforming to the// "gcp.apphub.application.container" semantic conventions. It represents the// container within GCP where the AppHub application is defined.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "projects/my-container-project"GCPAppHubApplicationContainerKey = attribute.Key("gcp.apphub.application.container")// GCPAppHubApplicationIDKey is the attribute Key conforming to the// "gcp.apphub.application.id" semantic conventions. It represents the name of// the application as configured in AppHub.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "my-application"GCPAppHubApplicationIDKey = attribute.Key("gcp.apphub.application.id")// GCPAppHubApplicationLocationKey is the attribute Key conforming to the// "gcp.apphub.application.location" semantic conventions. It represents the GCP// zone or region where the application is defined.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "us-central1"GCPAppHubApplicationLocationKey = attribute.Key("gcp.apphub.application.location")// GCPAppHubServiceCriticalityTypeKey is the attribute Key conforming to the// "gcp.apphub.service.criticality_type" semantic conventions. It represents the// criticality of a service indicates its importance to the business.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: [See AppHub type enum]//// [See AppHub type enum]: https://cloud.google.com/app-hub/docs/reference/rest/v1/Attributes#typeGCPAppHubServiceCriticalityTypeKey = attribute.Key("gcp.apphub.service.criticality_type")// GCPAppHubServiceEnvironmentTypeKey is the attribute Key conforming to the// "gcp.apphub.service.environment_type" semantic conventions. It represents the// environment of a service is the stage of a software lifecycle.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: [See AppHub environment type]//// [See AppHub environment type]: https://cloud.google.com/app-hub/docs/reference/rest/v1/Attributes#type_1GCPAppHubServiceEnvironmentTypeKey = attribute.Key("gcp.apphub.service.environment_type")// GCPAppHubServiceIDKey is the attribute Key conforming to the// "gcp.apphub.service.id" semantic conventions. It represents the name of the// service as configured in AppHub.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "my-service"GCPAppHubServiceIDKey = attribute.Key("gcp.apphub.service.id")// GCPAppHubWorkloadCriticalityTypeKey is the attribute Key conforming to the// "gcp.apphub.workload.criticality_type" semantic conventions. It represents// the criticality of a workload indicates its importance to the business.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: [See AppHub type enum]//// [See AppHub type enum]: https://cloud.google.com/app-hub/docs/reference/rest/v1/Attributes#typeGCPAppHubWorkloadCriticalityTypeKey = attribute.Key("gcp.apphub.workload.criticality_type")// GCPAppHubWorkloadEnvironmentTypeKey is the attribute Key conforming to the// "gcp.apphub.workload.environment_type" semantic conventions. It represents// the environment of a workload is the stage of a software lifecycle.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: [See AppHub environment type]//// [See AppHub environment type]: https://cloud.google.com/app-hub/docs/reference/rest/v1/Attributes#type_1GCPAppHubWorkloadEnvironmentTypeKey = attribute.Key("gcp.apphub.workload.environment_type")// GCPAppHubWorkloadIDKey is the attribute Key conforming to the// "gcp.apphub.workload.id" semantic conventions. It represents the name of the// workload as configured in AppHub.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "my-workload"GCPAppHubWorkloadIDKey = attribute.Key("gcp.apphub.workload.id")// GCPClientServiceKey is the attribute Key conforming to the// "gcp.client.service" semantic conventions. It represents the identifies the// Google Cloud service for which the official client library is intended.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "appengine", "run", "firestore", "alloydb", "spanner"// Note: 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'.GCPClientServiceKey = attribute.Key("gcp.client.service")// GCPCloudRunJobExecutionKey is the attribute Key conforming to the// "gcp.cloud_run.job.execution" semantic conventions. It represents the name of// the Cloud Run [execution] being run for the Job, as set by the// [`CLOUD_RUN_EXECUTION`] environment variable.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "job-name-xxxx", "sample-job-mdw84"//// [execution]: https://cloud.google.com/run/docs/managing/job-executions// [`CLOUD_RUN_EXECUTION`]: https://cloud.google.com/run/docs/container-contract#jobs-env-varsGCPCloudRunJobExecutionKey = attribute.Key("gcp.cloud_run.job.execution")// GCPCloudRunJobTaskIndexKey is the attribute Key conforming to the// "gcp.cloud_run.job.task_index" semantic conventions. It represents the index// for a task within an execution as provided by the [`CLOUD_RUN_TASK_INDEX`]// environment variable.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 0, 1//// [`CLOUD_RUN_TASK_INDEX`]: https://cloud.google.com/run/docs/container-contract#jobs-env-varsGCPCloudRunJobTaskIndexKey = attribute.Key("gcp.cloud_run.job.task_index")// GCPGCEInstanceHostnameKey is the attribute Key conforming to the// "gcp.gce.instance.hostname" semantic conventions. It represents the hostname// of a GCE instance. This is the full value of the default or [custom hostname]// .//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "my-host1234.example.com",// "sample-vm.us-west1-b.c.my-project.internal"//// [custom hostname]: https://cloud.google.com/compute/docs/instances/custom-hostname-vmGCPGCEInstanceHostnameKey = attribute.Key("gcp.gce.instance.hostname")// GCPGCEInstanceNameKey is the attribute Key conforming to the// "gcp.gce.instance.name" semantic conventions. It represents the instance name// of a GCE instance. This is the value provided by `host.name`, the visible// name of the instance in the Cloud Console UI, and the prefix for the default// hostname of the instance as defined by the [default internal DNS name].//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "instance-1", "my-vm-name"//// [default internal DNS name]: https://cloud.google.com/compute/docs/internal-dns#instance-fully-qualified-domain-namesGCPGCEInstanceNameKey = attribute.Key("gcp.gce.instance.name"))// GCPAppHubApplicationContainer returns an attribute KeyValue conforming to the// "gcp.apphub.application.container" semantic conventions. It represents the// container within GCP where the AppHub application is defined.func ( string) attribute.KeyValue {return GCPAppHubApplicationContainerKey.String()}// GCPAppHubApplicationID returns an attribute KeyValue conforming to the// "gcp.apphub.application.id" semantic conventions. It represents the name of// the application as configured in AppHub.func ( string) attribute.KeyValue {return GCPAppHubApplicationIDKey.String()}// GCPAppHubApplicationLocation returns an attribute KeyValue conforming to the// "gcp.apphub.application.location" semantic conventions. It represents the GCP// zone or region where the application is defined.func ( string) attribute.KeyValue {return GCPAppHubApplicationLocationKey.String()}// GCPAppHubServiceID returns an attribute KeyValue conforming to the// "gcp.apphub.service.id" semantic conventions. It represents the name of the// service as configured in AppHub.func ( string) attribute.KeyValue {return GCPAppHubServiceIDKey.String()}// GCPAppHubWorkloadID returns an attribute KeyValue conforming to the// "gcp.apphub.workload.id" semantic conventions. It represents the name of the// workload as configured in AppHub.func ( string) attribute.KeyValue {return GCPAppHubWorkloadIDKey.String()}// GCPClientService returns an attribute KeyValue conforming to the// "gcp.client.service" semantic conventions. It represents the identifies the// Google Cloud service for which the official client library is intended.func ( string) attribute.KeyValue {return GCPClientServiceKey.String()}// GCPCloudRunJobExecution returns an attribute KeyValue conforming to the// "gcp.cloud_run.job.execution" semantic conventions. It represents the name of// the Cloud Run [execution] being run for the Job, as set by the// [`CLOUD_RUN_EXECUTION`] environment variable.//// [execution]: https://cloud.google.com/run/docs/managing/job-executions// [`CLOUD_RUN_EXECUTION`]: https://cloud.google.com/run/docs/container-contract#jobs-env-varsfunc ( string) attribute.KeyValue {return GCPCloudRunJobExecutionKey.String()}// GCPCloudRunJobTaskIndex returns an attribute KeyValue conforming to the// "gcp.cloud_run.job.task_index" semantic conventions. It represents the index// for a task within an execution as provided by the [`CLOUD_RUN_TASK_INDEX`]// environment variable.//// [`CLOUD_RUN_TASK_INDEX`]: https://cloud.google.com/run/docs/container-contract#jobs-env-varsfunc ( int) attribute.KeyValue {return GCPCloudRunJobTaskIndexKey.Int()}// GCPGCEInstanceHostname returns an attribute KeyValue conforming to the// "gcp.gce.instance.hostname" semantic conventions. It represents the hostname// of a GCE instance. This is the full value of the default or [custom hostname]// .//// [custom hostname]: https://cloud.google.com/compute/docs/instances/custom-hostname-vmfunc ( string) attribute.KeyValue {return GCPGCEInstanceHostnameKey.String()}// GCPGCEInstanceName returns an attribute KeyValue conforming to the// "gcp.gce.instance.name" semantic conventions. It represents the instance name// of a GCE instance. This is the value provided by `host.name`, the visible name// of the instance in the Cloud Console UI, and the prefix for the default// hostname of the instance as defined by the [default internal DNS name].//// [default internal DNS name]: https://cloud.google.com/compute/docs/internal-dns#instance-fully-qualified-domain-namesfunc ( string) attribute.KeyValue {return GCPGCEInstanceNameKey.String()}// Enum values for gcp.apphub.service.criticality_typevar (// Mission critical service.// Stability: developmentGCPAppHubServiceCriticalityTypeMissionCritical = GCPAppHubServiceCriticalityTypeKey.String("MISSION_CRITICAL")// High impact.// Stability: developmentGCPAppHubServiceCriticalityTypeHigh = GCPAppHubServiceCriticalityTypeKey.String("HIGH")// Medium impact.// Stability: developmentGCPAppHubServiceCriticalityTypeMedium = GCPAppHubServiceCriticalityTypeKey.String("MEDIUM")// Low impact.// Stability: developmentGCPAppHubServiceCriticalityTypeLow = GCPAppHubServiceCriticalityTypeKey.String("LOW"))// Enum values for gcp.apphub.service.environment_typevar (// Production environment.// Stability: developmentGCPAppHubServiceEnvironmentTypeProduction = GCPAppHubServiceEnvironmentTypeKey.String("PRODUCTION")// Staging environment.// Stability: developmentGCPAppHubServiceEnvironmentTypeStaging = GCPAppHubServiceEnvironmentTypeKey.String("STAGING")// Test environment.// Stability: developmentGCPAppHubServiceEnvironmentTypeTest = GCPAppHubServiceEnvironmentTypeKey.String("TEST")// Development environment.// Stability: developmentGCPAppHubServiceEnvironmentTypeDevelopment = GCPAppHubServiceEnvironmentTypeKey.String("DEVELOPMENT"))// Enum values for gcp.apphub.workload.criticality_typevar (// Mission critical service.// Stability: developmentGCPAppHubWorkloadCriticalityTypeMissionCritical = GCPAppHubWorkloadCriticalityTypeKey.String("MISSION_CRITICAL")// High impact.// Stability: developmentGCPAppHubWorkloadCriticalityTypeHigh = GCPAppHubWorkloadCriticalityTypeKey.String("HIGH")// Medium impact.// Stability: developmentGCPAppHubWorkloadCriticalityTypeMedium = GCPAppHubWorkloadCriticalityTypeKey.String("MEDIUM")// Low impact.// Stability: developmentGCPAppHubWorkloadCriticalityTypeLow = GCPAppHubWorkloadCriticalityTypeKey.String("LOW"))// Enum values for gcp.apphub.workload.environment_typevar (// Production environment.// Stability: developmentGCPAppHubWorkloadEnvironmentTypeProduction = GCPAppHubWorkloadEnvironmentTypeKey.String("PRODUCTION")// Staging environment.// Stability: developmentGCPAppHubWorkloadEnvironmentTypeStaging = GCPAppHubWorkloadEnvironmentTypeKey.String("STAGING")// Test environment.// Stability: developmentGCPAppHubWorkloadEnvironmentTypeTest = GCPAppHubWorkloadEnvironmentTypeKey.String("TEST")// Development environment.// Stability: developmentGCPAppHubWorkloadEnvironmentTypeDevelopment = GCPAppHubWorkloadEnvironmentTypeKey.String("DEVELOPMENT"))// Namespace: gen_aiconst (// GenAIAgentDescriptionKey is the attribute Key conforming to the// "gen_ai.agent.description" semantic conventions. It represents the free-form// description of the GenAI agent provided by the application.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Helps with math problems", "Generates fiction stories"GenAIAgentDescriptionKey = attribute.Key("gen_ai.agent.description")// GenAIAgentIDKey is the attribute Key conforming to the "gen_ai.agent.id"// semantic conventions. It represents the unique identifier of the GenAI agent.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "asst_5j66UpCpwteGg4YSxUnt7lPY"GenAIAgentIDKey = attribute.Key("gen_ai.agent.id")// GenAIAgentNameKey is the attribute Key conforming to the "gen_ai.agent.name"// semantic conventions. It represents the human-readable name of the GenAI// agent provided by the application.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Math Tutor", "Fiction Writer"GenAIAgentNameKey = attribute.Key("gen_ai.agent.name")// GenAIConversationIDKey is the attribute Key conforming to the// "gen_ai.conversation.id" semantic conventions. It represents the unique// identifier for a conversation (session, thread), used to store and correlate// messages within this conversation.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "conv_5j66UpCpwteGg4YSxUnt7lPY"GenAIConversationIDKey = attribute.Key("gen_ai.conversation.id")// GenAIDataSourceIDKey is the attribute Key conforming to the// "gen_ai.data_source.id" semantic conventions. It represents the data source// identifier.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "H7STPQYOND"// Note: Data sources are used by AI agents and RAG applications to store// grounding data. A data source may be an external database, object store,// document collection, website, or any other storage system used by the GenAI// agent or application. The `gen_ai.data_source.id` SHOULD match the identifier// used by the GenAI system rather than a name specific to the external storage,// such as a database or object store. Semantic conventions referencing// `gen_ai.data_source.id` MAY also leverage additional attributes, such as// `db.*`, to further identify and describe the data source.GenAIDataSourceIDKey = attribute.Key("gen_ai.data_source.id")// GenAIInputMessagesKey is the attribute Key conforming to the// "gen_ai.input.messages" semantic conventions. It represents the chat history// provided to the model as an input.//// Type: any// RequirementLevel: Recommended// Stability: Development//// Examples: "[\n {\n "role": "user",\n "parts": [\n {\n "type": "text",\n// "content": "Weather in Paris?"\n }\n ]\n },\n {\n "role": "assistant",\n// "parts": [\n {\n "type": "tool_call",\n "id":// "call_VSPygqKTWdrhaFErNvMV18Yl",\n "name": "get_weather",\n "arguments": {\n// "location": "Paris"\n }\n }\n ]\n },\n {\n "role": "tool",\n "parts": [\n {\n// "type": "tool_call_response",\n "id": " call_VSPygqKTWdrhaFErNvMV18Yl",\n// "result": "rainy, 57°F"\n }\n ]\n }\n]\n"// Note: Instrumentations MUST follow [Input messages JSON schema].// When the attribute is recorded on events, it MUST be recorded in structured// form. When recorded on spans, it MAY be recorded as a JSON string if// structured// format is not supported and SHOULD be recorded in structured form otherwise.//// Messages MUST be provided in the order they were sent to the model.// Instrumentations MAY provide a way for users to filter or truncate// input messages.//// > [!Warning]// > This attribute is likely to contain sensitive information including// > user/PII data.//// See [Recording content on attributes]// section for more details.//// [Input messages JSON schema]: /docs/gen-ai/gen-ai-input-messages.json// [Recording content on attributes]: /docs/gen-ai/gen-ai-spans.md#recording-content-on-attributesGenAIInputMessagesKey = attribute.Key("gen_ai.input.messages")// GenAIOperationNameKey is the attribute Key conforming to the// "gen_ai.operation.name" semantic conventions. It represents the name of the// operation being performed.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: 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.GenAIOperationNameKey = attribute.Key("gen_ai.operation.name")// GenAIOutputMessagesKey is the attribute Key conforming to the// "gen_ai.output.messages" semantic conventions. It represents the messages// returned by the model where each message represents a specific model response// (choice, candidate).//// Type: any// RequirementLevel: Recommended// Stability: Development//// Examples: "[\n {\n "role": "assistant",\n "parts": [\n {\n "type": "text",\n// "content": "The weather in Paris is currently rainy with a temperature of// 57°F."\n }\n ],\n "finish_reason": "stop"\n }\n]\n"// Note: Instrumentations MUST follow [Output messages JSON schema]//// Each message represents a single output choice/candidate generated by// the model. Each message corresponds to exactly one generation// (choice/candidate) and vice versa - one choice cannot be split across// multiple messages or one message cannot contain parts from multiple choices.//// When the attribute is recorded on events, it MUST be recorded in structured// form. When recorded on spans, it MAY be recorded as a JSON string if// structured// format is not supported and SHOULD be recorded in structured form otherwise.//// Instrumentations MAY provide a way for users to filter or truncate// output messages.//// > [!Warning]// > This attribute is likely to contain sensitive information including// > user/PII data.//// See [Recording content on attributes]// section for more details.//// [Output messages JSON schema]: /docs/gen-ai/gen-ai-output-messages.json// [Recording content on attributes]: /docs/gen-ai/gen-ai-spans.md#recording-content-on-attributesGenAIOutputMessagesKey = attribute.Key("gen_ai.output.messages")// GenAIOutputTypeKey is the attribute Key conforming to the// "gen_ai.output.type" semantic conventions. It represents the represents the// content type requested by the client.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: This attribute SHOULD be used when the client requests output of a// specific type. The model may return zero or more outputs of this type.// This attribute specifies the output modality and not the actual output// format. For example, if an image is requested, the actual output could be a// URL pointing to an image file.// Additional output format details may be recorded in the future in the// `gen_ai.output.{type}.*` attributes.GenAIOutputTypeKey = attribute.Key("gen_ai.output.type")// GenAIProviderNameKey is the attribute Key conforming to the// "gen_ai.provider.name" semantic conventions. It represents the Generative AI// provider as identified by the client or server instrumentation.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: The attribute SHOULD be set based on the instrumentation's best// knowledge and may differ from the actual model provider.//// Multiple providers, including Azure OpenAI, Gemini, and AI hosting platforms// are accessible using the OpenAI REST API and corresponding client libraries,// but may proxy or host models from different providers.//// The `gen_ai.request.model`, `gen_ai.response.model`, and `server.address`// attributes may help identify the actual system in use.//// The `gen_ai.provider.name` attribute acts as a discriminator that// identifies the GenAI telemetry format flavor specific to that provider// within GenAI semantic conventions.// It SHOULD be set consistently with provider-specific attributes and signals.// For example, GenAI spans, metrics, and events related to AWS Bedrock// should have the `gen_ai.provider.name` set to `aws.bedrock` and include// applicable `aws.bedrock.*` attributes and are not expected to include// `openai.*` attributes.GenAIProviderNameKey = attribute.Key("gen_ai.provider.name")// GenAIRequestChoiceCountKey is the attribute Key conforming to the// "gen_ai.request.choice.count" semantic conventions. It represents the target// number of candidate completions to return.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 3GenAIRequestChoiceCountKey = attribute.Key("gen_ai.request.choice.count")// GenAIRequestEncodingFormatsKey is the attribute Key conforming to the// "gen_ai.request.encoding_formats" semantic conventions. It represents the// encoding formats requested in an embeddings operation, if specified.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "base64"], ["float", "binary"// Note: In some GenAI systems the encoding formats are called embedding types.// Also, some GenAI systems only accept a single format per request.GenAIRequestEncodingFormatsKey = attribute.Key("gen_ai.request.encoding_formats")// GenAIRequestFrequencyPenaltyKey is the attribute Key conforming to the// "gen_ai.request.frequency_penalty" semantic conventions. It represents the// frequency penalty setting for the GenAI request.//// Type: double// RequirementLevel: Recommended// Stability: Development//// Examples: 0.1GenAIRequestFrequencyPenaltyKey = attribute.Key("gen_ai.request.frequency_penalty")// GenAIRequestMaxTokensKey is the attribute Key conforming to the// "gen_ai.request.max_tokens" semantic conventions. It represents the maximum// number of tokens the model generates for a request.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 100GenAIRequestMaxTokensKey = attribute.Key("gen_ai.request.max_tokens")// GenAIRequestModelKey is the attribute Key conforming to the// "gen_ai.request.model" semantic conventions. It represents the name of the// GenAI model a request is being made to.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: gpt-4GenAIRequestModelKey = attribute.Key("gen_ai.request.model")// GenAIRequestPresencePenaltyKey is the attribute Key conforming to the// "gen_ai.request.presence_penalty" semantic conventions. It represents the// presence penalty setting for the GenAI request.//// Type: double// RequirementLevel: Recommended// Stability: Development//// Examples: 0.1GenAIRequestPresencePenaltyKey = attribute.Key("gen_ai.request.presence_penalty")// GenAIRequestSeedKey is the attribute Key conforming to the// "gen_ai.request.seed" semantic conventions. It represents the requests with// same seed value more likely to return same result.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 100GenAIRequestSeedKey = attribute.Key("gen_ai.request.seed")// GenAIRequestStopSequencesKey is the attribute Key conforming to the// "gen_ai.request.stop_sequences" semantic conventions. It represents the list// of sequences that the model will use to stop generating further tokens.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "forest", "lived"GenAIRequestStopSequencesKey = attribute.Key("gen_ai.request.stop_sequences")// GenAIRequestTemperatureKey is the attribute Key conforming to the// "gen_ai.request.temperature" semantic conventions. It represents the// temperature setting for the GenAI request.//// Type: double// RequirementLevel: Recommended// Stability: Development//// Examples: 0.0GenAIRequestTemperatureKey = attribute.Key("gen_ai.request.temperature")// GenAIRequestTopKKey is the attribute Key conforming to the// "gen_ai.request.top_k" semantic conventions. It represents the top_k sampling// setting for the GenAI request.//// Type: double// RequirementLevel: Recommended// Stability: Development//// Examples: 1.0GenAIRequestTopKKey = attribute.Key("gen_ai.request.top_k")// GenAIRequestTopPKey is the attribute Key conforming to the// "gen_ai.request.top_p" semantic conventions. It represents the top_p sampling// setting for the GenAI request.//// Type: double// RequirementLevel: Recommended// Stability: Development//// Examples: 1.0GenAIRequestTopPKey = attribute.Key("gen_ai.request.top_p")// GenAIResponseFinishReasonsKey is the attribute Key conforming to the// "gen_ai.response.finish_reasons" semantic conventions. It represents the// array of reasons the model stopped generating tokens, corresponding to each// generation received.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "stop"], ["stop", "length"GenAIResponseFinishReasonsKey = attribute.Key("gen_ai.response.finish_reasons")// GenAIResponseIDKey is the attribute Key conforming to the// "gen_ai.response.id" semantic conventions. It represents the unique// identifier for the completion.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "chatcmpl-123"GenAIResponseIDKey = attribute.Key("gen_ai.response.id")// GenAIResponseModelKey is the attribute Key conforming to the// "gen_ai.response.model" semantic conventions. It represents the name of the// model that generated the response.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "gpt-4-0613"GenAIResponseModelKey = attribute.Key("gen_ai.response.model")// GenAISystemInstructionsKey is the attribute Key conforming to the// "gen_ai.system_instructions" semantic conventions. It represents the system// message or instructions provided to the GenAI model separately from the chat// history.//// Type: any// RequirementLevel: Recommended// Stability: Development//// Examples: "[\n {\n "type": "text",\n "content": "You are an Agent that greet// users, always use greetings tool to respond"\n }\n]\n", "[\n {\n "type":// "text",\n "content": "You are a language translator."\n },\n {\n "type":// "text",\n "content": "Your mission is to translate text in English to// French."\n }\n]\n"// Note: This attribute SHOULD be used when the corresponding provider or API// allows to provide system instructions or messages separately from the// chat history.//// Instructions that are part of the chat history SHOULD be recorded in// `gen_ai.input.messages` attribute instead.//// Instrumentations MUST follow [System instructions JSON schema].//// When recorded on spans, it MAY be recorded as a JSON string if structured// format is not supported and SHOULD be recorded in structured form otherwise.//// Instrumentations MAY provide a way for users to filter or truncate// system instructions.//// > [!Warning]// > This attribute may contain sensitive information.//// See [Recording content on attributes]// section for more details.//// [System instructions JSON schema]: /docs/gen-ai/gen-ai-system-instructions.json// [Recording content on attributes]: /docs/gen-ai/gen-ai-spans.md#recording-content-on-attributesGenAISystemInstructionsKey = attribute.Key("gen_ai.system_instructions")// GenAITokenTypeKey is the attribute Key conforming to the "gen_ai.token.type"// semantic conventions. It represents the type of token being counted.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "input", "output"GenAITokenTypeKey = attribute.Key("gen_ai.token.type")// GenAIToolCallIDKey is the attribute Key conforming to the// "gen_ai.tool.call.id" semantic conventions. It represents the tool call// identifier.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "call_mszuSIzqtI65i1wAUOE8w5H4"GenAIToolCallIDKey = attribute.Key("gen_ai.tool.call.id")// GenAIToolDescriptionKey is the attribute Key conforming to the// "gen_ai.tool.description" semantic conventions. It represents the tool// description.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Multiply two numbers"GenAIToolDescriptionKey = attribute.Key("gen_ai.tool.description")// GenAIToolNameKey is the attribute Key conforming to the "gen_ai.tool.name"// semantic conventions. It represents the name of the tool utilized by the// agent.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Flights"GenAIToolNameKey = attribute.Key("gen_ai.tool.name")// GenAIToolTypeKey is the attribute Key conforming to the "gen_ai.tool.type"// semantic conventions. It represents the type of the tool utilized by the// agent.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "function", "extension", "datastore"// Note: Extension: A tool executed on the agent-side to directly call external// APIs, bridging the gap between the agent and real-world systems.// Agent-side operations involve actions that are performed by the agent on the// server or within the agent's controlled environment.// Function: A tool executed on the client-side, where the agent generates// parameters for a predefined function, and the client executes the logic.// Client-side operations are actions taken on the user's end or within the// client application.// Datastore: A tool used by the agent to access and query structured or// unstructured external data for retrieval-augmented tasks or knowledge// updates.GenAIToolTypeKey = attribute.Key("gen_ai.tool.type")// GenAIUsageInputTokensKey is the attribute Key conforming to the// "gen_ai.usage.input_tokens" semantic conventions. It represents the number of// tokens used in the GenAI input (prompt).//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 100GenAIUsageInputTokensKey = attribute.Key("gen_ai.usage.input_tokens")// GenAIUsageOutputTokensKey is the attribute Key conforming to the// "gen_ai.usage.output_tokens" semantic conventions. It represents the number// of tokens used in the GenAI response (completion).//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 180GenAIUsageOutputTokensKey = attribute.Key("gen_ai.usage.output_tokens"))// GenAIAgentDescription returns an attribute KeyValue conforming to the// "gen_ai.agent.description" semantic conventions. It represents the free-form// description of the GenAI agent provided by the application.func ( string) attribute.KeyValue {return GenAIAgentDescriptionKey.String()}// GenAIAgentID returns an attribute KeyValue conforming to the "gen_ai.agent.id"// semantic conventions. It represents the unique identifier of the GenAI agent.func ( string) attribute.KeyValue {return GenAIAgentIDKey.String()}// GenAIAgentName returns an attribute KeyValue conforming to the// "gen_ai.agent.name" semantic conventions. It represents the human-readable// name of the GenAI agent provided by the application.func ( string) attribute.KeyValue {return GenAIAgentNameKey.String()}// GenAIConversationID returns an attribute KeyValue conforming to the// "gen_ai.conversation.id" semantic conventions. It represents the unique// identifier for a conversation (session, thread), used to store and correlate// messages within this conversation.func ( string) attribute.KeyValue {return GenAIConversationIDKey.String()}// GenAIDataSourceID returns an attribute KeyValue conforming to the// "gen_ai.data_source.id" semantic conventions. It represents the data source// identifier.func ( string) attribute.KeyValue {return GenAIDataSourceIDKey.String()}// GenAIRequestChoiceCount returns an attribute KeyValue conforming to the// "gen_ai.request.choice.count" semantic conventions. It represents the target// number of candidate completions to return.func ( int) attribute.KeyValue {return GenAIRequestChoiceCountKey.Int()}// GenAIRequestEncodingFormats returns an attribute KeyValue conforming to the// "gen_ai.request.encoding_formats" semantic conventions. It represents the// encoding formats requested in an embeddings operation, if specified.func ( ...string) attribute.KeyValue {return GenAIRequestEncodingFormatsKey.StringSlice()}// GenAIRequestFrequencyPenalty returns an attribute KeyValue conforming to the// "gen_ai.request.frequency_penalty" semantic conventions. It represents the// frequency penalty setting for the GenAI request.func ( float64) attribute.KeyValue {return GenAIRequestFrequencyPenaltyKey.Float64()}// GenAIRequestMaxTokens returns an attribute KeyValue conforming to the// "gen_ai.request.max_tokens" semantic conventions. It represents the maximum// number of tokens the model generates for a request.func ( int) attribute.KeyValue {return GenAIRequestMaxTokensKey.Int()}// GenAIRequestModel returns an attribute KeyValue conforming to the// "gen_ai.request.model" semantic conventions. It represents the name of the// GenAI model a request is being made to.func ( string) attribute.KeyValue {return GenAIRequestModelKey.String()}// GenAIRequestPresencePenalty returns an attribute KeyValue conforming to the// "gen_ai.request.presence_penalty" semantic conventions. It represents the// presence penalty setting for the GenAI request.func ( float64) attribute.KeyValue {return GenAIRequestPresencePenaltyKey.Float64()}// GenAIRequestSeed returns an attribute KeyValue conforming to the// "gen_ai.request.seed" semantic conventions. It represents the requests with// same seed value more likely to return same result.func ( int) attribute.KeyValue {return GenAIRequestSeedKey.Int()}// GenAIRequestStopSequences returns an attribute KeyValue conforming to the// "gen_ai.request.stop_sequences" semantic conventions. It represents the list// of sequences that the model will use to stop generating further tokens.func ( ...string) attribute.KeyValue {return GenAIRequestStopSequencesKey.StringSlice()}// GenAIRequestTemperature returns an attribute KeyValue conforming to the// "gen_ai.request.temperature" semantic conventions. It represents the// temperature setting for the GenAI request.func ( float64) attribute.KeyValue {return GenAIRequestTemperatureKey.Float64()}// GenAIRequestTopK returns an attribute KeyValue conforming to the// "gen_ai.request.top_k" semantic conventions. It represents the top_k sampling// setting for the GenAI request.func ( float64) attribute.KeyValue {return GenAIRequestTopKKey.Float64()}// GenAIRequestTopP returns an attribute KeyValue conforming to the// "gen_ai.request.top_p" semantic conventions. It represents the top_p sampling// setting for the GenAI request.func ( float64) attribute.KeyValue {return GenAIRequestTopPKey.Float64()}// GenAIResponseFinishReasons returns an attribute KeyValue conforming to the// "gen_ai.response.finish_reasons" semantic conventions. It represents the array// of reasons the model stopped generating tokens, corresponding to each// generation received.func ( ...string) attribute.KeyValue {return GenAIResponseFinishReasonsKey.StringSlice()}// GenAIResponseID returns an attribute KeyValue conforming to the// "gen_ai.response.id" semantic conventions. It represents the unique identifier// for the completion.func ( string) attribute.KeyValue {return GenAIResponseIDKey.String()}// GenAIResponseModel returns an attribute KeyValue conforming to the// "gen_ai.response.model" semantic conventions. It represents the name of the// model that generated the response.func ( string) attribute.KeyValue {return GenAIResponseModelKey.String()}// GenAIToolCallID returns an attribute KeyValue conforming to the// "gen_ai.tool.call.id" semantic conventions. It represents the tool call// identifier.func ( string) attribute.KeyValue {return GenAIToolCallIDKey.String()}// GenAIToolDescription returns an attribute KeyValue conforming to the// "gen_ai.tool.description" semantic conventions. It represents the tool// description.func ( string) attribute.KeyValue {return GenAIToolDescriptionKey.String()}// GenAIToolName returns an attribute KeyValue conforming to the// "gen_ai.tool.name" semantic conventions. It represents the name of the tool// utilized by the agent.func ( string) attribute.KeyValue {return GenAIToolNameKey.String()}// GenAIToolType returns an attribute KeyValue conforming to the// "gen_ai.tool.type" semantic conventions. It represents the type of the tool// utilized by the agent.func ( string) attribute.KeyValue {return GenAIToolTypeKey.String()}// GenAIUsageInputTokens returns an attribute KeyValue conforming to the// "gen_ai.usage.input_tokens" semantic conventions. It represents the number of// tokens used in the GenAI input (prompt).func ( int) attribute.KeyValue {return GenAIUsageInputTokensKey.Int()}// GenAIUsageOutputTokens returns an attribute KeyValue conforming to the// "gen_ai.usage.output_tokens" semantic conventions. It represents the number of// tokens used in the GenAI response (completion).func ( int) attribute.KeyValue {return GenAIUsageOutputTokensKey.Int()}// Enum values for gen_ai.operation.namevar (// Chat completion operation such as [OpenAI Chat API]// Stability: development//// [OpenAI Chat API]: https://platform.openai.com/docs/api-reference/chatGenAIOperationNameChat = GenAIOperationNameKey.String("chat")// Multimodal content generation operation such as [Gemini Generate Content]// Stability: development//// [Gemini Generate Content]: https://ai.google.dev/api/generate-contentGenAIOperationNameGenerateContent = GenAIOperationNameKey.String("generate_content")// Text completions operation such as [OpenAI Completions API (Legacy)]// Stability: development//// [OpenAI Completions API (Legacy)]: https://platform.openai.com/docs/api-reference/completionsGenAIOperationNameTextCompletion = GenAIOperationNameKey.String("text_completion")// Embeddings operation such as [OpenAI Create embeddings API]// Stability: development//// [OpenAI Create embeddings API]: https://platform.openai.com/docs/api-reference/embeddings/createGenAIOperationNameEmbeddings = GenAIOperationNameKey.String("embeddings")// Create GenAI agent// Stability: developmentGenAIOperationNameCreateAgent = GenAIOperationNameKey.String("create_agent")// Invoke GenAI agent// Stability: developmentGenAIOperationNameInvokeAgent = GenAIOperationNameKey.String("invoke_agent")// Execute a tool// Stability: developmentGenAIOperationNameExecuteTool = GenAIOperationNameKey.String("execute_tool"))// Enum values for gen_ai.output.typevar (// Plain text// Stability: developmentGenAIOutputTypeText = GenAIOutputTypeKey.String("text")// JSON object with known or unknown schema// Stability: developmentGenAIOutputTypeJSON = GenAIOutputTypeKey.String("json")// Image// Stability: developmentGenAIOutputTypeImage = GenAIOutputTypeKey.String("image")// Speech// Stability: developmentGenAIOutputTypeSpeech = GenAIOutputTypeKey.String("speech"))// Enum values for gen_ai.provider.namevar (// [OpenAI]// Stability: development//// [OpenAI]: https://openai.com/GenAIProviderNameOpenAI = GenAIProviderNameKey.String("openai")// Any Google generative AI endpoint// Stability: developmentGenAIProviderNameGCPGenAI = GenAIProviderNameKey.String("gcp.gen_ai")// [Vertex AI]// Stability: development//// [Vertex AI]: https://cloud.google.com/vertex-aiGenAIProviderNameGCPVertexAI = GenAIProviderNameKey.String("gcp.vertex_ai")// [Gemini]// Stability: development//// [Gemini]: https://cloud.google.com/products/geminiGenAIProviderNameGCPGemini = GenAIProviderNameKey.String("gcp.gemini")// [Anthropic]// Stability: development//// [Anthropic]: https://www.anthropic.com/GenAIProviderNameAnthropic = GenAIProviderNameKey.String("anthropic")// [Cohere]// Stability: development//// [Cohere]: https://cohere.com/GenAIProviderNameCohere = GenAIProviderNameKey.String("cohere")// Azure AI Inference// Stability: developmentGenAIProviderNameAzureAIInference = GenAIProviderNameKey.String("azure.ai.inference")// [Azure OpenAI]// Stability: development//// [Azure OpenAI]: https://azure.microsoft.com/products/ai-services/openai-service/GenAIProviderNameAzureAIOpenAI = GenAIProviderNameKey.String("azure.ai.openai")// [IBM Watsonx AI]// Stability: development//// [IBM Watsonx AI]: https://www.ibm.com/products/watsonx-aiGenAIProviderNameIBMWatsonxAI = GenAIProviderNameKey.String("ibm.watsonx.ai")// [AWS Bedrock]// Stability: development//// [AWS Bedrock]: https://aws.amazon.com/bedrockGenAIProviderNameAWSBedrock = GenAIProviderNameKey.String("aws.bedrock")// [Perplexity]// Stability: development//// [Perplexity]: https://www.perplexity.ai/GenAIProviderNamePerplexity = GenAIProviderNameKey.String("perplexity")// [xAI]// Stability: development//// [xAI]: https://x.ai/GenAIProviderNameXAI = GenAIProviderNameKey.String("x_ai")// [DeepSeek]// Stability: development//// [DeepSeek]: https://www.deepseek.com/GenAIProviderNameDeepseek = GenAIProviderNameKey.String("deepseek")// [Groq]// Stability: development//// [Groq]: https://groq.com/GenAIProviderNameGroq = GenAIProviderNameKey.String("groq")// [Mistral AI]// Stability: development//// [Mistral AI]: https://mistral.ai/GenAIProviderNameMistralAI = GenAIProviderNameKey.String("mistral_ai"))// Enum values for gen_ai.token.typevar (// Input tokens (prompt, input, etc.)// Stability: developmentGenAITokenTypeInput = GenAITokenTypeKey.String("input")// Output tokens (completion, response, etc.)// Stability: developmentGenAITokenTypeOutput = GenAITokenTypeKey.String("output"))// Namespace: geoconst (// GeoContinentCodeKey is the attribute Key conforming to the// "geo.continent.code" semantic conventions. It represents the two-letter code// representing continent’s name.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:GeoContinentCodeKey = attribute.Key("geo.continent.code")// GeoCountryISOCodeKey is the attribute Key conforming to the// "geo.country.iso_code" semantic conventions. It represents the two-letter ISO// Country Code ([ISO 3166-1 alpha2]).//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "CA"//// [ISO 3166-1 alpha2]: https://wikipedia.org/wiki/ISO_3166-1#CodesGeoCountryISOCodeKey = attribute.Key("geo.country.iso_code")// GeoLocalityNameKey is the attribute Key conforming to the "geo.locality.name"// semantic conventions. It represents the locality name. Represents the name of// a city, town, village, or similar populated place.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Montreal", "Berlin"GeoLocalityNameKey = attribute.Key("geo.locality.name")// GeoLocationLatKey is the attribute Key conforming to the "geo.location.lat"// semantic conventions. It represents the latitude of the geo location in// [WGS84].//// Type: double// RequirementLevel: Recommended// Stability: Development//// Examples: 45.505918//// [WGS84]: https://wikipedia.org/wiki/World_Geodetic_System#WGS84GeoLocationLatKey = attribute.Key("geo.location.lat")// GeoLocationLonKey is the attribute Key conforming to the "geo.location.lon"// semantic conventions. It represents the longitude of the geo location in// [WGS84].//// Type: double// RequirementLevel: Recommended// Stability: Development//// Examples: -73.61483//// [WGS84]: https://wikipedia.org/wiki/World_Geodetic_System#WGS84GeoLocationLonKey = attribute.Key("geo.location.lon")// GeoPostalCodeKey is the attribute Key conforming to the "geo.postal_code"// semantic conventions. It represents the postal code associated with the// location. Values appropriate for this field may also be known as a postcode// or ZIP code and will vary widely from country to country.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "94040"GeoPostalCodeKey = attribute.Key("geo.postal_code")// GeoRegionISOCodeKey is the attribute Key conforming to the// "geo.region.iso_code" semantic conventions. It represents the region ISO code// ([ISO 3166-2]).//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "CA-QC"//// [ISO 3166-2]: https://wikipedia.org/wiki/ISO_3166-2GeoRegionISOCodeKey = attribute.Key("geo.region.iso_code"))// GeoCountryISOCode returns an attribute KeyValue conforming to the// "geo.country.iso_code" semantic conventions. It represents the two-letter ISO// Country Code ([ISO 3166-1 alpha2]).//// [ISO 3166-1 alpha2]: https://wikipedia.org/wiki/ISO_3166-1#Codesfunc ( string) attribute.KeyValue {return GeoCountryISOCodeKey.String()}// GeoLocalityName returns an attribute KeyValue conforming to the// "geo.locality.name" semantic conventions. It represents the locality name.// Represents the name of a city, town, village, or similar populated place.func ( string) attribute.KeyValue {return GeoLocalityNameKey.String()}// GeoLocationLat returns an attribute KeyValue conforming to the// "geo.location.lat" semantic conventions. It represents the latitude of the geo// location in [WGS84].//// [WGS84]: https://wikipedia.org/wiki/World_Geodetic_System#WGS84func ( float64) attribute.KeyValue {return GeoLocationLatKey.Float64()}// GeoLocationLon returns an attribute KeyValue conforming to the// "geo.location.lon" semantic conventions. It represents the longitude of the// geo location in [WGS84].//// [WGS84]: https://wikipedia.org/wiki/World_Geodetic_System#WGS84func ( float64) attribute.KeyValue {return GeoLocationLonKey.Float64()}// GeoPostalCode returns an attribute KeyValue conforming to the// "geo.postal_code" semantic conventions. It represents the postal code// associated with the location. Values appropriate for this field may also be// known as a postcode or ZIP code and will vary widely from country to country.func ( string) attribute.KeyValue {return GeoPostalCodeKey.String()}// GeoRegionISOCode returns an attribute KeyValue conforming to the// "geo.region.iso_code" semantic conventions. It represents the region ISO code// ([ISO 3166-2]).//// [ISO 3166-2]: https://wikipedia.org/wiki/ISO_3166-2func ( string) attribute.KeyValue {return GeoRegionISOCodeKey.String()}// Enum values for geo.continent.codevar (// Africa// Stability: developmentGeoContinentCodeAf = GeoContinentCodeKey.String("AF")// Antarctica// Stability: developmentGeoContinentCodeAn = GeoContinentCodeKey.String("AN")// Asia// Stability: developmentGeoContinentCodeAs = GeoContinentCodeKey.String("AS")// Europe// Stability: developmentGeoContinentCodeEu = GeoContinentCodeKey.String("EU")// North America// Stability: developmentGeoContinentCodeNa = GeoContinentCodeKey.String("NA")// Oceania// Stability: developmentGeoContinentCodeOc = GeoContinentCodeKey.String("OC")// South America// Stability: developmentGeoContinentCodeSa = GeoContinentCodeKey.String("SA"))// Namespace: goconst (// GoMemoryTypeKey is the attribute Key conforming to the "go.memory.type"// semantic conventions. It represents the type of memory.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "other", "stack"GoMemoryTypeKey = attribute.Key("go.memory.type"))// Enum values for go.memory.typevar (// Memory allocated from the heap that is reserved for stack space, whether or// not it is currently in-use.// Stability: developmentGoMemoryTypeStack = GoMemoryTypeKey.String("stack")// Memory used by the Go runtime, excluding other categories of memory usage// described in this enumeration.// Stability: developmentGoMemoryTypeOther = GoMemoryTypeKey.String("other"))// Namespace: graphqlconst (// GraphQLDocumentKey is the attribute Key conforming to the "graphql.document"// semantic conventions. It represents the GraphQL document being executed.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: query findBookById { bookById(id: ?) { name } }// Note: The value may be sanitized to exclude sensitive information.GraphQLDocumentKey = attribute.Key("graphql.document")// GraphQLOperationNameKey is the attribute Key conforming to the// "graphql.operation.name" semantic conventions. It represents the name of the// operation being executed.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: findBookByIdGraphQLOperationNameKey = attribute.Key("graphql.operation.name")// GraphQLOperationTypeKey is the attribute Key conforming to the// "graphql.operation.type" semantic conventions. It represents the type of the// operation being executed.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "query", "mutation", "subscription"GraphQLOperationTypeKey = attribute.Key("graphql.operation.type"))// GraphQLDocument returns an attribute KeyValue conforming to the// "graphql.document" semantic conventions. It represents the GraphQL document// being executed.func ( string) attribute.KeyValue {return GraphQLDocumentKey.String()}// GraphQLOperationName returns an attribute KeyValue conforming to the// "graphql.operation.name" semantic conventions. It represents the name of the// operation being executed.func ( string) attribute.KeyValue {return GraphQLOperationNameKey.String()}// Enum values for graphql.operation.typevar (// GraphQL query// Stability: developmentGraphQLOperationTypeQuery = GraphQLOperationTypeKey.String("query")// GraphQL mutation// Stability: developmentGraphQLOperationTypeMutation = GraphQLOperationTypeKey.String("mutation")// GraphQL subscription// Stability: developmentGraphQLOperationTypeSubscription = GraphQLOperationTypeKey.String("subscription"))// Namespace: herokuconst (// HerokuAppIDKey is the attribute Key conforming to the "heroku.app.id"// semantic conventions. It represents the unique identifier for the// application.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "2daa2797-e42b-4624-9322-ec3f968df4da"HerokuAppIDKey = attribute.Key("heroku.app.id")// HerokuReleaseCommitKey is the attribute Key conforming to the// "heroku.release.commit" semantic conventions. It represents the commit hash// for the current release.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "e6134959463efd8966b20e75b913cafe3f5ec"HerokuReleaseCommitKey = attribute.Key("heroku.release.commit")// HerokuReleaseCreationTimestampKey is the attribute Key conforming to the// "heroku.release.creation_timestamp" semantic conventions. It represents the// time and date the release was created.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "2022-10-23T18:00:42Z"HerokuReleaseCreationTimestampKey = attribute.Key("heroku.release.creation_timestamp"))// HerokuAppID returns an attribute KeyValue conforming to the "heroku.app.id"// semantic conventions. It represents the unique identifier for the application.func ( string) attribute.KeyValue {return HerokuAppIDKey.String()}// HerokuReleaseCommit returns an attribute KeyValue conforming to the// "heroku.release.commit" semantic conventions. It represents the commit hash// for the current release.func ( string) attribute.KeyValue {return HerokuReleaseCommitKey.String()}// HerokuReleaseCreationTimestamp returns an attribute KeyValue conforming to the// "heroku.release.creation_timestamp" semantic conventions. It represents the// time and date the release was created.func ( string) attribute.KeyValue {return HerokuReleaseCreationTimestampKey.String()}// Namespace: hostconst (// HostArchKey is the attribute Key conforming to the "host.arch" semantic// conventions. It represents the CPU architecture the host system is running// on.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:HostArchKey = attribute.Key("host.arch")// HostCPUCacheL2SizeKey is the attribute Key conforming to the// "host.cpu.cache.l2.size" semantic conventions. It represents the amount of// level 2 memory cache available to the processor (in Bytes).//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 12288000HostCPUCacheL2SizeKey = attribute.Key("host.cpu.cache.l2.size")// HostCPUFamilyKey is the attribute Key conforming to the "host.cpu.family"// semantic conventions. It represents the family or generation of the CPU.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "6", "PA-RISC 1.1e"HostCPUFamilyKey = attribute.Key("host.cpu.family")// HostCPUModelIDKey is the attribute Key conforming to the "host.cpu.model.id"// semantic conventions. It represents the model identifier. It provides more// granular information about the CPU, distinguishing it from other CPUs within// the same family.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "6", "9000/778/B180L"HostCPUModelIDKey = attribute.Key("host.cpu.model.id")// HostCPUModelNameKey is the attribute Key conforming to the// "host.cpu.model.name" semantic conventions. It represents the model// designation of the processor.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "11th Gen Intel(R) Core(TM) i7-1185G7 @ 3.00GHz"HostCPUModelNameKey = attribute.Key("host.cpu.model.name")// HostCPUSteppingKey is the attribute Key conforming to the "host.cpu.stepping"// semantic conventions. It represents the stepping or core revisions.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "1", "r1p1"HostCPUSteppingKey = attribute.Key("host.cpu.stepping")// HostCPUVendorIDKey is the attribute Key conforming to the// "host.cpu.vendor.id" semantic conventions. It represents the processor// manufacturer identifier. A maximum 12-character string.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "GenuineIntel"// Note: [CPUID] command returns the vendor ID string in EBX, EDX and ECX// registers. Writing these to memory in this order results in a 12-character// string.//// [CPUID]: https://wiki.osdev.org/CPUIDHostCPUVendorIDKey = attribute.Key("host.cpu.vendor.id")// HostIDKey is the attribute Key conforming to the "host.id" semantic// conventions. It represents the unique host ID. For Cloud, this must be the// instance_id assigned by the cloud provider. For non-containerized systems,// this should be the `machine-id`. See the table below for the sources to use// to determine the `machine-id` based on operating system.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "fdbf79e8af94cb7f9e8df36789187052"HostIDKey = attribute.Key("host.id")// HostImageIDKey is the attribute Key conforming to the "host.image.id"// semantic conventions. It represents the VM image ID or host OS image ID. For// Cloud, this value is from the provider.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "ami-07b06b442921831e5"HostImageIDKey = attribute.Key("host.image.id")// HostImageNameKey is the attribute Key conforming to the "host.image.name"// semantic conventions. It represents the name of the VM image or OS install// the host was instantiated from.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "infra-ami-eks-worker-node-7d4ec78312", "CentOS-8-x86_64-1905"HostImageNameKey = attribute.Key("host.image.name")// HostImageVersionKey is the attribute Key conforming to the// "host.image.version" semantic conventions. It represents the version string// of the VM image or host OS as defined in [Version Attributes].//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "0.1"//// [Version Attributes]: /docs/resource/README.md#version-attributesHostImageVersionKey = attribute.Key("host.image.version")// HostIPKey is the attribute Key conforming to the "host.ip" semantic// conventions. It represents the available IP addresses of the host, excluding// loopback interfaces.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "192.168.1.140", "fe80::abc2:4a28:737a:609e"// Note: IPv4 Addresses MUST be specified in dotted-quad notation. IPv6// addresses MUST be specified in the [RFC 5952] format.//// [RFC 5952]: https://www.rfc-editor.org/rfc/rfc5952.htmlHostIPKey = attribute.Key("host.ip")// HostMacKey is the attribute Key conforming to the "host.mac" semantic// conventions. It represents the available MAC addresses of the host, excluding// loopback interfaces.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "AC-DE-48-23-45-67", "AC-DE-48-23-45-67-01-9F"// Note: MAC Addresses MUST be represented in [IEEE RA hexadecimal form]: as// hyphen-separated octets in uppercase hexadecimal form from most to least// significant.//// [IEEE RA hexadecimal form]: https://standards.ieee.org/wp-content/uploads/import/documents/tutorials/eui.pdfHostMacKey = attribute.Key("host.mac")// HostNameKey is the attribute Key conforming to the "host.name" semantic// conventions. It represents the name of the host. On Unix systems, it may// contain what the hostname command returns, or the fully qualified hostname,// or another name specified by the user.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "opentelemetry-test"HostNameKey = attribute.Key("host.name")// HostTypeKey is the attribute Key conforming to the "host.type" semantic// conventions. It represents the type of host. For Cloud, this must be the// machine type.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "n1-standard-1"HostTypeKey = attribute.Key("host.type"))// HostCPUCacheL2Size returns an attribute KeyValue conforming to the// "host.cpu.cache.l2.size" semantic conventions. It represents the amount of// level 2 memory cache available to the processor (in Bytes).func ( int) attribute.KeyValue {return HostCPUCacheL2SizeKey.Int()}// HostCPUFamily returns an attribute KeyValue conforming to the// "host.cpu.family" semantic conventions. It represents the family or generation// of the CPU.func ( string) attribute.KeyValue {return HostCPUFamilyKey.String()}// HostCPUModelID returns an attribute KeyValue conforming to the// "host.cpu.model.id" semantic conventions. It represents the model identifier.// It provides more granular information about the CPU, distinguishing it from// other CPUs within the same family.func ( string) attribute.KeyValue {return HostCPUModelIDKey.String()}// HostCPUModelName returns an attribute KeyValue conforming to the// "host.cpu.model.name" semantic conventions. It represents the model// designation of the processor.func ( string) attribute.KeyValue {return HostCPUModelNameKey.String()}// HostCPUStepping returns an attribute KeyValue conforming to the// "host.cpu.stepping" semantic conventions. It represents the stepping or core// revisions.func ( string) attribute.KeyValue {return HostCPUSteppingKey.String()}// HostCPUVendorID returns an attribute KeyValue conforming to the// "host.cpu.vendor.id" semantic conventions. It represents the processor// manufacturer identifier. A maximum 12-character string.func ( string) attribute.KeyValue {return HostCPUVendorIDKey.String()}// HostID returns an attribute KeyValue conforming to the "host.id" semantic// conventions. It represents the unique host ID. For Cloud, this must be the// instance_id assigned by the cloud provider. For non-containerized systems,// this should be the `machine-id`. See the table below for the sources to use to// determine the `machine-id` based on operating system.func ( string) attribute.KeyValue {return HostIDKey.String()}// HostImageID returns an attribute KeyValue conforming to the "host.image.id"// semantic conventions. It represents the VM image ID or host OS image ID. For// Cloud, this value is from the provider.func ( string) attribute.KeyValue {return HostImageIDKey.String()}// HostImageName returns an attribute KeyValue conforming to the// "host.image.name" semantic conventions. It represents the name of the VM image// or OS install the host was instantiated from.func ( string) attribute.KeyValue {return HostImageNameKey.String()}// HostImageVersion returns an attribute KeyValue conforming to the// "host.image.version" semantic conventions. It represents the version string of// the VM image or host OS as defined in [Version Attributes].//// [Version Attributes]: /docs/resource/README.md#version-attributesfunc ( string) attribute.KeyValue {return HostImageVersionKey.String()}// HostIP returns an attribute KeyValue conforming to the "host.ip" semantic// conventions. It represents the available IP addresses of the host, excluding// loopback interfaces.func ( ...string) attribute.KeyValue {return HostIPKey.StringSlice()}// HostMac returns an attribute KeyValue conforming to the "host.mac" semantic// conventions. It represents the available MAC addresses of the host, excluding// loopback interfaces.func ( ...string) attribute.KeyValue {return HostMacKey.StringSlice()}// HostName returns an attribute KeyValue conforming to the "host.name" semantic// conventions. It represents the name of the host. On Unix systems, it may// contain what the hostname command returns, or the fully qualified hostname, or// another name specified by the user.func ( string) attribute.KeyValue {return HostNameKey.String()}// HostType returns an attribute KeyValue conforming to the "host.type" semantic// conventions. It represents the type of host. For Cloud, this must be the// machine type.func ( string) attribute.KeyValue {return HostTypeKey.String()}// Enum values for host.archvar (// AMD64// Stability: developmentHostArchAMD64 = HostArchKey.String("amd64")// ARM32// Stability: developmentHostArchARM32 = HostArchKey.String("arm32")// ARM64// Stability: developmentHostArchARM64 = HostArchKey.String("arm64")// Itanium// Stability: developmentHostArchIA64 = HostArchKey.String("ia64")// 32-bit PowerPC// Stability: developmentHostArchPPC32 = HostArchKey.String("ppc32")// 64-bit PowerPC// Stability: developmentHostArchPPC64 = HostArchKey.String("ppc64")// IBM z/Architecture// Stability: developmentHostArchS390x = HostArchKey.String("s390x")// 32-bit x86// Stability: developmentHostArchX86 = HostArchKey.String("x86"))// Namespace: httpconst (// HTTPConnectionStateKey is the attribute Key conforming to the// "http.connection.state" semantic conventions. It represents the state of the// HTTP connection in the HTTP connection pool.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "active", "idle"HTTPConnectionStateKey = attribute.Key("http.connection.state")// HTTPRequestBodySizeKey is the attribute Key conforming to the// "http.request.body.size" semantic conventions. It represents the size of the// request payload body in bytes. This is the number of bytes transferred// excluding headers and is often, but not always, present as the// [Content-Length] header. For requests using transport encoding, this should// be the compressed size.//// Type: int// RequirementLevel: Recommended// Stability: Development//// [Content-Length]: https://www.rfc-editor.org/rfc/rfc9110.html#field.content-lengthHTTPRequestBodySizeKey = attribute.Key("http.request.body.size")// HTTPRequestMethodKey is the attribute Key conforming to the// "http.request.method" semantic conventions. It represents the HTTP request// method.//// Type: Enum// RequirementLevel: Recommended// Stability: Stable//// Examples: "GET", "POST", "HEAD"// Note: HTTP request method value SHOULD be "known" to the instrumentation.// By default, this convention defines "known" methods as the ones listed in// [RFC9110]// and the PATCH method defined in [RFC5789].//// If the HTTP request method is not known to instrumentation, it MUST set the// `http.request.method` attribute to `_OTHER`.//// If the HTTP instrumentation could end up converting valid HTTP request// methods to `_OTHER`, then it MUST provide a way to override// the list of known HTTP methods. If this override is done via environment// variable, then the environment variable MUST be named// OTEL_INSTRUMENTATION_HTTP_KNOWN_METHODS and support a comma-separated list of// case-sensitive known HTTP methods// (this list MUST be a full override of the default known method, it is not a// list of known methods in addition to the defaults).//// HTTP method names are case-sensitive and `http.request.method` attribute// value MUST match a known HTTP method name exactly.// Instrumentations for specific web frameworks that consider HTTP methods to be// case insensitive, SHOULD populate a canonical equivalent.// Tracing instrumentations that do so, MUST also set// `http.request.method_original` to the original value.//// [RFC9110]: https://www.rfc-editor.org/rfc/rfc9110.html#name-methods// [RFC5789]: https://www.rfc-editor.org/rfc/rfc5789.htmlHTTPRequestMethodKey = attribute.Key("http.request.method")// HTTPRequestMethodOriginalKey is the attribute Key conforming to the// "http.request.method_original" semantic conventions. It represents the// original HTTP method sent by the client in the request line.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "GeT", "ACL", "foo"HTTPRequestMethodOriginalKey = attribute.Key("http.request.method_original")// HTTPRequestResendCountKey is the attribute Key conforming to the// "http.request.resend_count" semantic conventions. It represents the ordinal// number of request resending attempt (for any reason, including redirects).//// Type: int// RequirementLevel: Recommended// Stability: Stable//// Note: The resend count SHOULD be updated each time an HTTP request gets// resent by the client, regardless of what was the cause of the resending (e.g.// redirection, authorization failure, 503 Server Unavailable, network issues,// or any other).HTTPRequestResendCountKey = attribute.Key("http.request.resend_count")// HTTPRequestSizeKey is the attribute Key conforming to the "http.request.size"// semantic conventions. It represents the total size of the request in bytes.// This should be the total number of bytes sent over the wire, including the// request line (HTTP/1.1), framing (HTTP/2 and HTTP/3), headers, and request// body if any.//// Type: int// RequirementLevel: Recommended// Stability: DevelopmentHTTPRequestSizeKey = attribute.Key("http.request.size")// HTTPResponseBodySizeKey is the attribute Key conforming to the// "http.response.body.size" semantic conventions. It represents the size of the// response payload body in bytes. This is the number of bytes transferred// excluding headers and is often, but not always, present as the// [Content-Length] header. For requests using transport encoding, this should// be the compressed size.//// Type: int// RequirementLevel: Recommended// Stability: Development//// [Content-Length]: https://www.rfc-editor.org/rfc/rfc9110.html#field.content-lengthHTTPResponseBodySizeKey = attribute.Key("http.response.body.size")// HTTPResponseSizeKey is the attribute Key conforming to the// "http.response.size" semantic conventions. It represents the total size of// the response in bytes. This should be the total number of bytes sent over the// wire, including the status line (HTTP/1.1), framing (HTTP/2 and HTTP/3),// headers, and response body and trailers if any.//// Type: int// RequirementLevel: Recommended// Stability: DevelopmentHTTPResponseSizeKey = attribute.Key("http.response.size")// HTTPResponseStatusCodeKey is the attribute Key conforming to the// "http.response.status_code" semantic conventions. It represents the// [HTTP response status code].//// Type: int// RequirementLevel: Recommended// Stability: Stable//// Examples: 200//// [HTTP response status code]: https://tools.ietf.org/html/rfc7231#section-6HTTPResponseStatusCodeKey = attribute.Key("http.response.status_code")// HTTPRouteKey is the attribute Key conforming to the "http.route" semantic// conventions. It represents the matched route, that is, the path template in// the format used by the respective server framework.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "/users/:userID?", "{controller}/{action}/{id?}"// Note: MUST NOT be populated when this is not supported by the HTTP server// framework as the route attribute should have low-cardinality and the URI path// can NOT substitute it.// SHOULD include the [application root] if there is one.//// [application root]: /docs/http/http-spans.md#http-server-definitionsHTTPRouteKey = attribute.Key("http.route"))// HTTPRequestBodySize returns an attribute KeyValue conforming to the// "http.request.body.size" semantic conventions. It represents the size of the// request payload body in bytes. This is the number of bytes transferred// excluding headers and is often, but not always, present as the// [Content-Length] header. For requests using transport encoding, this should be// the compressed size.//// [Content-Length]: https://www.rfc-editor.org/rfc/rfc9110.html#field.content-lengthfunc ( int) attribute.KeyValue {return HTTPRequestBodySizeKey.Int()}// HTTPRequestHeader returns an attribute KeyValue conforming to the// "http.request.header" semantic conventions. It represents the HTTP request// headers, `<key>` being the normalized HTTP Header name (lowercase), the value// being the header values.func ( string, ...string) attribute.KeyValue {return attribute.StringSlice("http.request.header."+, )}// HTTPRequestMethodOriginal returns an attribute KeyValue conforming to the// "http.request.method_original" semantic conventions. It represents the// original HTTP method sent by the client in the request line.func ( string) attribute.KeyValue {return HTTPRequestMethodOriginalKey.String()}// HTTPRequestResendCount returns an attribute KeyValue conforming to the// "http.request.resend_count" semantic conventions. It represents the ordinal// number of request resending attempt (for any reason, including redirects).func ( int) attribute.KeyValue {return HTTPRequestResendCountKey.Int()}// HTTPRequestSize returns an attribute KeyValue conforming to the// "http.request.size" semantic conventions. It represents the total size of the// request in bytes. This should be the total number of bytes sent over the wire,// including the request line (HTTP/1.1), framing (HTTP/2 and HTTP/3), headers,// and request body if any.func ( int) attribute.KeyValue {return HTTPRequestSizeKey.Int()}// HTTPResponseBodySize returns an attribute KeyValue conforming to the// "http.response.body.size" semantic conventions. It represents the size of the// response payload body in bytes. This is the number of bytes transferred// excluding headers and is often, but not always, present as the// [Content-Length] header. For requests using transport encoding, this should be// the compressed size.//// [Content-Length]: https://www.rfc-editor.org/rfc/rfc9110.html#field.content-lengthfunc ( int) attribute.KeyValue {return HTTPResponseBodySizeKey.Int()}// HTTPResponseHeader returns an attribute KeyValue conforming to the// "http.response.header" semantic conventions. It represents the HTTP response// headers, `<key>` being the normalized HTTP Header name (lowercase), the value// being the header values.func ( string, ...string) attribute.KeyValue {return attribute.StringSlice("http.response.header."+, )}// HTTPResponseSize returns an attribute KeyValue conforming to the// "http.response.size" semantic conventions. It represents the total size of the// response in bytes. This should be the total number of bytes sent over the// wire, including the status line (HTTP/1.1), framing (HTTP/2 and HTTP/3),// headers, and response body and trailers if any.func ( int) attribute.KeyValue {return HTTPResponseSizeKey.Int()}// HTTPResponseStatusCode returns an attribute KeyValue conforming to the// "http.response.status_code" semantic conventions. It represents the// [HTTP response status code].//// [HTTP response status code]: https://tools.ietf.org/html/rfc7231#section-6func ( int) attribute.KeyValue {return HTTPResponseStatusCodeKey.Int()}// HTTPRoute returns an attribute KeyValue conforming to the "http.route"// semantic conventions. It represents the matched route, that is, the path// template in the format used by the respective server framework.func ( string) attribute.KeyValue {return HTTPRouteKey.String()}// Enum values for http.connection.statevar (// active state.// Stability: developmentHTTPConnectionStateActive = HTTPConnectionStateKey.String("active")// idle state.// Stability: developmentHTTPConnectionStateIdle = HTTPConnectionStateKey.String("idle"))// Enum values for http.request.methodvar (// CONNECT method.// Stability: stableHTTPRequestMethodConnect = HTTPRequestMethodKey.String("CONNECT")// DELETE method.// Stability: stableHTTPRequestMethodDelete = HTTPRequestMethodKey.String("DELETE")// GET method.// Stability: stableHTTPRequestMethodGet = HTTPRequestMethodKey.String("GET")// HEAD method.// Stability: stableHTTPRequestMethodHead = HTTPRequestMethodKey.String("HEAD")// OPTIONS method.// Stability: stableHTTPRequestMethodOptions = HTTPRequestMethodKey.String("OPTIONS")// PATCH method.// Stability: stableHTTPRequestMethodPatch = HTTPRequestMethodKey.String("PATCH")// POST method.// Stability: stableHTTPRequestMethodPost = HTTPRequestMethodKey.String("POST")// PUT method.// Stability: stableHTTPRequestMethodPut = HTTPRequestMethodKey.String("PUT")// TRACE method.// Stability: stableHTTPRequestMethodTrace = HTTPRequestMethodKey.String("TRACE")// Any HTTP method that the instrumentation has no prior knowledge of.// Stability: stableHTTPRequestMethodOther = HTTPRequestMethodKey.String("_OTHER"))// Namespace: hwconst (// HwBatteryCapacityKey is the attribute Key conforming to the// "hw.battery.capacity" semantic conventions. It represents the design capacity// in Watts-hours or Amper-hours.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "9.3Ah", "50Wh"HwBatteryCapacityKey = attribute.Key("hw.battery.capacity")// HwBatteryChemistryKey is the attribute Key conforming to the// "hw.battery.chemistry" semantic conventions. It represents the battery// [chemistry], e.g. Lithium-Ion, Nickel-Cadmium, etc.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Li-ion", "NiMH"//// [chemistry]: https://schemas.dmtf.org/wbem/cim-html/2.31.0/CIM_Battery.htmlHwBatteryChemistryKey = attribute.Key("hw.battery.chemistry")// HwBatteryStateKey is the attribute Key conforming to the "hw.battery.state"// semantic conventions. It represents the current state of the battery.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:HwBatteryStateKey = attribute.Key("hw.battery.state")// HwBiosVersionKey is the attribute Key conforming to the "hw.bios_version"// semantic conventions. It represents the BIOS version of the hardware// component.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "1.2.3"HwBiosVersionKey = attribute.Key("hw.bios_version")// HwDriverVersionKey is the attribute Key conforming to the "hw.driver_version"// semantic conventions. It represents the driver version for the hardware// component.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "10.2.1-3"HwDriverVersionKey = attribute.Key("hw.driver_version")// HwEnclosureTypeKey is the attribute Key conforming to the "hw.enclosure.type"// semantic conventions. It represents the type of the enclosure (useful for// modular systems).//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Computer", "Storage", "Switch"HwEnclosureTypeKey = attribute.Key("hw.enclosure.type")// HwFirmwareVersionKey is the attribute Key conforming to the// "hw.firmware_version" semantic conventions. It represents the firmware// version of the hardware component.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "2.0.1"HwFirmwareVersionKey = attribute.Key("hw.firmware_version")// HwGpuTaskKey is the attribute Key conforming to the "hw.gpu.task" semantic// conventions. It represents the type of task the GPU is performing.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:HwGpuTaskKey = attribute.Key("hw.gpu.task")// HwIDKey is the attribute Key conforming to the "hw.id" semantic conventions.// It represents an identifier for the hardware component, unique within the// monitored host.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "win32battery_battery_testsysa33_1"HwIDKey = attribute.Key("hw.id")// HwLimitTypeKey is the attribute Key conforming to the "hw.limit_type"// semantic conventions. It represents the type of limit for hardware// components.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:HwLimitTypeKey = attribute.Key("hw.limit_type")// HwLogicalDiskRaidLevelKey is the attribute Key conforming to the// "hw.logical_disk.raid_level" semantic conventions. It represents the RAID// Level of the logical disk.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "RAID0+1", "RAID5", "RAID10"HwLogicalDiskRaidLevelKey = attribute.Key("hw.logical_disk.raid_level")// HwLogicalDiskStateKey is the attribute Key conforming to the// "hw.logical_disk.state" semantic conventions. It represents the state of the// logical disk space usage.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:HwLogicalDiskStateKey = attribute.Key("hw.logical_disk.state")// HwMemoryTypeKey is the attribute Key conforming to the "hw.memory.type"// semantic conventions. It represents the type of the memory module.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "DDR4", "DDR5", "LPDDR5"HwMemoryTypeKey = attribute.Key("hw.memory.type")// HwModelKey is the attribute Key conforming to the "hw.model" semantic// conventions. It represents the descriptive model name of the hardware// component.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "PERC H740P", "Intel(R) Core(TM) i7-10700K", "Dell XPS 15 Battery"HwModelKey = attribute.Key("hw.model")// HwNameKey is the attribute Key conforming to the "hw.name" semantic// conventions. It represents an easily-recognizable name for the hardware// component.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "eth0"HwNameKey = attribute.Key("hw.name")// HwNetworkLogicalAddressesKey is the attribute Key conforming to the// "hw.network.logical_addresses" semantic conventions. It represents the// logical addresses of the adapter (e.g. IP address, or WWPN).//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "172.16.8.21", "57.11.193.42"HwNetworkLogicalAddressesKey = attribute.Key("hw.network.logical_addresses")// HwNetworkPhysicalAddressKey is the attribute Key conforming to the// "hw.network.physical_address" semantic conventions. It represents the// physical address of the adapter (e.g. MAC address, or WWNN).//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "00-90-F5-E9-7B-36"HwNetworkPhysicalAddressKey = attribute.Key("hw.network.physical_address")// HwParentKey is the attribute Key conforming to the "hw.parent" semantic// conventions. It represents the unique identifier of the parent component// (typically the `hw.id` attribute of the enclosure, or disk controller).//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "dellStorage_perc_0"HwParentKey = attribute.Key("hw.parent")// HwPhysicalDiskSmartAttributeKey is the attribute Key conforming to the// "hw.physical_disk.smart_attribute" semantic conventions. It represents the// [S.M.A.R.T.] (Self-Monitoring, Analysis, and Reporting Technology) attribute// of the physical disk.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Spin Retry Count", "Seek Error Rate", "Raw Read Error Rate"//// [S.M.A.R.T.]: https://wikipedia.org/wiki/S.M.A.R.T.HwPhysicalDiskSmartAttributeKey = attribute.Key("hw.physical_disk.smart_attribute")// HwPhysicalDiskStateKey is the attribute Key conforming to the// "hw.physical_disk.state" semantic conventions. It represents the state of the// physical disk endurance utilization.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:HwPhysicalDiskStateKey = attribute.Key("hw.physical_disk.state")// HwPhysicalDiskTypeKey is the attribute Key conforming to the// "hw.physical_disk.type" semantic conventions. It represents the type of the// physical disk.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "HDD", "SSD", "10K"HwPhysicalDiskTypeKey = attribute.Key("hw.physical_disk.type")// HwSensorLocationKey is the attribute Key conforming to the// "hw.sensor_location" semantic conventions. It represents the location of the// sensor.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "cpu0", "ps1", "INLET", "CPU0_DIE", "AMBIENT", "MOTHERBOARD", "PS0// V3_3", "MAIN_12V", "CPU_VCORE"HwSensorLocationKey = attribute.Key("hw.sensor_location")// HwSerialNumberKey is the attribute Key conforming to the "hw.serial_number"// semantic conventions. It represents the serial number of the hardware// component.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "CNFCP0123456789"HwSerialNumberKey = attribute.Key("hw.serial_number")// HwStateKey is the attribute Key conforming to the "hw.state" semantic// conventions. It represents the current state of the component.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:HwStateKey = attribute.Key("hw.state")// HwTapeDriveOperationTypeKey is the attribute Key conforming to the// "hw.tape_drive.operation_type" semantic conventions. It represents the type// of tape drive operation.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:HwTapeDriveOperationTypeKey = attribute.Key("hw.tape_drive.operation_type")// HwTypeKey is the attribute Key conforming to the "hw.type" semantic// conventions. It represents the type of the component.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: Describes the category of the hardware component for which `hw.state`// is being reported. For example, `hw.type=temperature` along with// `hw.state=degraded` would indicate that the temperature of the hardware// component has been reported as `degraded`.HwTypeKey = attribute.Key("hw.type")// HwVendorKey is the attribute Key conforming to the "hw.vendor" semantic// conventions. It represents the vendor name of the hardware component.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Dell", "HP", "Intel", "AMD", "LSI", "Lenovo"HwVendorKey = attribute.Key("hw.vendor"))// HwBatteryCapacity returns an attribute KeyValue conforming to the// "hw.battery.capacity" semantic conventions. It represents the design capacity// in Watts-hours or Amper-hours.func ( string) attribute.KeyValue {return HwBatteryCapacityKey.String()}// HwBatteryChemistry returns an attribute KeyValue conforming to the// "hw.battery.chemistry" semantic conventions. It represents the battery// [chemistry], e.g. Lithium-Ion, Nickel-Cadmium, etc.//// [chemistry]: https://schemas.dmtf.org/wbem/cim-html/2.31.0/CIM_Battery.htmlfunc ( string) attribute.KeyValue {return HwBatteryChemistryKey.String()}// HwBiosVersion returns an attribute KeyValue conforming to the// "hw.bios_version" semantic conventions. It represents the BIOS version of the// hardware component.func ( string) attribute.KeyValue {return HwBiosVersionKey.String()}// HwDriverVersion returns an attribute KeyValue conforming to the// "hw.driver_version" semantic conventions. It represents the driver version for// the hardware component.func ( string) attribute.KeyValue {return HwDriverVersionKey.String()}// HwEnclosureType returns an attribute KeyValue conforming to the// "hw.enclosure.type" semantic conventions. It represents the type of the// enclosure (useful for modular systems).func ( string) attribute.KeyValue {return HwEnclosureTypeKey.String()}// HwFirmwareVersion returns an attribute KeyValue conforming to the// "hw.firmware_version" semantic conventions. It represents the firmware version// of the hardware component.func ( string) attribute.KeyValue {return HwFirmwareVersionKey.String()}// HwID returns an attribute KeyValue conforming to the "hw.id" semantic// conventions. It represents an identifier for the hardware component, unique// within the monitored host.func ( string) attribute.KeyValue {return HwIDKey.String()}// HwLogicalDiskRaidLevel returns an attribute KeyValue conforming to the// "hw.logical_disk.raid_level" semantic conventions. It represents the RAID// Level of the logical disk.func ( string) attribute.KeyValue {return HwLogicalDiskRaidLevelKey.String()}// HwMemoryType returns an attribute KeyValue conforming to the "hw.memory.type"// semantic conventions. It represents the type of the memory module.func ( string) attribute.KeyValue {return HwMemoryTypeKey.String()}// HwModel returns an attribute KeyValue conforming to the "hw.model" semantic// conventions. It represents the descriptive model name of the hardware// component.func ( string) attribute.KeyValue {return HwModelKey.String()}// HwName returns an attribute KeyValue conforming to the "hw.name" semantic// conventions. It represents an easily-recognizable name for the hardware// component.func ( string) attribute.KeyValue {return HwNameKey.String()}// HwNetworkLogicalAddresses returns an attribute KeyValue conforming to the// "hw.network.logical_addresses" semantic conventions. It represents the logical// addresses of the adapter (e.g. IP address, or WWPN).func ( ...string) attribute.KeyValue {return HwNetworkLogicalAddressesKey.StringSlice()}// HwNetworkPhysicalAddress returns an attribute KeyValue conforming to the// "hw.network.physical_address" semantic conventions. It represents the physical// address of the adapter (e.g. MAC address, or WWNN).func ( string) attribute.KeyValue {return HwNetworkPhysicalAddressKey.String()}// HwParent returns an attribute KeyValue conforming to the "hw.parent" semantic// conventions. It represents the unique identifier of the parent component// (typically the `hw.id` attribute of the enclosure, or disk controller).func ( string) attribute.KeyValue {return HwParentKey.String()}// HwPhysicalDiskSmartAttribute returns an attribute KeyValue conforming to the// "hw.physical_disk.smart_attribute" semantic conventions. It represents the// [S.M.A.R.T.] (Self-Monitoring, Analysis, and Reporting Technology) attribute// of the physical disk.//// [S.M.A.R.T.]: https://wikipedia.org/wiki/S.M.A.R.T.func ( string) attribute.KeyValue {return HwPhysicalDiskSmartAttributeKey.String()}// HwPhysicalDiskType returns an attribute KeyValue conforming to the// "hw.physical_disk.type" semantic conventions. It represents the type of the// physical disk.func ( string) attribute.KeyValue {return HwPhysicalDiskTypeKey.String()}// HwSensorLocation returns an attribute KeyValue conforming to the// "hw.sensor_location" semantic conventions. It represents the location of the// sensor.func ( string) attribute.KeyValue {return HwSensorLocationKey.String()}// HwSerialNumber returns an attribute KeyValue conforming to the// "hw.serial_number" semantic conventions. It represents the serial number of// the hardware component.func ( string) attribute.KeyValue {return HwSerialNumberKey.String()}// HwVendor returns an attribute KeyValue conforming to the "hw.vendor" semantic// conventions. It represents the vendor name of the hardware component.func ( string) attribute.KeyValue {return HwVendorKey.String()}// Enum values for hw.battery.statevar (// Charging// Stability: developmentHwBatteryStateCharging = HwBatteryStateKey.String("charging")// Discharging// Stability: developmentHwBatteryStateDischarging = HwBatteryStateKey.String("discharging"))// Enum values for hw.gpu.taskvar (// Decoder// Stability: developmentHwGpuTaskDecoder = HwGpuTaskKey.String("decoder")// Encoder// Stability: developmentHwGpuTaskEncoder = HwGpuTaskKey.String("encoder")// General// Stability: developmentHwGpuTaskGeneral = HwGpuTaskKey.String("general"))// Enum values for hw.limit_typevar (// Critical// Stability: developmentHwLimitTypeCritical = HwLimitTypeKey.String("critical")// Degraded// Stability: developmentHwLimitTypeDegraded = HwLimitTypeKey.String("degraded")// High Critical// Stability: developmentHwLimitTypeHighCritical = HwLimitTypeKey.String("high.critical")// High Degraded// Stability: developmentHwLimitTypeHighDegraded = HwLimitTypeKey.String("high.degraded")// Low Critical// Stability: developmentHwLimitTypeLowCritical = HwLimitTypeKey.String("low.critical")// Low Degraded// Stability: developmentHwLimitTypeLowDegraded = HwLimitTypeKey.String("low.degraded")// Maximum// Stability: developmentHwLimitTypeMax = HwLimitTypeKey.String("max")// Throttled// Stability: developmentHwLimitTypeThrottled = HwLimitTypeKey.String("throttled")// Turbo// Stability: developmentHwLimitTypeTurbo = HwLimitTypeKey.String("turbo"))// Enum values for hw.logical_disk.statevar (// Used// Stability: developmentHwLogicalDiskStateUsed = HwLogicalDiskStateKey.String("used")// Free// Stability: developmentHwLogicalDiskStateFree = HwLogicalDiskStateKey.String("free"))// Enum values for hw.physical_disk.statevar (// Remaining// Stability: developmentHwPhysicalDiskStateRemaining = HwPhysicalDiskStateKey.String("remaining"))// Enum values for hw.statevar (// Degraded// Stability: developmentHwStateDegraded = HwStateKey.String("degraded")// Failed// Stability: developmentHwStateFailed = HwStateKey.String("failed")// Needs Cleaning// Stability: developmentHwStateNeedsCleaning = HwStateKey.String("needs_cleaning")// OK// Stability: developmentHwStateOk = HwStateKey.String("ok")// Predicted Failure// Stability: developmentHwStatePredictedFailure = HwStateKey.String("predicted_failure"))// Enum values for hw.tape_drive.operation_typevar (// Mount// Stability: developmentHwTapeDriveOperationTypeMount = HwTapeDriveOperationTypeKey.String("mount")// Unmount// Stability: developmentHwTapeDriveOperationTypeUnmount = HwTapeDriveOperationTypeKey.String("unmount")// Clean// Stability: developmentHwTapeDriveOperationTypeClean = HwTapeDriveOperationTypeKey.String("clean"))// Enum values for hw.typevar (// Battery// Stability: developmentHwTypeBattery = HwTypeKey.String("battery")// CPU// Stability: developmentHwTypeCPU = HwTypeKey.String("cpu")// Disk controller// Stability: developmentHwTypeDiskController = HwTypeKey.String("disk_controller")// Enclosure// Stability: developmentHwTypeEnclosure = HwTypeKey.String("enclosure")// Fan// Stability: developmentHwTypeFan = HwTypeKey.String("fan")// GPU// Stability: developmentHwTypeGpu = HwTypeKey.String("gpu")// Logical disk// Stability: developmentHwTypeLogicalDisk = HwTypeKey.String("logical_disk")// Memory// Stability: developmentHwTypeMemory = HwTypeKey.String("memory")// Network// Stability: developmentHwTypeNetwork = HwTypeKey.String("network")// Physical disk// Stability: developmentHwTypePhysicalDisk = HwTypeKey.String("physical_disk")// Power supply// Stability: developmentHwTypePowerSupply = HwTypeKey.String("power_supply")// Tape drive// Stability: developmentHwTypeTapeDrive = HwTypeKey.String("tape_drive")// Temperature// Stability: developmentHwTypeTemperature = HwTypeKey.String("temperature")// Voltage// Stability: developmentHwTypeVoltage = HwTypeKey.String("voltage"))// Namespace: iosconst (// IOSAppStateKey is the attribute Key conforming to the "ios.app.state"// semantic conventions. It represents the this attribute represents the state// of the application.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: The iOS lifecycle states are defined in the// [UIApplicationDelegate documentation], and from which the `OS terminology`// column values are derived.//// [UIApplicationDelegate documentation]: https://developer.apple.com/documentation/uikit/uiapplicationdelegateIOSAppStateKey = attribute.Key("ios.app.state"))// Enum values for ios.app.statevar (// The app has become `active`. Associated with UIKit notification// `applicationDidBecomeActive`.//// Stability: developmentIOSAppStateActive = IOSAppStateKey.String("active")// The app is now `inactive`. Associated with UIKit notification// `applicationWillResignActive`.//// Stability: developmentIOSAppStateInactive = IOSAppStateKey.String("inactive")// The app is now in the background. This value is associated with UIKit// notification `applicationDidEnterBackground`.//// Stability: developmentIOSAppStateBackground = IOSAppStateKey.String("background")// The app is now in the foreground. This value is associated with UIKit// notification `applicationWillEnterForeground`.//// Stability: developmentIOSAppStateForeground = IOSAppStateKey.String("foreground")// The app is about to terminate. Associated with UIKit notification// `applicationWillTerminate`.//// Stability: developmentIOSAppStateTerminate = IOSAppStateKey.String("terminate"))// Namespace: k8sconst (// K8SClusterNameKey is the attribute Key conforming to the "k8s.cluster.name"// semantic conventions. It represents the name of the cluster.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "opentelemetry-cluster"K8SClusterNameKey = attribute.Key("k8s.cluster.name")// K8SClusterUIDKey is the attribute Key conforming to the "k8s.cluster.uid"// semantic conventions. It represents a pseudo-ID for the cluster, set to the// UID of the `kube-system` namespace.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "218fc5a9-a5f1-4b54-aa05-46717d0ab26d"// Note: K8s doesn't have support for obtaining a cluster ID. If this is ever// added, we will recommend collecting the `k8s.cluster.uid` through the// official APIs. In the meantime, we are able to use the `uid` of the// `kube-system` namespace as a proxy for cluster ID. Read on for the// rationale.//// Every object created in a K8s cluster is assigned a distinct UID. The// `kube-system` namespace is used by Kubernetes itself and will exist// for the lifetime of the cluster. Using the `uid` of the `kube-system`// namespace is a reasonable proxy for the K8s ClusterID as it will only// change if the cluster is rebuilt. Furthermore, Kubernetes UIDs are// UUIDs as standardized by// [ISO/IEC 9834-8 and ITU-T X.667].// Which states://// > If generated according to one of the mechanisms defined in Rec.// > ITU-T X.667 | ISO/IEC 9834-8, a UUID is either guaranteed to be// > different from all other UUIDs generated before 3603 A.D., or is// > extremely likely to be different (depending on the mechanism chosen).//// Therefore, UIDs between clusters should be extremely unlikely to// conflict.//// [ISO/IEC 9834-8 and ITU-T X.667]: https://www.itu.int/ITU-T/studygroups/com17/oid.htmlK8SClusterUIDKey = attribute.Key("k8s.cluster.uid")// K8SContainerNameKey is the attribute Key conforming to the// "k8s.container.name" semantic conventions. It represents the name of the// Container from Pod specification, must be unique within a Pod. Container// runtime usually uses different globally unique name (`container.name`).//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "redis"K8SContainerNameKey = attribute.Key("k8s.container.name")// K8SContainerRestartCountKey is the attribute Key conforming to the// "k8s.container.restart_count" semantic conventions. It represents the number// of times the container was restarted. This attribute can be used to identify// a particular container (running or stopped) within a container spec.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples:K8SContainerRestartCountKey = attribute.Key("k8s.container.restart_count")// K8SContainerStatusLastTerminatedReasonKey is the attribute Key conforming to// the "k8s.container.status.last_terminated_reason" semantic conventions. It// represents the last terminated reason of the Container.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Evicted", "Error"K8SContainerStatusLastTerminatedReasonKey = attribute.Key("k8s.container.status.last_terminated_reason")// K8SContainerStatusReasonKey is the attribute Key conforming to the// "k8s.container.status.reason" semantic conventions. It represents the reason// for the container state. Corresponds to the `reason` field of the:// [K8s ContainerStateWaiting] or [K8s ContainerStateTerminated].//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "ContainerCreating", "CrashLoopBackOff",// "CreateContainerConfigError", "ErrImagePull", "ImagePullBackOff",// "OOMKilled", "Completed", "Error", "ContainerCannotRun"//// [K8s ContainerStateWaiting]: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#containerstatewaiting-v1-core// [K8s ContainerStateTerminated]: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#containerstateterminated-v1-coreK8SContainerStatusReasonKey = attribute.Key("k8s.container.status.reason")// K8SContainerStatusStateKey is the attribute Key conforming to the// "k8s.container.status.state" semantic conventions. It represents the state of// the container. [K8s ContainerState].//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "terminated", "running", "waiting"//// [K8s ContainerState]: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#containerstate-v1-coreK8SContainerStatusStateKey = attribute.Key("k8s.container.status.state")// K8SCronJobNameKey is the attribute Key conforming to the "k8s.cronjob.name"// semantic conventions. It represents the name of the CronJob.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "opentelemetry"K8SCronJobNameKey = attribute.Key("k8s.cronjob.name")// K8SCronJobUIDKey is the attribute Key conforming to the "k8s.cronjob.uid"// semantic conventions. It represents the UID of the CronJob.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "275ecb36-5aa8-4c2a-9c47-d8bb681b9aff"K8SCronJobUIDKey = attribute.Key("k8s.cronjob.uid")// K8SDaemonSetNameKey is the attribute Key conforming to the// "k8s.daemonset.name" semantic conventions. It represents the name of the// DaemonSet.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "opentelemetry"K8SDaemonSetNameKey = attribute.Key("k8s.daemonset.name")// K8SDaemonSetUIDKey is the attribute Key conforming to the "k8s.daemonset.uid"// semantic conventions. It represents the UID of the DaemonSet.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "275ecb36-5aa8-4c2a-9c47-d8bb681b9aff"K8SDaemonSetUIDKey = attribute.Key("k8s.daemonset.uid")// K8SDeploymentNameKey is the attribute Key conforming to the// "k8s.deployment.name" semantic conventions. It represents the name of the// Deployment.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "opentelemetry"K8SDeploymentNameKey = attribute.Key("k8s.deployment.name")// K8SDeploymentUIDKey is the attribute Key conforming to the// "k8s.deployment.uid" semantic conventions. It represents the UID of the// Deployment.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "275ecb36-5aa8-4c2a-9c47-d8bb681b9aff"K8SDeploymentUIDKey = attribute.Key("k8s.deployment.uid")// K8SHPAMetricTypeKey is the attribute Key conforming to the// "k8s.hpa.metric.type" semantic conventions. It represents the type of metric// source for the horizontal pod autoscaler.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Resource", "ContainerResource"// Note: This attribute reflects the `type` field of spec.metrics[] in the HPA.K8SHPAMetricTypeKey = attribute.Key("k8s.hpa.metric.type")// K8SHPANameKey is the attribute Key conforming to the "k8s.hpa.name" semantic// conventions. It represents the name of the horizontal pod autoscaler.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "opentelemetry"K8SHPANameKey = attribute.Key("k8s.hpa.name")// K8SHPAScaletargetrefAPIVersionKey is the attribute Key conforming to the// "k8s.hpa.scaletargetref.api_version" semantic conventions. It represents the// API version of the target resource to scale for the HorizontalPodAutoscaler.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "apps/v1", "autoscaling/v2"// Note: This maps to the `apiVersion` field in the `scaleTargetRef` of the HPA// spec.K8SHPAScaletargetrefAPIVersionKey = attribute.Key("k8s.hpa.scaletargetref.api_version")// K8SHPAScaletargetrefKindKey is the attribute Key conforming to the// "k8s.hpa.scaletargetref.kind" semantic conventions. It represents the kind of// the target resource to scale for the HorizontalPodAutoscaler.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Deployment", "StatefulSet"// Note: This maps to the `kind` field in the `scaleTargetRef` of the HPA spec.K8SHPAScaletargetrefKindKey = attribute.Key("k8s.hpa.scaletargetref.kind")// K8SHPAScaletargetrefNameKey is the attribute Key conforming to the// "k8s.hpa.scaletargetref.name" semantic conventions. It represents the name of// the target resource to scale for the HorizontalPodAutoscaler.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "my-deployment", "my-statefulset"// Note: This maps to the `name` field in the `scaleTargetRef` of the HPA spec.K8SHPAScaletargetrefNameKey = attribute.Key("k8s.hpa.scaletargetref.name")// K8SHPAUIDKey is the attribute Key conforming to the "k8s.hpa.uid" semantic// conventions. It represents the UID of the horizontal pod autoscaler.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "275ecb36-5aa8-4c2a-9c47-d8bb681b9aff"K8SHPAUIDKey = attribute.Key("k8s.hpa.uid")// K8SHugepageSizeKey is the attribute Key conforming to the "k8s.hugepage.size"// semantic conventions. It represents the size (identifier) of the K8s huge// page.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "2Mi"K8SHugepageSizeKey = attribute.Key("k8s.hugepage.size")// K8SJobNameKey is the attribute Key conforming to the "k8s.job.name" semantic// conventions. It represents the name of the Job.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "opentelemetry"K8SJobNameKey = attribute.Key("k8s.job.name")// K8SJobUIDKey is the attribute Key conforming to the "k8s.job.uid" semantic// conventions. It represents the UID of the Job.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "275ecb36-5aa8-4c2a-9c47-d8bb681b9aff"K8SJobUIDKey = attribute.Key("k8s.job.uid")// K8SNamespaceNameKey is the attribute Key conforming to the// "k8s.namespace.name" semantic conventions. It represents the name of the// namespace that the pod is running in.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "default"K8SNamespaceNameKey = attribute.Key("k8s.namespace.name")// K8SNamespacePhaseKey is the attribute Key conforming to the// "k8s.namespace.phase" semantic conventions. It represents the phase of the// K8s namespace.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "active", "terminating"// Note: This attribute aligns with the `phase` field of the// [K8s NamespaceStatus]//// [K8s NamespaceStatus]: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#namespacestatus-v1-coreK8SNamespacePhaseKey = attribute.Key("k8s.namespace.phase")// K8SNodeConditionStatusKey is the attribute Key conforming to the// "k8s.node.condition.status" semantic conventions. It represents the status of// the condition, one of True, False, Unknown.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "true", "false", "unknown"// Note: This attribute aligns with the `status` field of the// [NodeCondition]//// [NodeCondition]: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#nodecondition-v1-coreK8SNodeConditionStatusKey = attribute.Key("k8s.node.condition.status")// K8SNodeConditionTypeKey is the attribute Key conforming to the// "k8s.node.condition.type" semantic conventions. It represents the condition// type of a K8s Node.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "Ready", "DiskPressure"// Note: K8s Node conditions as described// by [K8s documentation].//// This attribute aligns with the `type` field of the// [NodeCondition]//// The set of possible values is not limited to those listed here. Managed// Kubernetes environments,// or custom controllers MAY introduce additional node condition types.// When this occurs, the exact value as reported by the Kubernetes API SHOULD be// used.//// [K8s documentation]: https://v1-32.docs.kubernetes.io/docs/reference/node/node-status/#condition// [NodeCondition]: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#nodecondition-v1-coreK8SNodeConditionTypeKey = attribute.Key("k8s.node.condition.type")// K8SNodeNameKey is the attribute Key conforming to the "k8s.node.name"// semantic conventions. It represents the name of the Node.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "node-1"K8SNodeNameKey = attribute.Key("k8s.node.name")// K8SNodeUIDKey is the attribute Key conforming to the "k8s.node.uid" semantic// conventions. It represents the UID of the Node.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "1eb3a0c6-0477-4080-a9cb-0cb7db65c6a2"K8SNodeUIDKey = attribute.Key("k8s.node.uid")// K8SPodNameKey is the attribute Key conforming to the "k8s.pod.name" semantic// conventions. It represents the name of the Pod.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "opentelemetry-pod-autoconf"K8SPodNameKey = attribute.Key("k8s.pod.name")// K8SPodUIDKey is the attribute Key conforming to the "k8s.pod.uid" semantic// conventions. It represents the UID of the Pod.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "275ecb36-5aa8-4c2a-9c47-d8bb681b9aff"K8SPodUIDKey = attribute.Key("k8s.pod.uid")// K8SReplicaSetNameKey is the attribute Key conforming to the// "k8s.replicaset.name" semantic conventions. It represents the name of the// ReplicaSet.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "opentelemetry"K8SReplicaSetNameKey = attribute.Key("k8s.replicaset.name")// K8SReplicaSetUIDKey is the attribute Key conforming to the// "k8s.replicaset.uid" semantic conventions. It represents the UID of the// ReplicaSet.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "275ecb36-5aa8-4c2a-9c47-d8bb681b9aff"K8SReplicaSetUIDKey = attribute.Key("k8s.replicaset.uid")// K8SReplicationControllerNameKey is the attribute Key conforming to the// "k8s.replicationcontroller.name" semantic conventions. It represents the name// of the replication controller.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "opentelemetry"K8SReplicationControllerNameKey = attribute.Key("k8s.replicationcontroller.name")// K8SReplicationControllerUIDKey is the attribute Key conforming to the// "k8s.replicationcontroller.uid" semantic conventions. It represents the UID// of the replication controller.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "275ecb36-5aa8-4c2a-9c47-d8bb681b9aff"K8SReplicationControllerUIDKey = attribute.Key("k8s.replicationcontroller.uid")// K8SResourceQuotaNameKey is the attribute Key conforming to the// "k8s.resourcequota.name" semantic conventions. It represents the name of the// resource quota.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "opentelemetry"K8SResourceQuotaNameKey = attribute.Key("k8s.resourcequota.name")// K8SResourceQuotaResourceNameKey is the attribute Key conforming to the// "k8s.resourcequota.resource_name" semantic conventions. It represents the// name of the K8s resource a resource quota defines.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "count/replicationcontrollers"// Note: The value for this attribute can be either the full// `count/<resource>[.<group>]` string (e.g., count/deployments.apps,// count/pods), or, for certain core Kubernetes resources, just the resource// name (e.g., pods, services, configmaps). Both forms are supported by// Kubernetes for object count quotas. See// [Kubernetes Resource Quotas documentation] for more details.//// [Kubernetes Resource Quotas documentation]: https://kubernetes.io/docs/concepts/policy/resource-quotas/#object-count-quotaK8SResourceQuotaResourceNameKey = attribute.Key("k8s.resourcequota.resource_name")// K8SResourceQuotaUIDKey is the attribute Key conforming to the// "k8s.resourcequota.uid" semantic conventions. It represents the UID of the// resource quota.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "275ecb36-5aa8-4c2a-9c47-d8bb681b9aff"K8SResourceQuotaUIDKey = attribute.Key("k8s.resourcequota.uid")// K8SStatefulSetNameKey is the attribute Key conforming to the// "k8s.statefulset.name" semantic conventions. It represents the name of the// StatefulSet.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "opentelemetry"K8SStatefulSetNameKey = attribute.Key("k8s.statefulset.name")// K8SStatefulSetUIDKey is the attribute Key conforming to the// "k8s.statefulset.uid" semantic conventions. It represents the UID of the// StatefulSet.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "275ecb36-5aa8-4c2a-9c47-d8bb681b9aff"K8SStatefulSetUIDKey = attribute.Key("k8s.statefulset.uid")// K8SStorageclassNameKey is the attribute Key conforming to the// "k8s.storageclass.name" semantic conventions. It represents the name of K8s// [StorageClass] object.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "gold.storageclass.storage.k8s.io"//// [StorageClass]: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#storageclass-v1-storage-k8s-ioK8SStorageclassNameKey = attribute.Key("k8s.storageclass.name")// K8SVolumeNameKey is the attribute Key conforming to the "k8s.volume.name"// semantic conventions. It represents the name of the K8s volume.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "volume0"K8SVolumeNameKey = attribute.Key("k8s.volume.name")// K8SVolumeTypeKey is the attribute Key conforming to the "k8s.volume.type"// semantic conventions. It represents the type of the K8s volume.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "emptyDir", "persistentVolumeClaim"K8SVolumeTypeKey = attribute.Key("k8s.volume.type"))// K8SClusterName returns an attribute KeyValue conforming to the// "k8s.cluster.name" semantic conventions. It represents the name of the// cluster.func ( string) attribute.KeyValue {return K8SClusterNameKey.String()}// K8SClusterUID returns an attribute KeyValue conforming to the// "k8s.cluster.uid" semantic conventions. It represents a pseudo-ID for the// cluster, set to the UID of the `kube-system` namespace.func ( string) attribute.KeyValue {return K8SClusterUIDKey.String()}// K8SContainerName returns an attribute KeyValue conforming to the// "k8s.container.name" semantic conventions. It represents the name of the// Container from Pod specification, must be unique within a Pod. Container// runtime usually uses different globally unique name (`container.name`).func ( string) attribute.KeyValue {return K8SContainerNameKey.String()}// K8SContainerRestartCount returns an attribute KeyValue conforming to the// "k8s.container.restart_count" semantic conventions. It represents the number// of times the container was restarted. This attribute can be used to identify a// particular container (running or stopped) within a container spec.func ( int) attribute.KeyValue {return K8SContainerRestartCountKey.Int()}// K8SContainerStatusLastTerminatedReason returns an attribute KeyValue// conforming to the "k8s.container.status.last_terminated_reason" semantic// conventions. It represents the last terminated reason of the Container.func ( string) attribute.KeyValue {return K8SContainerStatusLastTerminatedReasonKey.String()}// K8SCronJobAnnotation returns an attribute KeyValue conforming to the// "k8s.cronjob.annotation" semantic conventions. It represents the cronjob// annotation placed on the CronJob, the `<key>` being the annotation name, the// value being the annotation value.func ( string, string) attribute.KeyValue {return attribute.String("k8s.cronjob.annotation."+, )}// K8SCronJobLabel returns an attribute KeyValue conforming to the// "k8s.cronjob.label" semantic conventions. It represents the label placed on// the CronJob, the `<key>` being the label name, the value being the label// value.func ( string, string) attribute.KeyValue {return attribute.String("k8s.cronjob.label."+, )}// K8SCronJobName returns an attribute KeyValue conforming to the// "k8s.cronjob.name" semantic conventions. It represents the name of the// CronJob.func ( string) attribute.KeyValue {return K8SCronJobNameKey.String()}// K8SCronJobUID returns an attribute KeyValue conforming to the// "k8s.cronjob.uid" semantic conventions. It represents the UID of the CronJob.func ( string) attribute.KeyValue {return K8SCronJobUIDKey.String()}// K8SDaemonSetAnnotation returns an attribute KeyValue conforming to the// "k8s.daemonset.annotation" semantic conventions. It represents the annotation// placed on the DaemonSet, the `<key>` being the annotation name, the value// being the annotation value, even if the value is empty.func ( string, string) attribute.KeyValue {return attribute.String("k8s.daemonset.annotation."+, )}// K8SDaemonSetLabel returns an attribute KeyValue conforming to the// "k8s.daemonset.label" semantic conventions. It represents the label placed on// the DaemonSet, the `<key>` being the label name, the value being the label// value, even if the value is empty.func ( string, string) attribute.KeyValue {return attribute.String("k8s.daemonset.label."+, )}// K8SDaemonSetName returns an attribute KeyValue conforming to the// "k8s.daemonset.name" semantic conventions. It represents the name of the// DaemonSet.func ( string) attribute.KeyValue {return K8SDaemonSetNameKey.String()}// K8SDaemonSetUID returns an attribute KeyValue conforming to the// "k8s.daemonset.uid" semantic conventions. It represents the UID of the// DaemonSet.func ( string) attribute.KeyValue {return K8SDaemonSetUIDKey.String()}// K8SDeploymentAnnotation returns an attribute KeyValue conforming to the// "k8s.deployment.annotation" semantic conventions. It represents the annotation// placed on the Deployment, the `<key>` being the annotation name, the value// being the annotation value, even if the value is empty.func ( string, string) attribute.KeyValue {return attribute.String("k8s.deployment.annotation."+, )}// K8SDeploymentLabel returns an attribute KeyValue conforming to the// "k8s.deployment.label" semantic conventions. It represents the label placed on// the Deployment, the `<key>` being the label name, the value being the label// value, even if the value is empty.func ( string, string) attribute.KeyValue {return attribute.String("k8s.deployment.label."+, )}// K8SDeploymentName returns an attribute KeyValue conforming to the// "k8s.deployment.name" semantic conventions. It represents the name of the// Deployment.func ( string) attribute.KeyValue {return K8SDeploymentNameKey.String()}// K8SDeploymentUID returns an attribute KeyValue conforming to the// "k8s.deployment.uid" semantic conventions. It represents the UID of the// Deployment.func ( string) attribute.KeyValue {return K8SDeploymentUIDKey.String()}// K8SHPAMetricType returns an attribute KeyValue conforming to the// "k8s.hpa.metric.type" semantic conventions. It represents the type of metric// source for the horizontal pod autoscaler.func ( string) attribute.KeyValue {return K8SHPAMetricTypeKey.String()}// K8SHPAName returns an attribute KeyValue conforming to the "k8s.hpa.name"// semantic conventions. It represents the name of the horizontal pod autoscaler.func ( string) attribute.KeyValue {return K8SHPANameKey.String()}// K8SHPAScaletargetrefAPIVersion returns an attribute KeyValue conforming to the// "k8s.hpa.scaletargetref.api_version" semantic conventions. It represents the// API version of the target resource to scale for the HorizontalPodAutoscaler.func ( string) attribute.KeyValue {return K8SHPAScaletargetrefAPIVersionKey.String()}// K8SHPAScaletargetrefKind returns an attribute KeyValue conforming to the// "k8s.hpa.scaletargetref.kind" semantic conventions. It represents the kind of// the target resource to scale for the HorizontalPodAutoscaler.func ( string) attribute.KeyValue {return K8SHPAScaletargetrefKindKey.String()}// K8SHPAScaletargetrefName returns an attribute KeyValue conforming to the// "k8s.hpa.scaletargetref.name" semantic conventions. It represents the name of// the target resource to scale for the HorizontalPodAutoscaler.func ( string) attribute.KeyValue {return K8SHPAScaletargetrefNameKey.String()}// K8SHPAUID returns an attribute KeyValue conforming to the "k8s.hpa.uid"// semantic conventions. It represents the UID of the horizontal pod autoscaler.func ( string) attribute.KeyValue {return K8SHPAUIDKey.String()}// K8SHugepageSize returns an attribute KeyValue conforming to the// "k8s.hugepage.size" semantic conventions. It represents the size (identifier)// of the K8s huge page.func ( string) attribute.KeyValue {return K8SHugepageSizeKey.String()}// K8SJobAnnotation returns an attribute KeyValue conforming to the// "k8s.job.annotation" semantic conventions. It represents the annotation placed// on the Job, the `<key>` being the annotation name, the value being the// annotation value, even if the value is empty.func ( string, string) attribute.KeyValue {return attribute.String("k8s.job.annotation."+, )}// K8SJobLabel returns an attribute KeyValue conforming to the "k8s.job.label"// semantic conventions. It represents the label placed on the Job, the `<key>`// being the label name, the value being the label value, even if the value is// empty.func ( string, string) attribute.KeyValue {return attribute.String("k8s.job.label."+, )}// K8SJobName returns an attribute KeyValue conforming to the "k8s.job.name"// semantic conventions. It represents the name of the Job.func ( string) attribute.KeyValue {return K8SJobNameKey.String()}// K8SJobUID returns an attribute KeyValue conforming to the "k8s.job.uid"// semantic conventions. It represents the UID of the Job.func ( string) attribute.KeyValue {return K8SJobUIDKey.String()}// K8SNamespaceAnnotation returns an attribute KeyValue conforming to the// "k8s.namespace.annotation" semantic conventions. It represents the annotation// placed on the Namespace, the `<key>` being the annotation name, the value// being the annotation value, even if the value is empty.func ( string, string) attribute.KeyValue {return attribute.String("k8s.namespace.annotation."+, )}// K8SNamespaceLabel returns an attribute KeyValue conforming to the// "k8s.namespace.label" semantic conventions. It represents the label placed on// the Namespace, the `<key>` being the label name, the value being the label// value, even if the value is empty.func ( string, string) attribute.KeyValue {return attribute.String("k8s.namespace.label."+, )}// K8SNamespaceName returns an attribute KeyValue conforming to the// "k8s.namespace.name" semantic conventions. It represents the name of the// namespace that the pod is running in.func ( string) attribute.KeyValue {return K8SNamespaceNameKey.String()}// K8SNodeAnnotation returns an attribute KeyValue conforming to the// "k8s.node.annotation" semantic conventions. It represents the annotation// placed on the Node, the `<key>` being the annotation name, the value being the// annotation value, even if the value is empty.func ( string, string) attribute.KeyValue {return attribute.String("k8s.node.annotation."+, )}// K8SNodeLabel returns an attribute KeyValue conforming to the "k8s.node.label"// semantic conventions. It represents the label placed on the Node, the `<key>`// being the label name, the value being the label value, even if the value is// empty.func ( string, string) attribute.KeyValue {return attribute.String("k8s.node.label."+, )}// K8SNodeName returns an attribute KeyValue conforming to the "k8s.node.name"// semantic conventions. It represents the name of the Node.func ( string) attribute.KeyValue {return K8SNodeNameKey.String()}// K8SNodeUID returns an attribute KeyValue conforming to the "k8s.node.uid"// semantic conventions. It represents the UID of the Node.func ( string) attribute.KeyValue {return K8SNodeUIDKey.String()}// K8SPodAnnotation returns an attribute KeyValue conforming to the// "k8s.pod.annotation" semantic conventions. It represents the annotation placed// on the Pod, the `<key>` being the annotation name, the value being the// annotation value.func ( string, string) attribute.KeyValue {return attribute.String("k8s.pod.annotation."+, )}// K8SPodLabel returns an attribute KeyValue conforming to the "k8s.pod.label"// semantic conventions. It represents the label placed on the Pod, the `<key>`// being the label name, the value being the label value.func ( string, string) attribute.KeyValue {return attribute.String("k8s.pod.label."+, )}// K8SPodName returns an attribute KeyValue conforming to the "k8s.pod.name"// semantic conventions. It represents the name of the Pod.func ( string) attribute.KeyValue {return K8SPodNameKey.String()}// K8SPodUID returns an attribute KeyValue conforming to the "k8s.pod.uid"// semantic conventions. It represents the UID of the Pod.func ( string) attribute.KeyValue {return K8SPodUIDKey.String()}// K8SReplicaSetAnnotation returns an attribute KeyValue conforming to the// "k8s.replicaset.annotation" semantic conventions. It represents the annotation// placed on the ReplicaSet, the `<key>` being the annotation name, the value// being the annotation value, even if the value is empty.func ( string, string) attribute.KeyValue {return attribute.String("k8s.replicaset.annotation."+, )}// K8SReplicaSetLabel returns an attribute KeyValue conforming to the// "k8s.replicaset.label" semantic conventions. It represents the label placed on// the ReplicaSet, the `<key>` being the label name, the value being the label// value, even if the value is empty.func ( string, string) attribute.KeyValue {return attribute.String("k8s.replicaset.label."+, )}// K8SReplicaSetName returns an attribute KeyValue conforming to the// "k8s.replicaset.name" semantic conventions. It represents the name of the// ReplicaSet.func ( string) attribute.KeyValue {return K8SReplicaSetNameKey.String()}// K8SReplicaSetUID returns an attribute KeyValue conforming to the// "k8s.replicaset.uid" semantic conventions. It represents the UID of the// ReplicaSet.func ( string) attribute.KeyValue {return K8SReplicaSetUIDKey.String()}// K8SReplicationControllerName returns an attribute KeyValue conforming to the// "k8s.replicationcontroller.name" semantic conventions. It represents the name// of the replication controller.func ( string) attribute.KeyValue {return K8SReplicationControllerNameKey.String()}// K8SReplicationControllerUID returns an attribute KeyValue conforming to the// "k8s.replicationcontroller.uid" semantic conventions. It represents the UID of// the replication controller.func ( string) attribute.KeyValue {return K8SReplicationControllerUIDKey.String()}// K8SResourceQuotaName returns an attribute KeyValue conforming to the// "k8s.resourcequota.name" semantic conventions. It represents the name of the// resource quota.func ( string) attribute.KeyValue {return K8SResourceQuotaNameKey.String()}// K8SResourceQuotaResourceName returns an attribute KeyValue conforming to the// "k8s.resourcequota.resource_name" semantic conventions. It represents the name// of the K8s resource a resource quota defines.func ( string) attribute.KeyValue {return K8SResourceQuotaResourceNameKey.String()}// K8SResourceQuotaUID returns an attribute KeyValue conforming to the// "k8s.resourcequota.uid" semantic conventions. It represents the UID of the// resource quota.func ( string) attribute.KeyValue {return K8SResourceQuotaUIDKey.String()}// K8SStatefulSetAnnotation returns an attribute KeyValue conforming to the// "k8s.statefulset.annotation" semantic conventions. It represents the// annotation placed on the StatefulSet, the `<key>` being the annotation name,// the value being the annotation value, even if the value is empty.func ( string, string) attribute.KeyValue {return attribute.String("k8s.statefulset.annotation."+, )}// K8SStatefulSetLabel returns an attribute KeyValue conforming to the// "k8s.statefulset.label" semantic conventions. It represents the label placed// on the StatefulSet, the `<key>` being the label name, the value being the// label value, even if the value is empty.func ( string, string) attribute.KeyValue {return attribute.String("k8s.statefulset.label."+, )}// K8SStatefulSetName returns an attribute KeyValue conforming to the// "k8s.statefulset.name" semantic conventions. It represents the name of the// StatefulSet.func ( string) attribute.KeyValue {return K8SStatefulSetNameKey.String()}// K8SStatefulSetUID returns an attribute KeyValue conforming to the// "k8s.statefulset.uid" semantic conventions. It represents the UID of the// StatefulSet.func ( string) attribute.KeyValue {return K8SStatefulSetUIDKey.String()}// K8SStorageclassName returns an attribute KeyValue conforming to the// "k8s.storageclass.name" semantic conventions. It represents the name of K8s// [StorageClass] object.//// [StorageClass]: https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#storageclass-v1-storage-k8s-iofunc ( string) attribute.KeyValue {return K8SStorageclassNameKey.String()}// K8SVolumeName returns an attribute KeyValue conforming to the// "k8s.volume.name" semantic conventions. It represents the name of the K8s// volume.func ( string) attribute.KeyValue {return K8SVolumeNameKey.String()}// Enum values for k8s.container.status.reasonvar (// The container is being created.// Stability: developmentK8SContainerStatusReasonContainerCreating = K8SContainerStatusReasonKey.String("ContainerCreating")// The container is in a crash loop back off state.// Stability: developmentK8SContainerStatusReasonCrashLoopBackOff = K8SContainerStatusReasonKey.String("CrashLoopBackOff")// There was an error creating the container configuration.// Stability: developmentK8SContainerStatusReasonCreateContainerConfigError = K8SContainerStatusReasonKey.String("CreateContainerConfigError")// There was an error pulling the container image.// Stability: developmentK8SContainerStatusReasonErrImagePull = K8SContainerStatusReasonKey.String("ErrImagePull")// The container image pull is in back off state.// Stability: developmentK8SContainerStatusReasonImagePullBackOff = K8SContainerStatusReasonKey.String("ImagePullBackOff")// The container was killed due to out of memory.// Stability: developmentK8SContainerStatusReasonOomKilled = K8SContainerStatusReasonKey.String("OOMKilled")// The container has completed execution.// Stability: developmentK8SContainerStatusReasonCompleted = K8SContainerStatusReasonKey.String("Completed")// There was an error with the container.// Stability: developmentK8SContainerStatusReasonError = K8SContainerStatusReasonKey.String("Error")// The container cannot run.// Stability: developmentK8SContainerStatusReasonContainerCannotRun = K8SContainerStatusReasonKey.String("ContainerCannotRun"))// Enum values for k8s.container.status.statevar (// The container has terminated.// Stability: developmentK8SContainerStatusStateTerminated = K8SContainerStatusStateKey.String("terminated")// The container is running.// Stability: developmentK8SContainerStatusStateRunning = K8SContainerStatusStateKey.String("running")// The container is waiting.// Stability: developmentK8SContainerStatusStateWaiting = K8SContainerStatusStateKey.String("waiting"))// Enum values for k8s.namespace.phasevar (// Active namespace phase as described by [K8s API]// Stability: development//// [K8s API]: https://pkg.go.dev/k8s.io/api@v0.31.3/core/v1#NamespacePhaseK8SNamespacePhaseActive = K8SNamespacePhaseKey.String("active")// Terminating namespace phase as described by [K8s API]// Stability: development//// [K8s API]: https://pkg.go.dev/k8s.io/api@v0.31.3/core/v1#NamespacePhaseK8SNamespacePhaseTerminating = K8SNamespacePhaseKey.String("terminating"))// Enum values for k8s.node.condition.statusvar (// condition_true// Stability: developmentK8SNodeConditionStatusConditionTrue = K8SNodeConditionStatusKey.String("true")// condition_false// Stability: developmentK8SNodeConditionStatusConditionFalse = K8SNodeConditionStatusKey.String("false")// condition_unknown// Stability: developmentK8SNodeConditionStatusConditionUnknown = K8SNodeConditionStatusKey.String("unknown"))// Enum values for k8s.node.condition.typevar (// The node is healthy and ready to accept pods// Stability: developmentK8SNodeConditionTypeReady = K8SNodeConditionTypeKey.String("Ready")// Pressure exists on the disk size—that is, if the disk capacity is low// Stability: developmentK8SNodeConditionTypeDiskPressure = K8SNodeConditionTypeKey.String("DiskPressure")// Pressure exists on the node memory—that is, if the node memory is low// Stability: developmentK8SNodeConditionTypeMemoryPressure = K8SNodeConditionTypeKey.String("MemoryPressure")// Pressure exists on the processes—that is, if there are too many processes// on the node// Stability: developmentK8SNodeConditionTypePIDPressure = K8SNodeConditionTypeKey.String("PIDPressure")// The network for the node is not correctly configured// Stability: developmentK8SNodeConditionTypeNetworkUnavailable = K8SNodeConditionTypeKey.String("NetworkUnavailable"))// Enum values for k8s.volume.typevar (// A [persistentVolumeClaim] volume// Stability: development//// [persistentVolumeClaim]: https://v1-30.docs.kubernetes.io/docs/concepts/storage/volumes/#persistentvolumeclaimK8SVolumeTypePersistentVolumeClaim = K8SVolumeTypeKey.String("persistentVolumeClaim")// A [configMap] volume// Stability: development//// [configMap]: https://v1-30.docs.kubernetes.io/docs/concepts/storage/volumes/#configmapK8SVolumeTypeConfigMap = K8SVolumeTypeKey.String("configMap")// A [downwardAPI] volume// Stability: development//// [downwardAPI]: https://v1-30.docs.kubernetes.io/docs/concepts/storage/volumes/#downwardapiK8SVolumeTypeDownwardAPI = K8SVolumeTypeKey.String("downwardAPI")// An [emptyDir] volume// Stability: development//// [emptyDir]: https://v1-30.docs.kubernetes.io/docs/concepts/storage/volumes/#emptydirK8SVolumeTypeEmptyDir = K8SVolumeTypeKey.String("emptyDir")// A [secret] volume// Stability: development//// [secret]: https://v1-30.docs.kubernetes.io/docs/concepts/storage/volumes/#secretK8SVolumeTypeSecret = K8SVolumeTypeKey.String("secret")// A [local] volume// Stability: development//// [local]: https://v1-30.docs.kubernetes.io/docs/concepts/storage/volumes/#localK8SVolumeTypeLocal = K8SVolumeTypeKey.String("local"))// Namespace: linuxconst (// LinuxMemorySlabStateKey is the attribute Key conforming to the// "linux.memory.slab.state" semantic conventions. It represents the Linux Slab// memory state.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "reclaimable", "unreclaimable"LinuxMemorySlabStateKey = attribute.Key("linux.memory.slab.state"))// Enum values for linux.memory.slab.statevar (// reclaimable// Stability: developmentLinuxMemorySlabStateReclaimable = LinuxMemorySlabStateKey.String("reclaimable")// unreclaimable// Stability: developmentLinuxMemorySlabStateUnreclaimable = LinuxMemorySlabStateKey.String("unreclaimable"))// Namespace: logconst (// LogFileNameKey is the attribute Key conforming to the "log.file.name"// semantic conventions. It represents the basename of the file.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "audit.log"LogFileNameKey = attribute.Key("log.file.name")// LogFileNameResolvedKey is the attribute Key conforming to the// "log.file.name_resolved" semantic conventions. It represents the basename of// the file, with symlinks resolved.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "uuid.log"LogFileNameResolvedKey = attribute.Key("log.file.name_resolved")// LogFilePathKey is the attribute Key conforming to the "log.file.path"// semantic conventions. It represents the full path to the file.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "/var/log/mysql/audit.log"LogFilePathKey = attribute.Key("log.file.path")// LogFilePathResolvedKey is the attribute Key conforming to the// "log.file.path_resolved" semantic conventions. It represents the full path to// the file, with symlinks resolved.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "/var/lib/docker/uuid.log"LogFilePathResolvedKey = attribute.Key("log.file.path_resolved")// LogIostreamKey is the attribute Key conforming to the "log.iostream" semantic// conventions. It represents the stream associated with the log. See below for// a list of well-known values.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:LogIostreamKey = attribute.Key("log.iostream")// LogRecordOriginalKey is the attribute Key conforming to the// "log.record.original" semantic conventions. It represents the complete// original Log Record.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "77 <86>1 2015-08-06T21:58:59.694Z 192.168.2.133 inactive - - -// Something happened", "[INFO] 8/3/24 12:34:56 Something happened"// Note: 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.)LogRecordOriginalKey = attribute.Key("log.record.original")// LogRecordUIDKey is the attribute Key conforming to the "log.record.uid"// semantic conventions. It represents a unique identifier for the Log Record.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "01ARZ3NDEKTSV4RRFFQ69G5FAV"// Note: If an id is provided, other log records with the same id will be// considered duplicates and can be removed safely. This means, that two// distinguishable log records MUST have different values.// The id MAY be an// [Universally Unique Lexicographically Sortable Identifier (ULID)], but other// identifiers (e.g. UUID) may be used as needed.//// [Universally Unique Lexicographically Sortable Identifier (ULID)]: https://github.com/ulid/specLogRecordUIDKey = attribute.Key("log.record.uid"))// LogFileName returns an attribute KeyValue conforming to the "log.file.name"// semantic conventions. It represents the basename of the file.func ( string) attribute.KeyValue {return LogFileNameKey.String()}// LogFileNameResolved returns an attribute KeyValue conforming to the// "log.file.name_resolved" semantic conventions. It represents the basename of// the file, with symlinks resolved.func ( string) attribute.KeyValue {return LogFileNameResolvedKey.String()}// LogFilePath returns an attribute KeyValue conforming to the "log.file.path"// semantic conventions. It represents the full path to the file.func ( string) attribute.KeyValue {return LogFilePathKey.String()}// LogFilePathResolved returns an attribute KeyValue conforming to the// "log.file.path_resolved" semantic conventions. It represents the full path to// the file, with symlinks resolved.func ( string) attribute.KeyValue {return LogFilePathResolvedKey.String()}// LogRecordOriginal returns an attribute KeyValue conforming to the// "log.record.original" semantic conventions. It represents the complete// original Log Record.func ( string) attribute.KeyValue {return LogRecordOriginalKey.String()}// LogRecordUID returns an attribute KeyValue conforming to the "log.record.uid"// semantic conventions. It represents a unique identifier for the Log Record.func ( string) attribute.KeyValue {return LogRecordUIDKey.String()}// Enum values for log.iostreamvar (// Logs from stdout stream// Stability: developmentLogIostreamStdout = LogIostreamKey.String("stdout")// Events from stderr stream// Stability: developmentLogIostreamStderr = LogIostreamKey.String("stderr"))// Namespace: mainframeconst (// MainframeLparNameKey is the attribute Key conforming to the// "mainframe.lpar.name" semantic conventions. It represents the name of the// logical partition that hosts a systems with a mainframe operating system.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "LPAR01"MainframeLparNameKey = attribute.Key("mainframe.lpar.name"))// MainframeLparName returns an attribute KeyValue conforming to the// "mainframe.lpar.name" semantic conventions. It represents the name of the// logical partition that hosts a systems with a mainframe operating system.func ( string) attribute.KeyValue {return MainframeLparNameKey.String()}// Namespace: messagingconst (// MessagingBatchMessageCountKey is the attribute Key conforming to the// "messaging.batch.message_count" semantic conventions. It represents the// number of messages sent, received, or processed in the scope of the batching// operation.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 0, 1, 2// Note: Instrumentations SHOULD NOT set `messaging.batch.message_count` on// spans that operate with a single message. When a messaging client library// supports both batch and single-message API for the same operation,// instrumentations SHOULD use `messaging.batch.message_count` for batching APIs// and SHOULD NOT use it for single-message APIs.MessagingBatchMessageCountKey = attribute.Key("messaging.batch.message_count")// MessagingClientIDKey is the attribute Key conforming to the// "messaging.client.id" semantic conventions. It represents a unique identifier// for the client that consumes or produces a message.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "client-5", "myhost@8742@s8083jm"MessagingClientIDKey = attribute.Key("messaging.client.id")// MessagingConsumerGroupNameKey is the attribute Key conforming to the// "messaging.consumer.group.name" semantic conventions. It represents the name// of the consumer group with which a consumer is associated.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "my-group", "indexer"// Note: 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.MessagingConsumerGroupNameKey = attribute.Key("messaging.consumer.group.name")// MessagingDestinationAnonymousKey is the attribute Key conforming to the// "messaging.destination.anonymous" semantic conventions. It represents a// boolean that is true if the message destination is anonymous (could be// unnamed or have auto-generated name).//// Type: boolean// RequirementLevel: Recommended// Stability: Development//// Examples:MessagingDestinationAnonymousKey = attribute.Key("messaging.destination.anonymous")// MessagingDestinationNameKey is the attribute Key conforming to the// "messaging.destination.name" semantic conventions. It represents the message// destination name.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "MyQueue", "MyTopic"// Note: Destination name SHOULD uniquely identify a specific queue, topic or// other entity within the broker. If// the broker doesn't have such notion, the destination name SHOULD uniquely// identify the broker.MessagingDestinationNameKey = attribute.Key("messaging.destination.name")// MessagingDestinationPartitionIDKey is the attribute Key conforming to the// "messaging.destination.partition.id" semantic conventions. It represents the// identifier of the partition messages are sent to or received from, unique// within the `messaging.destination.name`.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: 1MessagingDestinationPartitionIDKey = attribute.Key("messaging.destination.partition.id")// MessagingDestinationSubscriptionNameKey is the attribute Key conforming to// the "messaging.destination.subscription.name" semantic conventions. It// represents the name of the destination subscription from which a message is// consumed.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "subscription-a"// Note: 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.MessagingDestinationSubscriptionNameKey = attribute.Key("messaging.destination.subscription.name")// MessagingDestinationTemplateKey is the attribute Key conforming to the// "messaging.destination.template" semantic conventions. It represents the low// cardinality representation of the messaging destination name.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "/customers/{customerId}"// Note: Destination names could be constructed from templates. An example would// be a destination name involving a user name or product id. Although the// destination name in this case is of high cardinality, the underlying template// is of low cardinality and can be effectively used for grouping and// aggregation.MessagingDestinationTemplateKey = attribute.Key("messaging.destination.template")// MessagingDestinationTemporaryKey is the attribute Key conforming to the// "messaging.destination.temporary" semantic conventions. It represents a// boolean that is true if the message destination is temporary and might not// exist anymore after messages are processed.//// Type: boolean// RequirementLevel: Recommended// Stability: Development//// Examples:MessagingDestinationTemporaryKey = attribute.Key("messaging.destination.temporary")// MessagingEventHubsMessageEnqueuedTimeKey is the attribute Key conforming to// the "messaging.eventhubs.message.enqueued_time" semantic conventions. It// represents the UTC epoch seconds at which the message has been accepted and// stored in the entity.//// Type: int// RequirementLevel: Recommended// Stability: DevelopmentMessagingEventHubsMessageEnqueuedTimeKey = attribute.Key("messaging.eventhubs.message.enqueued_time")// MessagingGCPPubSubMessageAckDeadlineKey is the attribute Key conforming to// the "messaging.gcp_pubsub.message.ack_deadline" semantic conventions. It// represents the ack deadline in seconds set for the modify ack deadline// request.//// Type: int// RequirementLevel: Recommended// Stability: DevelopmentMessagingGCPPubSubMessageAckDeadlineKey = attribute.Key("messaging.gcp_pubsub.message.ack_deadline")// MessagingGCPPubSubMessageAckIDKey is the attribute Key conforming to the// "messaging.gcp_pubsub.message.ack_id" semantic conventions. It represents the// ack id for a given message.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: ack_idMessagingGCPPubSubMessageAckIDKey = attribute.Key("messaging.gcp_pubsub.message.ack_id")// MessagingGCPPubSubMessageDeliveryAttemptKey is the attribute Key conforming// to the "messaging.gcp_pubsub.message.delivery_attempt" semantic conventions.// It represents the delivery attempt for a given message.//// Type: int// RequirementLevel: Recommended// Stability: DevelopmentMessagingGCPPubSubMessageDeliveryAttemptKey = attribute.Key("messaging.gcp_pubsub.message.delivery_attempt")// MessagingGCPPubSubMessageOrderingKeyKey is the attribute Key conforming to// the "messaging.gcp_pubsub.message.ordering_key" semantic conventions. It// represents the ordering key for a given message. If the attribute is not// present, the message does not have an ordering key.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: ordering_keyMessagingGCPPubSubMessageOrderingKeyKey = attribute.Key("messaging.gcp_pubsub.message.ordering_key")// MessagingKafkaMessageKeyKey is the attribute Key conforming to the// "messaging.kafka.message.key" semantic conventions. It represents the message// keys in Kafka are used for grouping alike messages to ensure they're// processed on the same partition. They differ from `messaging.message.id` in// that they're not unique. If the key is `null`, the attribute MUST NOT be set.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: myKey// Note: If the key type is not string, it's string representation has to be// supplied for the attribute. If the key has no unambiguous, canonical string// form, don't include its value.MessagingKafkaMessageKeyKey = attribute.Key("messaging.kafka.message.key")// MessagingKafkaMessageTombstoneKey is the attribute Key conforming to the// "messaging.kafka.message.tombstone" semantic conventions. It represents a// boolean that is true if the message is a tombstone.//// Type: boolean// RequirementLevel: Recommended// Stability: Development//// Examples:MessagingKafkaMessageTombstoneKey = attribute.Key("messaging.kafka.message.tombstone")// MessagingKafkaOffsetKey is the attribute Key conforming to the// "messaging.kafka.offset" semantic conventions. It represents the offset of a// record in the corresponding Kafka partition.//// Type: int// RequirementLevel: Recommended// Stability: DevelopmentMessagingKafkaOffsetKey = attribute.Key("messaging.kafka.offset")// MessagingMessageBodySizeKey is the attribute Key conforming to the// "messaging.message.body.size" semantic conventions. It represents the size of// the message body in bytes.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Note: This can refer to both the compressed or uncompressed body size. If// both sizes are known, the uncompressed// body size should be used.MessagingMessageBodySizeKey = attribute.Key("messaging.message.body.size")// MessagingMessageConversationIDKey is the attribute Key conforming to the// "messaging.message.conversation_id" semantic conventions. It represents the// conversation ID identifying the conversation to which the message belongs,// represented as a string. Sometimes called "Correlation ID".//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: MyConversationIdMessagingMessageConversationIDKey = attribute.Key("messaging.message.conversation_id")// MessagingMessageEnvelopeSizeKey is the attribute Key conforming to the// "messaging.message.envelope.size" semantic conventions. It represents the// size of the message body and metadata in bytes.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Note: This can refer to both the compressed or uncompressed size. If both// sizes are known, the uncompressed// size should be used.MessagingMessageEnvelopeSizeKey = attribute.Key("messaging.message.envelope.size")// MessagingMessageIDKey is the attribute Key conforming to the// "messaging.message.id" semantic conventions. It represents a value used by// the messaging system as an identifier for the message, represented as a// string.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: 452a7c7c7c7048c2f887f61572b18fc2MessagingMessageIDKey = attribute.Key("messaging.message.id")// MessagingOperationNameKey is the attribute Key conforming to the// "messaging.operation.name" semantic conventions. It represents the// system-specific name of the messaging operation.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "ack", "nack", "send"MessagingOperationNameKey = attribute.Key("messaging.operation.name")// MessagingOperationTypeKey is the attribute Key conforming to the// "messaging.operation.type" semantic conventions. It represents a string// identifying the type of the messaging operation.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: If a custom value is used, it MUST be of low cardinality.MessagingOperationTypeKey = attribute.Key("messaging.operation.type")// MessagingRabbitMQDestinationRoutingKeyKey is the attribute Key conforming to// the "messaging.rabbitmq.destination.routing_key" semantic conventions. It// represents the rabbitMQ message routing key.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: myKeyMessagingRabbitMQDestinationRoutingKeyKey = attribute.Key("messaging.rabbitmq.destination.routing_key")// MessagingRabbitMQMessageDeliveryTagKey is the attribute Key conforming to the// "messaging.rabbitmq.message.delivery_tag" semantic conventions. It represents// the rabbitMQ message delivery tag.//// Type: int// RequirementLevel: Recommended// Stability: DevelopmentMessagingRabbitMQMessageDeliveryTagKey = attribute.Key("messaging.rabbitmq.message.delivery_tag")// MessagingRocketMQConsumptionModelKey is the attribute Key conforming to the// "messaging.rocketmq.consumption_model" semantic conventions. It represents// the model of message consumption. This only applies to consumer spans.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:MessagingRocketMQConsumptionModelKey = attribute.Key("messaging.rocketmq.consumption_model")// MessagingRocketMQMessageDelayTimeLevelKey is the attribute Key conforming to// the "messaging.rocketmq.message.delay_time_level" semantic conventions. It// represents the delay time level for delay message, which determines the// message delay time.//// Type: int// RequirementLevel: Recommended// Stability: DevelopmentMessagingRocketMQMessageDelayTimeLevelKey = attribute.Key("messaging.rocketmq.message.delay_time_level")// MessagingRocketMQMessageDeliveryTimestampKey is the attribute Key conforming// to the "messaging.rocketmq.message.delivery_timestamp" semantic conventions.// It represents the timestamp in milliseconds that the delay message is// expected to be delivered to consumer.//// Type: int// RequirementLevel: Recommended// Stability: DevelopmentMessagingRocketMQMessageDeliveryTimestampKey = attribute.Key("messaging.rocketmq.message.delivery_timestamp")// MessagingRocketMQMessageGroupKey is the attribute Key conforming to the// "messaging.rocketmq.message.group" semantic conventions. It represents the it// is essential for FIFO message. Messages that belong to the same message group// are always processed one by one within the same consumer group.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: myMessageGroupMessagingRocketMQMessageGroupKey = attribute.Key("messaging.rocketmq.message.group")// MessagingRocketMQMessageKeysKey is the attribute Key conforming to the// "messaging.rocketmq.message.keys" semantic conventions. It represents the// key(s) of message, another way to mark message besides message id.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "keyA", "keyB"MessagingRocketMQMessageKeysKey = attribute.Key("messaging.rocketmq.message.keys")// MessagingRocketMQMessageTagKey is the attribute Key conforming to the// "messaging.rocketmq.message.tag" semantic conventions. It represents the// secondary classifier of message besides topic.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: tagAMessagingRocketMQMessageTagKey = attribute.Key("messaging.rocketmq.message.tag")// MessagingRocketMQMessageTypeKey is the attribute Key conforming to the// "messaging.rocketmq.message.type" semantic conventions. It represents the// type of message.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:MessagingRocketMQMessageTypeKey = attribute.Key("messaging.rocketmq.message.type")// MessagingRocketMQNamespaceKey is the attribute Key conforming to the// "messaging.rocketmq.namespace" semantic conventions. It represents the// namespace of RocketMQ resources, resources in different namespaces are// individual.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: myNamespaceMessagingRocketMQNamespaceKey = attribute.Key("messaging.rocketmq.namespace")// MessagingServiceBusDispositionStatusKey is the attribute Key conforming to// the "messaging.servicebus.disposition_status" semantic conventions. It// represents the describes the [settlement type].//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples://// [settlement type]: https://learn.microsoft.com/azure/service-bus-messaging/message-transfers-locks-settlement#peeklockMessagingServiceBusDispositionStatusKey = attribute.Key("messaging.servicebus.disposition_status")// MessagingServiceBusMessageDeliveryCountKey is the attribute Key conforming to// the "messaging.servicebus.message.delivery_count" semantic conventions. It// represents the number of deliveries that have been attempted for this// message.//// Type: int// RequirementLevel: Recommended// Stability: DevelopmentMessagingServiceBusMessageDeliveryCountKey = attribute.Key("messaging.servicebus.message.delivery_count")// MessagingServiceBusMessageEnqueuedTimeKey is the attribute Key conforming to// the "messaging.servicebus.message.enqueued_time" semantic conventions. It// represents the UTC epoch seconds at which the message has been accepted and// stored in the entity.//// Type: int// RequirementLevel: Recommended// Stability: DevelopmentMessagingServiceBusMessageEnqueuedTimeKey = attribute.Key("messaging.servicebus.message.enqueued_time")// MessagingSystemKey is the attribute Key conforming to the "messaging.system"// semantic conventions. It represents the messaging system as identified by the// client instrumentation.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: The actual messaging system may differ from the one known by the// client. For example, when using Kafka client libraries to communicate with// Azure Event Hubs, the `messaging.system` is set to `kafka` based on the// instrumentation's best knowledge.MessagingSystemKey = attribute.Key("messaging.system"))// MessagingBatchMessageCount returns an attribute KeyValue conforming to the// "messaging.batch.message_count" semantic conventions. It represents the number// of messages sent, received, or processed in the scope of the batching// operation.func ( int) attribute.KeyValue {return MessagingBatchMessageCountKey.Int()}// MessagingClientID returns an attribute KeyValue conforming to the// "messaging.client.id" semantic conventions. It represents a unique identifier// for the client that consumes or produces a message.func ( string) attribute.KeyValue {return MessagingClientIDKey.String()}// MessagingConsumerGroupName returns an attribute KeyValue conforming to the// "messaging.consumer.group.name" semantic conventions. It represents the name// of the consumer group with which a consumer is associated.func ( string) attribute.KeyValue {return MessagingConsumerGroupNameKey.String()}// MessagingDestinationAnonymous returns an attribute KeyValue conforming to the// "messaging.destination.anonymous" semantic conventions. It represents a// boolean that is true if the message destination is anonymous (could be unnamed// or have auto-generated name).func ( bool) attribute.KeyValue {return MessagingDestinationAnonymousKey.Bool()}// MessagingDestinationName returns an attribute KeyValue conforming to the// "messaging.destination.name" semantic conventions. It represents the message// destination name.func ( string) attribute.KeyValue {return MessagingDestinationNameKey.String()}// MessagingDestinationPartitionID returns an attribute KeyValue conforming to// the "messaging.destination.partition.id" semantic conventions. It represents// the identifier of the partition messages are sent to or received from, unique// within the `messaging.destination.name`.func ( string) attribute.KeyValue {return MessagingDestinationPartitionIDKey.String()}// MessagingDestinationSubscriptionName returns an attribute KeyValue conforming// to the "messaging.destination.subscription.name" semantic conventions. It// represents the name of the destination subscription from which a message is// consumed.func ( string) attribute.KeyValue {return MessagingDestinationSubscriptionNameKey.String()}// MessagingDestinationTemplate returns an attribute KeyValue conforming to the// "messaging.destination.template" semantic conventions. It represents the low// cardinality representation of the messaging destination name.func ( string) attribute.KeyValue {return MessagingDestinationTemplateKey.String()}// MessagingDestinationTemporary returns an attribute KeyValue conforming to the// "messaging.destination.temporary" semantic conventions. It represents a// boolean that is true if the message destination is temporary and might not// exist anymore after messages are processed.func ( bool) attribute.KeyValue {return MessagingDestinationTemporaryKey.Bool()}// MessagingEventHubsMessageEnqueuedTime returns an attribute KeyValue conforming// to the "messaging.eventhubs.message.enqueued_time" semantic conventions. It// represents the UTC epoch seconds at which the message has been accepted and// stored in the entity.func ( int) attribute.KeyValue {return MessagingEventHubsMessageEnqueuedTimeKey.Int()}// MessagingGCPPubSubMessageAckDeadline returns an attribute KeyValue conforming// to the "messaging.gcp_pubsub.message.ack_deadline" semantic conventions. It// represents the ack deadline in seconds set for the modify ack deadline// request.func ( int) attribute.KeyValue {return MessagingGCPPubSubMessageAckDeadlineKey.Int()}// MessagingGCPPubSubMessageAckID returns an attribute KeyValue conforming to the// "messaging.gcp_pubsub.message.ack_id" semantic conventions. It represents the// ack id for a given message.func ( string) attribute.KeyValue {return MessagingGCPPubSubMessageAckIDKey.String()}// MessagingGCPPubSubMessageDeliveryAttempt returns an attribute KeyValue// conforming to the "messaging.gcp_pubsub.message.delivery_attempt" semantic// conventions. It represents the delivery attempt for a given message.func ( int) attribute.KeyValue {return MessagingGCPPubSubMessageDeliveryAttemptKey.Int()}// MessagingGCPPubSubMessageOrderingKey returns an attribute KeyValue conforming// to the "messaging.gcp_pubsub.message.ordering_key" semantic conventions. It// represents the ordering key for a given message. If the attribute is not// present, the message does not have an ordering key.func ( string) attribute.KeyValue {return MessagingGCPPubSubMessageOrderingKeyKey.String()}// MessagingKafkaMessageKey returns an attribute KeyValue conforming to the// "messaging.kafka.message.key" semantic conventions. It represents the message// keys in Kafka are used for grouping alike messages to ensure they're processed// on the same partition. They differ from `messaging.message.id` in that they're// not unique. If the key is `null`, the attribute MUST NOT be set.func ( string) attribute.KeyValue {return MessagingKafkaMessageKeyKey.String()}// MessagingKafkaMessageTombstone returns an attribute KeyValue conforming to the// "messaging.kafka.message.tombstone" semantic conventions. It represents a// boolean that is true if the message is a tombstone.func ( bool) attribute.KeyValue {return MessagingKafkaMessageTombstoneKey.Bool()}// MessagingKafkaOffset returns an attribute KeyValue conforming to the// "messaging.kafka.offset" semantic conventions. It represents the offset of a// record in the corresponding Kafka partition.func ( int) attribute.KeyValue {return MessagingKafkaOffsetKey.Int()}// MessagingMessageBodySize returns an attribute KeyValue conforming to the// "messaging.message.body.size" semantic conventions. It represents the size of// the message body in bytes.func ( int) attribute.KeyValue {return MessagingMessageBodySizeKey.Int()}// MessagingMessageConversationID returns an attribute KeyValue conforming to the// "messaging.message.conversation_id" semantic conventions. It represents the// conversation ID identifying the conversation to which the message belongs,// represented as a string. Sometimes called "Correlation ID".func ( string) attribute.KeyValue {return MessagingMessageConversationIDKey.String()}// MessagingMessageEnvelopeSize returns an attribute KeyValue conforming to the// "messaging.message.envelope.size" semantic conventions. It represents the size// of the message body and metadata in bytes.func ( int) attribute.KeyValue {return MessagingMessageEnvelopeSizeKey.Int()}// MessagingMessageID returns an attribute KeyValue conforming to the// "messaging.message.id" semantic conventions. It represents a value used by the// messaging system as an identifier for the message, represented as a string.func ( string) attribute.KeyValue {return MessagingMessageIDKey.String()}// MessagingOperationName returns an attribute KeyValue conforming to the// "messaging.operation.name" semantic conventions. It represents the// system-specific name of the messaging operation.func ( string) attribute.KeyValue {return MessagingOperationNameKey.String()}// MessagingRabbitMQDestinationRoutingKey returns an attribute KeyValue// conforming to the "messaging.rabbitmq.destination.routing_key" semantic// conventions. It represents the rabbitMQ message routing key.func ( string) attribute.KeyValue {return MessagingRabbitMQDestinationRoutingKeyKey.String()}// MessagingRabbitMQMessageDeliveryTag returns an attribute KeyValue conforming// to the "messaging.rabbitmq.message.delivery_tag" semantic conventions. It// represents the rabbitMQ message delivery tag.func ( int) attribute.KeyValue {return MessagingRabbitMQMessageDeliveryTagKey.Int()}// MessagingRocketMQMessageDelayTimeLevel returns an attribute KeyValue// conforming to the "messaging.rocketmq.message.delay_time_level" semantic// conventions. It represents the delay time level for delay message, which// determines the message delay time.func ( int) attribute.KeyValue {return MessagingRocketMQMessageDelayTimeLevelKey.Int()}// MessagingRocketMQMessageDeliveryTimestamp returns an attribute KeyValue// conforming to the "messaging.rocketmq.message.delivery_timestamp" semantic// conventions. It represents the timestamp in milliseconds that the delay// message is expected to be delivered to consumer.func ( int) attribute.KeyValue {return MessagingRocketMQMessageDeliveryTimestampKey.Int()}// MessagingRocketMQMessageGroup returns an attribute KeyValue conforming to the// "messaging.rocketmq.message.group" semantic conventions. It represents the it// is essential for FIFO message. Messages that belong to the same message group// are always processed one by one within the same consumer group.func ( string) attribute.KeyValue {return MessagingRocketMQMessageGroupKey.String()}// MessagingRocketMQMessageKeys returns an attribute KeyValue conforming to the// "messaging.rocketmq.message.keys" semantic conventions. It represents the// key(s) of message, another way to mark message besides message id.func ( ...string) attribute.KeyValue {return MessagingRocketMQMessageKeysKey.StringSlice()}// MessagingRocketMQMessageTag returns an attribute KeyValue conforming to the// "messaging.rocketmq.message.tag" semantic conventions. It represents the// secondary classifier of message besides topic.func ( string) attribute.KeyValue {return MessagingRocketMQMessageTagKey.String()}// MessagingRocketMQNamespace returns an attribute KeyValue conforming to the// "messaging.rocketmq.namespace" semantic conventions. It represents the// namespace of RocketMQ resources, resources in different namespaces are// individual.func ( string) attribute.KeyValue {return MessagingRocketMQNamespaceKey.String()}// MessagingServiceBusMessageDeliveryCount returns an attribute KeyValue// conforming to the "messaging.servicebus.message.delivery_count" semantic// conventions. It represents the number of deliveries that have been attempted// for this message.func ( int) attribute.KeyValue {return MessagingServiceBusMessageDeliveryCountKey.Int()}// MessagingServiceBusMessageEnqueuedTime returns an attribute KeyValue// conforming to the "messaging.servicebus.message.enqueued_time" semantic// conventions. It represents the UTC epoch seconds at which the message has been// accepted and stored in the entity.func ( int) attribute.KeyValue {return MessagingServiceBusMessageEnqueuedTimeKey.Int()}// Enum values for messaging.operation.typevar (// 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 sending// scenarios.//// Stability: developmentMessagingOperationTypeCreate = MessagingOperationTypeKey.String("create")// One or more messages are provided for sending to an intermediary. If a single// message is sent, the context of the "Send" span can be used as the creation// context and no "Create" span needs to be created.//// Stability: developmentMessagingOperationTypeSend = MessagingOperationTypeKey.String("send")// 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.//// Stability: developmentMessagingOperationTypeReceive = MessagingOperationTypeKey.String("receive")// One or more messages are processed by a consumer.//// Stability: developmentMessagingOperationTypeProcess = MessagingOperationTypeKey.String("process")// One or more messages are settled.//// Stability: developmentMessagingOperationTypeSettle = MessagingOperationTypeKey.String("settle"))// Enum values for messaging.rocketmq.consumption_modelvar (// Clustering consumption model// Stability: developmentMessagingRocketMQConsumptionModelClustering = MessagingRocketMQConsumptionModelKey.String("clustering")// Broadcasting consumption model// Stability: developmentMessagingRocketMQConsumptionModelBroadcasting = MessagingRocketMQConsumptionModelKey.String("broadcasting"))// Enum values for messaging.rocketmq.message.typevar (// Normal message// Stability: developmentMessagingRocketMQMessageTypeNormal = MessagingRocketMQMessageTypeKey.String("normal")// FIFO message// Stability: developmentMessagingRocketMQMessageTypeFifo = MessagingRocketMQMessageTypeKey.String("fifo")// Delay message// Stability: developmentMessagingRocketMQMessageTypeDelay = MessagingRocketMQMessageTypeKey.String("delay")// Transaction message// Stability: developmentMessagingRocketMQMessageTypeTransaction = MessagingRocketMQMessageTypeKey.String("transaction"))// Enum values for messaging.servicebus.disposition_statusvar (// Message is completed// Stability: developmentMessagingServiceBusDispositionStatusComplete = MessagingServiceBusDispositionStatusKey.String("complete")// Message is abandoned// Stability: developmentMessagingServiceBusDispositionStatusAbandon = MessagingServiceBusDispositionStatusKey.String("abandon")// Message is sent to dead letter queue// Stability: developmentMessagingServiceBusDispositionStatusDeadLetter = MessagingServiceBusDispositionStatusKey.String("dead_letter")// Message is deferred// Stability: developmentMessagingServiceBusDispositionStatusDefer = MessagingServiceBusDispositionStatusKey.String("defer"))// Enum values for messaging.systemvar (// Apache ActiveMQ// Stability: developmentMessagingSystemActiveMQ = MessagingSystemKey.String("activemq")// Amazon Simple Notification Service (SNS)// Stability: developmentMessagingSystemAWSSNS = MessagingSystemKey.String("aws.sns")// Amazon Simple Queue Service (SQS)// Stability: developmentMessagingSystemAWSSQS = MessagingSystemKey.String("aws_sqs")// Azure Event Grid// Stability: developmentMessagingSystemEventGrid = MessagingSystemKey.String("eventgrid")// Azure Event Hubs// Stability: developmentMessagingSystemEventHubs = MessagingSystemKey.String("eventhubs")// Azure Service Bus// Stability: developmentMessagingSystemServiceBus = MessagingSystemKey.String("servicebus")// Google Cloud Pub/Sub// Stability: developmentMessagingSystemGCPPubSub = MessagingSystemKey.String("gcp_pubsub")// Java Message Service// Stability: developmentMessagingSystemJMS = MessagingSystemKey.String("jms")// Apache Kafka// Stability: developmentMessagingSystemKafka = MessagingSystemKey.String("kafka")// RabbitMQ// Stability: developmentMessagingSystemRabbitMQ = MessagingSystemKey.String("rabbitmq")// Apache RocketMQ// Stability: developmentMessagingSystemRocketMQ = MessagingSystemKey.String("rocketmq")// Apache Pulsar// Stability: developmentMessagingSystemPulsar = MessagingSystemKey.String("pulsar"))// Namespace: networkconst (// NetworkCarrierICCKey is the attribute Key conforming to the// "network.carrier.icc" semantic conventions. It represents the ISO 3166-1// alpha-2 2-character country code associated with the mobile carrier network.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: DENetworkCarrierICCKey = attribute.Key("network.carrier.icc")// NetworkCarrierMCCKey is the attribute Key conforming to the// "network.carrier.mcc" semantic conventions. It represents the mobile carrier// country code.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: 310NetworkCarrierMCCKey = attribute.Key("network.carrier.mcc")// NetworkCarrierMNCKey is the attribute Key conforming to the// "network.carrier.mnc" semantic conventions. It represents the mobile carrier// network code.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: 001NetworkCarrierMNCKey = attribute.Key("network.carrier.mnc")// NetworkCarrierNameKey is the attribute Key conforming to the// "network.carrier.name" semantic conventions. It represents the name of the// mobile carrier.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: sprintNetworkCarrierNameKey = attribute.Key("network.carrier.name")// NetworkConnectionStateKey is the attribute Key conforming to the// "network.connection.state" semantic conventions. It represents the state of// network connection.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "close_wait"// Note: Connection states are defined as part of the [rfc9293]//// [rfc9293]: https://datatracker.ietf.org/doc/html/rfc9293#section-3.3.2NetworkConnectionStateKey = attribute.Key("network.connection.state")// NetworkConnectionSubtypeKey is the attribute Key conforming to the// "network.connection.subtype" semantic conventions. It represents the this// describes more details regarding the connection.type. It may be the type of// cell technology connection, but it could be used for describing details about// a wifi connection.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: LTENetworkConnectionSubtypeKey = attribute.Key("network.connection.subtype")// NetworkConnectionTypeKey is the attribute Key conforming to the// "network.connection.type" semantic conventions. It represents the internet// connection type.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: wifiNetworkConnectionTypeKey = attribute.Key("network.connection.type")// NetworkInterfaceNameKey is the attribute Key conforming to the// "network.interface.name" semantic conventions. It represents the network// interface name.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "lo", "eth0"NetworkInterfaceNameKey = attribute.Key("network.interface.name")// NetworkIODirectionKey is the attribute Key conforming to the// "network.io.direction" semantic conventions. It represents the network IO// operation direction.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "transmit"NetworkIODirectionKey = attribute.Key("network.io.direction")// NetworkLocalAddressKey is the attribute Key conforming to the// "network.local.address" semantic conventions. It represents the local address// of the network connection - IP address or Unix domain socket name.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "10.1.2.80", "/tmp/my.sock"NetworkLocalAddressKey = attribute.Key("network.local.address")// NetworkLocalPortKey is the attribute Key conforming to the// "network.local.port" semantic conventions. It represents the local port// number of the network connection.//// Type: int// RequirementLevel: Recommended// Stability: Stable//// Examples: 65123NetworkLocalPortKey = attribute.Key("network.local.port")// NetworkPeerAddressKey is the attribute Key conforming to the// "network.peer.address" semantic conventions. It represents the peer address// of the network connection - IP address or Unix domain socket name.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "10.1.2.80", "/tmp/my.sock"NetworkPeerAddressKey = attribute.Key("network.peer.address")// NetworkPeerPortKey is the attribute Key conforming to the "network.peer.port"// semantic conventions. It represents the peer port number of the network// connection.//// Type: int// RequirementLevel: Recommended// Stability: Stable//// Examples: 65123NetworkPeerPortKey = attribute.Key("network.peer.port")// NetworkProtocolNameKey is the attribute Key conforming to the// "network.protocol.name" semantic conventions. It represents the// [OSI application layer] or non-OSI equivalent.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "amqp", "http", "mqtt"// Note: The value SHOULD be normalized to lowercase.//// [OSI application layer]: https://wikipedia.org/wiki/Application_layerNetworkProtocolNameKey = attribute.Key("network.protocol.name")// NetworkProtocolVersionKey is the attribute Key conforming to the// "network.protocol.version" semantic conventions. It represents the actual// version of the protocol used for network communication.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "1.1", "2"// Note: If protocol version is subject to negotiation (for example using [ALPN]// ), this attribute SHOULD be set to the negotiated version. If the actual// protocol version is not known, this attribute SHOULD NOT be set.//// [ALPN]: https://www.rfc-editor.org/rfc/rfc7301.htmlNetworkProtocolVersionKey = attribute.Key("network.protocol.version")// NetworkTransportKey is the attribute Key conforming to the// "network.transport" semantic conventions. It represents the// [OSI transport layer] or [inter-process communication method].//// Type: Enum// RequirementLevel: Recommended// Stability: Stable//// Examples: "tcp", "udp"// Note: The value SHOULD be normalized to lowercase.//// Consider always setting the transport when setting a port number, since// a port number is ambiguous without knowing the transport. For example// different processes could be listening on TCP port 12345 and UDP port 12345.//// [OSI transport layer]: https://wikipedia.org/wiki/Transport_layer// [inter-process communication method]: https://wikipedia.org/wiki/Inter-process_communicationNetworkTransportKey = attribute.Key("network.transport")// NetworkTypeKey is the attribute Key conforming to the "network.type" semantic// conventions. It represents the [OSI network layer] or non-OSI equivalent.//// Type: Enum// RequirementLevel: Recommended// Stability: Stable//// Examples: "ipv4", "ipv6"// Note: The value SHOULD be normalized to lowercase.//// [OSI network layer]: https://wikipedia.org/wiki/Network_layerNetworkTypeKey = attribute.Key("network.type"))// NetworkCarrierICC returns an attribute KeyValue conforming to the// "network.carrier.icc" semantic conventions. It represents the ISO 3166-1// alpha-2 2-character country code associated with the mobile carrier network.func ( string) attribute.KeyValue {return NetworkCarrierICCKey.String()}// NetworkCarrierMCC returns an attribute KeyValue conforming to the// "network.carrier.mcc" semantic conventions. It represents the mobile carrier// country code.func ( string) attribute.KeyValue {return NetworkCarrierMCCKey.String()}// NetworkCarrierMNC returns an attribute KeyValue conforming to the// "network.carrier.mnc" semantic conventions. It represents the mobile carrier// network code.func ( string) attribute.KeyValue {return NetworkCarrierMNCKey.String()}// NetworkCarrierName returns an attribute KeyValue conforming to the// "network.carrier.name" semantic conventions. It represents the name of the// mobile carrier.func ( string) attribute.KeyValue {return NetworkCarrierNameKey.String()}// NetworkInterfaceName returns an attribute KeyValue conforming to the// "network.interface.name" semantic conventions. It represents the network// interface name.func ( string) attribute.KeyValue {return NetworkInterfaceNameKey.String()}// NetworkLocalAddress returns an attribute KeyValue conforming to the// "network.local.address" semantic conventions. It represents the local address// of the network connection - IP address or Unix domain socket name.func ( string) attribute.KeyValue {return NetworkLocalAddressKey.String()}// NetworkLocalPort returns an attribute KeyValue conforming to the// "network.local.port" semantic conventions. It represents the local port number// of the network connection.func ( int) attribute.KeyValue {return NetworkLocalPortKey.Int()}// NetworkPeerAddress returns an attribute KeyValue conforming to the// "network.peer.address" semantic conventions. It represents the peer address of// the network connection - IP address or Unix domain socket name.func ( string) attribute.KeyValue {return NetworkPeerAddressKey.String()}// NetworkPeerPort returns an attribute KeyValue conforming to the// "network.peer.port" semantic conventions. It represents the peer port number// of the network connection.func ( int) attribute.KeyValue {return NetworkPeerPortKey.Int()}// NetworkProtocolName returns an attribute KeyValue conforming to the// "network.protocol.name" semantic conventions. It represents the// [OSI application layer] or non-OSI equivalent.//// [OSI application layer]: https://wikipedia.org/wiki/Application_layerfunc ( string) attribute.KeyValue {return NetworkProtocolNameKey.String()}// NetworkProtocolVersion returns an attribute KeyValue conforming to the// "network.protocol.version" semantic conventions. It represents the actual// version of the protocol used for network communication.func ( string) attribute.KeyValue {return NetworkProtocolVersionKey.String()}// Enum values for network.connection.statevar (// closed// Stability: developmentNetworkConnectionStateClosed = NetworkConnectionStateKey.String("closed")// close_wait// Stability: developmentNetworkConnectionStateCloseWait = NetworkConnectionStateKey.String("close_wait")// closing// Stability: developmentNetworkConnectionStateClosing = NetworkConnectionStateKey.String("closing")// established// Stability: developmentNetworkConnectionStateEstablished = NetworkConnectionStateKey.String("established")// fin_wait_1// Stability: developmentNetworkConnectionStateFinWait1 = NetworkConnectionStateKey.String("fin_wait_1")// fin_wait_2// Stability: developmentNetworkConnectionStateFinWait2 = NetworkConnectionStateKey.String("fin_wait_2")// last_ack// Stability: developmentNetworkConnectionStateLastAck = NetworkConnectionStateKey.String("last_ack")// listen// Stability: developmentNetworkConnectionStateListen = NetworkConnectionStateKey.String("listen")// syn_received// Stability: developmentNetworkConnectionStateSynReceived = NetworkConnectionStateKey.String("syn_received")// syn_sent// Stability: developmentNetworkConnectionStateSynSent = NetworkConnectionStateKey.String("syn_sent")// time_wait// Stability: developmentNetworkConnectionStateTimeWait = NetworkConnectionStateKey.String("time_wait"))// Enum values for network.connection.subtypevar (// GPRS// Stability: developmentNetworkConnectionSubtypeGprs = NetworkConnectionSubtypeKey.String("gprs")// EDGE// Stability: developmentNetworkConnectionSubtypeEdge = NetworkConnectionSubtypeKey.String("edge")// UMTS// Stability: developmentNetworkConnectionSubtypeUmts = NetworkConnectionSubtypeKey.String("umts")// CDMA// Stability: developmentNetworkConnectionSubtypeCdma = NetworkConnectionSubtypeKey.String("cdma")// EVDO Rel. 0// Stability: developmentNetworkConnectionSubtypeEvdo0 = NetworkConnectionSubtypeKey.String("evdo_0")// EVDO Rev. A// Stability: developmentNetworkConnectionSubtypeEvdoA = NetworkConnectionSubtypeKey.String("evdo_a")// CDMA2000 1XRTT// Stability: developmentNetworkConnectionSubtypeCdma20001xrtt = NetworkConnectionSubtypeKey.String("cdma2000_1xrtt")// HSDPA// Stability: developmentNetworkConnectionSubtypeHsdpa = NetworkConnectionSubtypeKey.String("hsdpa")// HSUPA// Stability: developmentNetworkConnectionSubtypeHsupa = NetworkConnectionSubtypeKey.String("hsupa")// HSPA// Stability: developmentNetworkConnectionSubtypeHspa = NetworkConnectionSubtypeKey.String("hspa")// IDEN// Stability: developmentNetworkConnectionSubtypeIden = NetworkConnectionSubtypeKey.String("iden")// EVDO Rev. B// Stability: developmentNetworkConnectionSubtypeEvdoB = NetworkConnectionSubtypeKey.String("evdo_b")// LTE// Stability: developmentNetworkConnectionSubtypeLte = NetworkConnectionSubtypeKey.String("lte")// EHRPD// Stability: developmentNetworkConnectionSubtypeEhrpd = NetworkConnectionSubtypeKey.String("ehrpd")// HSPAP// Stability: developmentNetworkConnectionSubtypeHspap = NetworkConnectionSubtypeKey.String("hspap")// GSM// Stability: developmentNetworkConnectionSubtypeGsm = NetworkConnectionSubtypeKey.String("gsm")// TD-SCDMA// Stability: developmentNetworkConnectionSubtypeTdScdma = NetworkConnectionSubtypeKey.String("td_scdma")// IWLAN// Stability: developmentNetworkConnectionSubtypeIwlan = NetworkConnectionSubtypeKey.String("iwlan")// 5G NR (New Radio)// Stability: developmentNetworkConnectionSubtypeNr = NetworkConnectionSubtypeKey.String("nr")// 5G NRNSA (New Radio Non-Standalone)// Stability: developmentNetworkConnectionSubtypeNrnsa = NetworkConnectionSubtypeKey.String("nrnsa")// LTE CA// Stability: developmentNetworkConnectionSubtypeLteCa = NetworkConnectionSubtypeKey.String("lte_ca"))// Enum values for network.connection.typevar (// wifi// Stability: developmentNetworkConnectionTypeWifi = NetworkConnectionTypeKey.String("wifi")// wired// Stability: developmentNetworkConnectionTypeWired = NetworkConnectionTypeKey.String("wired")// cell// Stability: developmentNetworkConnectionTypeCell = NetworkConnectionTypeKey.String("cell")// unavailable// Stability: developmentNetworkConnectionTypeUnavailable = NetworkConnectionTypeKey.String("unavailable")// unknown// Stability: developmentNetworkConnectionTypeUnknown = NetworkConnectionTypeKey.String("unknown"))// Enum values for network.io.directionvar (// transmit// Stability: developmentNetworkIODirectionTransmit = NetworkIODirectionKey.String("transmit")// receive// Stability: developmentNetworkIODirectionReceive = NetworkIODirectionKey.String("receive"))// Enum values for network.transportvar (// TCP// Stability: stableNetworkTransportTCP = NetworkTransportKey.String("tcp")// UDP// Stability: stableNetworkTransportUDP = NetworkTransportKey.String("udp")// Named or anonymous pipe.// Stability: stableNetworkTransportPipe = NetworkTransportKey.String("pipe")// Unix domain socket// Stability: stableNetworkTransportUnix = NetworkTransportKey.String("unix")// QUIC// Stability: stableNetworkTransportQUIC = NetworkTransportKey.String("quic"))// Enum values for network.typevar (// IPv4// Stability: stableNetworkTypeIPv4 = NetworkTypeKey.String("ipv4")// IPv6// Stability: stableNetworkTypeIPv6 = NetworkTypeKey.String("ipv6"))// Namespace: ociconst (// OCIManifestDigestKey is the attribute Key conforming to the// "oci.manifest.digest" semantic conventions. It represents the digest of the// OCI image manifest. For container images specifically is the digest by which// the container image is known.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples:// "sha256:e4ca62c0d62f3e886e684806dfe9d4e0cda60d54986898173c1083856cfda0f4"// Note: Follows [OCI Image Manifest Specification], and specifically the// [Digest property].// An example can be found in [Example Image Manifest].//// [OCI Image Manifest Specification]: https://github.com/opencontainers/image-spec/blob/main/manifest.md// [Digest property]: https://github.com/opencontainers/image-spec/blob/main/descriptor.md#digests// [Example Image Manifest]: https://github.com/opencontainers/image-spec/blob/main/manifest.md#example-image-manifestOCIManifestDigestKey = attribute.Key("oci.manifest.digest"))// OCIManifestDigest returns an attribute KeyValue conforming to the// "oci.manifest.digest" semantic conventions. It represents the digest of the// OCI image manifest. For container images specifically is the digest by which// the container image is known.func ( string) attribute.KeyValue {return OCIManifestDigestKey.String()}// Namespace: openaiconst (// OpenAIRequestServiceTierKey is the attribute Key conforming to the// "openai.request.service_tier" semantic conventions. It represents the service// tier requested. May be a specific tier, default, or auto.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "auto", "default"OpenAIRequestServiceTierKey = attribute.Key("openai.request.service_tier")// OpenAIResponseServiceTierKey is the attribute Key conforming to the// "openai.response.service_tier" semantic conventions. It represents the// service tier used for the response.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "scale", "default"OpenAIResponseServiceTierKey = attribute.Key("openai.response.service_tier")// OpenAIResponseSystemFingerprintKey is the attribute Key conforming to the// "openai.response.system_fingerprint" semantic conventions. It represents a// fingerprint to track any eventual change in the Generative AI environment.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "fp_44709d6fcb"OpenAIResponseSystemFingerprintKey = attribute.Key("openai.response.system_fingerprint"))// OpenAIResponseServiceTier returns an attribute KeyValue conforming to the// "openai.response.service_tier" semantic conventions. It represents the service// tier used for the response.func ( string) attribute.KeyValue {return OpenAIResponseServiceTierKey.String()}// OpenAIResponseSystemFingerprint returns an attribute KeyValue conforming to// the "openai.response.system_fingerprint" semantic conventions. It represents a// fingerprint to track any eventual change in the Generative AI environment.func ( string) attribute.KeyValue {return OpenAIResponseSystemFingerprintKey.String()}// Enum values for openai.request.service_tiervar (// The system will utilize scale tier credits until they are exhausted.// Stability: developmentOpenAIRequestServiceTierAuto = OpenAIRequestServiceTierKey.String("auto")// The system will utilize the default scale tier.// Stability: developmentOpenAIRequestServiceTierDefault = OpenAIRequestServiceTierKey.String("default"))// Namespace: opentracingconst (// OpenTracingRefTypeKey is the attribute Key conforming to the// "opentracing.ref_type" semantic conventions. It represents the parent-child// Reference type.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: The causal relationship between a child Span and a parent Span.OpenTracingRefTypeKey = attribute.Key("opentracing.ref_type"))// Enum values for opentracing.ref_typevar (// The parent Span depends on the child Span in some capacity// Stability: developmentOpenTracingRefTypeChildOf = OpenTracingRefTypeKey.String("child_of")// The parent Span doesn't depend in any way on the result of the child Span// Stability: developmentOpenTracingRefTypeFollowsFrom = OpenTracingRefTypeKey.String("follows_from"))// Namespace: osconst (// OSBuildIDKey is the attribute Key conforming to the "os.build_id" semantic// conventions. It represents the unique identifier for a particular build or// compilation of the operating system.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "TQ3C.230805.001.B2", "20E247", "22621"OSBuildIDKey = attribute.Key("os.build_id")// OSDescriptionKey is the attribute Key conforming to the "os.description"// semantic conventions. It represents the human readable (not intended to be// parsed) OS version information, like e.g. reported by `ver` or// `lsb_release -a` commands.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Microsoft Windows [Version 10.0.18363.778]", "Ubuntu 18.04.1 LTS"OSDescriptionKey = attribute.Key("os.description")// OSNameKey is the attribute Key conforming to the "os.name" semantic// conventions. It represents the human readable operating system name.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "iOS", "Android", "Ubuntu"OSNameKey = attribute.Key("os.name")// OSTypeKey is the attribute Key conforming to the "os.type" semantic// conventions. It represents the operating system type.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:OSTypeKey = attribute.Key("os.type")// OSVersionKey is the attribute Key conforming to the "os.version" semantic// conventions. It represents the version string of the operating system as// defined in [Version Attributes].//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "14.2.1", "18.04.1"//// [Version Attributes]: /docs/resource/README.md#version-attributesOSVersionKey = attribute.Key("os.version"))// OSBuildID returns an attribute KeyValue conforming to the "os.build_id"// semantic conventions. It represents the unique identifier for a particular// build or compilation of the operating system.func ( string) attribute.KeyValue {return OSBuildIDKey.String()}// OSDescription returns an attribute KeyValue conforming to the "os.description"// semantic conventions. It represents the human readable (not intended to be// parsed) OS version information, like e.g. reported by `ver` or// `lsb_release -a` commands.func ( string) attribute.KeyValue {return OSDescriptionKey.String()}// OSName returns an attribute KeyValue conforming to the "os.name" semantic// conventions. It represents the human readable operating system name.func ( string) attribute.KeyValue {return OSNameKey.String()}// OSVersion returns an attribute KeyValue conforming to the "os.version"// semantic conventions. It represents the version string of the operating system// as defined in [Version Attributes].//// [Version Attributes]: /docs/resource/README.md#version-attributesfunc ( string) attribute.KeyValue {return OSVersionKey.String()}// Enum values for os.typevar (// Microsoft Windows// Stability: developmentOSTypeWindows = OSTypeKey.String("windows")// Linux// Stability: developmentOSTypeLinux = OSTypeKey.String("linux")// Apple Darwin// Stability: developmentOSTypeDarwin = OSTypeKey.String("darwin")// FreeBSD// Stability: developmentOSTypeFreeBSD = OSTypeKey.String("freebsd")// NetBSD// Stability: developmentOSTypeNetBSD = OSTypeKey.String("netbsd")// OpenBSD// Stability: developmentOSTypeOpenBSD = OSTypeKey.String("openbsd")// DragonFly BSD// Stability: developmentOSTypeDragonflyBSD = OSTypeKey.String("dragonflybsd")// HP-UX (Hewlett Packard Unix)// Stability: developmentOSTypeHPUX = OSTypeKey.String("hpux")// AIX (Advanced Interactive eXecutive)// Stability: developmentOSTypeAIX = OSTypeKey.String("aix")// SunOS, Oracle Solaris// Stability: developmentOSTypeSolaris = OSTypeKey.String("solaris")// IBM z/OS// Stability: developmentOSTypeZOS = OSTypeKey.String("zos"))// Namespace: otelconst (// OTelComponentNameKey is the attribute Key conforming to the// "otel.component.name" semantic conventions. It represents a name uniquely// identifying the instance of the OpenTelemetry component within its containing// SDK instance.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "otlp_grpc_span_exporter/0", "custom-name"// Note: Implementations SHOULD ensure a low cardinality for this attribute,// even across application or SDK restarts.// E.g. implementations MUST NOT use UUIDs as values for this attribute.//// Implementations MAY achieve these goals by following a// `<otel.component.type>/<instance-counter>` pattern, e.g.// `batching_span_processor/0`.// Hereby `otel.component.type` refers to the corresponding attribute value of// the component.//// The value of `instance-counter` MAY be automatically assigned by the// component and uniqueness within the enclosing SDK instance MUST be// guaranteed.// For example, `<instance-counter>` MAY be implemented by using a monotonically// increasing counter (starting with `0`), which is incremented every time an// instance of the given component type is started.//// With this implementation, for example the first Batching Span Processor would// have `batching_span_processor/0`// as `otel.component.name`, the second one `batching_span_processor/1` and so// on.// These values will therefore be reused in the case of an application restart.OTelComponentNameKey = attribute.Key("otel.component.name")// OTelComponentTypeKey is the attribute Key conforming to the// "otel.component.type" semantic conventions. It represents a name identifying// the type of the OpenTelemetry component.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "batching_span_processor", "com.example.MySpanExporter"// Note: If none of the standardized values apply, implementations SHOULD use// the language-defined name of the type.// E.g. for Java the fully qualified classname SHOULD be used in this case.OTelComponentTypeKey = attribute.Key("otel.component.type")// OTelScopeNameKey is the attribute Key conforming to the "otel.scope.name"// semantic conventions. It represents the name of the instrumentation scope - (// `InstrumentationScope.Name` in OTLP).//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "io.opentelemetry.contrib.mongodb"OTelScopeNameKey = attribute.Key("otel.scope.name")// OTelScopeSchemaURLKey is the attribute Key conforming to the// "otel.scope.schema_url" semantic conventions. It represents the schema URL of// the instrumentation scope.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "https://opentelemetry.io/schemas/1.31.0"OTelScopeSchemaURLKey = attribute.Key("otel.scope.schema_url")// OTelScopeVersionKey is the attribute Key conforming to the// "otel.scope.version" semantic conventions. It represents the version of the// instrumentation scope - (`InstrumentationScope.Version` in OTLP).//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "1.0.0"OTelScopeVersionKey = attribute.Key("otel.scope.version")// OTelSpanParentOriginKey is the attribute Key conforming to the// "otel.span.parent.origin" semantic conventions. It represents the determines// whether the span has a parent span, and if so,// [whether it is a remote parent].//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples://// [whether it is a remote parent]: https://opentelemetry.io/docs/specs/otel/trace/api/#isremoteOTelSpanParentOriginKey = attribute.Key("otel.span.parent.origin")// OTelSpanSamplingResultKey is the attribute Key conforming to the// "otel.span.sampling_result" semantic conventions. It represents the result// value of the sampler for this span.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:OTelSpanSamplingResultKey = attribute.Key("otel.span.sampling_result")// OTelStatusCodeKey is the attribute Key conforming to the "otel.status_code"// semantic conventions. It represents the name of the code, either "OK" or// "ERROR". MUST NOT be set if the status code is UNSET.//// Type: Enum// RequirementLevel: Recommended// Stability: Stable//// Examples:OTelStatusCodeKey = attribute.Key("otel.status_code")// OTelStatusDescriptionKey is the attribute Key conforming to the// "otel.status_description" semantic conventions. It represents the description// of the Status if it has a value, otherwise not set.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "resource not found"OTelStatusDescriptionKey = attribute.Key("otel.status_description"))// OTelComponentName returns an attribute KeyValue conforming to the// "otel.component.name" semantic conventions. It represents a name uniquely// identifying the instance of the OpenTelemetry component within its containing// SDK instance.func ( string) attribute.KeyValue {return OTelComponentNameKey.String()}// OTelScopeName returns an attribute KeyValue conforming to the// "otel.scope.name" semantic conventions. It represents the name of the// instrumentation scope - (`InstrumentationScope.Name` in OTLP).func ( string) attribute.KeyValue {return OTelScopeNameKey.String()}// OTelScopeSchemaURL returns an attribute KeyValue conforming to the// "otel.scope.schema_url" semantic conventions. It represents the schema URL of// the instrumentation scope.func ( string) attribute.KeyValue {return OTelScopeSchemaURLKey.String()}// OTelScopeVersion returns an attribute KeyValue conforming to the// "otel.scope.version" semantic conventions. It represents the version of the// instrumentation scope - (`InstrumentationScope.Version` in OTLP).func ( string) attribute.KeyValue {return OTelScopeVersionKey.String()}// OTelStatusDescription returns an attribute KeyValue conforming to the// "otel.status_description" semantic conventions. It represents the description// of the Status if it has a value, otherwise not set.func ( string) attribute.KeyValue {return OTelStatusDescriptionKey.String()}// Enum values for otel.component.typevar (// The builtin SDK batching span processor//// Stability: developmentOTelComponentTypeBatchingSpanProcessor = OTelComponentTypeKey.String("batching_span_processor")// The builtin SDK simple span processor//// Stability: developmentOTelComponentTypeSimpleSpanProcessor = OTelComponentTypeKey.String("simple_span_processor")// The builtin SDK batching log record processor//// Stability: developmentOTelComponentTypeBatchingLogProcessor = OTelComponentTypeKey.String("batching_log_processor")// The builtin SDK simple log record processor//// Stability: developmentOTelComponentTypeSimpleLogProcessor = OTelComponentTypeKey.String("simple_log_processor")// OTLP span exporter over gRPC with protobuf serialization//// Stability: developmentOTelComponentTypeOtlpGRPCSpanExporter = OTelComponentTypeKey.String("otlp_grpc_span_exporter")// OTLP span exporter over HTTP with protobuf serialization//// Stability: developmentOTelComponentTypeOtlpHTTPSpanExporter = OTelComponentTypeKey.String("otlp_http_span_exporter")// OTLP span exporter over HTTP with JSON serialization//// Stability: developmentOTelComponentTypeOtlpHTTPJSONSpanExporter = OTelComponentTypeKey.String("otlp_http_json_span_exporter")// Zipkin span exporter over HTTP//// Stability: developmentOTelComponentTypeZipkinHTTPSpanExporter = OTelComponentTypeKey.String("zipkin_http_span_exporter")// OTLP log record exporter over gRPC with protobuf serialization//// Stability: developmentOTelComponentTypeOtlpGRPCLogExporter = OTelComponentTypeKey.String("otlp_grpc_log_exporter")// OTLP log record exporter over HTTP with protobuf serialization//// Stability: developmentOTelComponentTypeOtlpHTTPLogExporter = OTelComponentTypeKey.String("otlp_http_log_exporter")// OTLP log record exporter over HTTP with JSON serialization//// Stability: developmentOTelComponentTypeOtlpHTTPJSONLogExporter = OTelComponentTypeKey.String("otlp_http_json_log_exporter")// The builtin SDK periodically exporting metric reader//// Stability: developmentOTelComponentTypePeriodicMetricReader = OTelComponentTypeKey.String("periodic_metric_reader")// OTLP metric exporter over gRPC with protobuf serialization//// Stability: developmentOTelComponentTypeOtlpGRPCMetricExporter = OTelComponentTypeKey.String("otlp_grpc_metric_exporter")// OTLP metric exporter over HTTP with protobuf serialization//// Stability: developmentOTelComponentTypeOtlpHTTPMetricExporter = OTelComponentTypeKey.String("otlp_http_metric_exporter")// OTLP metric exporter over HTTP with JSON serialization//// Stability: developmentOTelComponentTypeOtlpHTTPJSONMetricExporter = OTelComponentTypeKey.String("otlp_http_json_metric_exporter")// Prometheus metric exporter over HTTP with the default text-based format//// Stability: developmentOTelComponentTypePrometheusHTTPTextMetricExporter = OTelComponentTypeKey.String("prometheus_http_text_metric_exporter"))// Enum values for otel.span.parent.originvar (// The span does not have a parent, it is a root span// Stability: developmentOTelSpanParentOriginNone = OTelSpanParentOriginKey.String("none")// The span has a parent and the parent's span context [isRemote()] is false// Stability: development//// [isRemote()]: https://opentelemetry.io/docs/specs/otel/trace/api/#isremoteOTelSpanParentOriginLocal = OTelSpanParentOriginKey.String("local")// The span has a parent and the parent's span context [isRemote()] is true// Stability: development//// [isRemote()]: https://opentelemetry.io/docs/specs/otel/trace/api/#isremoteOTelSpanParentOriginRemote = OTelSpanParentOriginKey.String("remote"))// Enum values for otel.span.sampling_resultvar (// The span is not sampled and not recording// Stability: developmentOTelSpanSamplingResultDrop = OTelSpanSamplingResultKey.String("DROP")// The span is not sampled, but recording// Stability: developmentOTelSpanSamplingResultRecordOnly = OTelSpanSamplingResultKey.String("RECORD_ONLY")// The span is sampled and recording// Stability: developmentOTelSpanSamplingResultRecordAndSample = OTelSpanSamplingResultKey.String("RECORD_AND_SAMPLE"))// Enum values for otel.status_codevar (// The operation has been validated by an Application developer or Operator to// have completed successfully.// Stability: stableOTelStatusCodeOk = OTelStatusCodeKey.String("OK")// The operation contains an error.// Stability: stableOTelStatusCodeError = OTelStatusCodeKey.String("ERROR"))// Namespace: peerconst (// PeerServiceKey is the attribute Key conforming to the "peer.service" semantic// conventions. It represents the [`service.name`] of the remote service. SHOULD// be equal to the actual `service.name` resource attribute of the remote// service if any.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: AuthTokenCache//// [`service.name`]: /docs/resource/README.md#servicePeerServiceKey = attribute.Key("peer.service"))// PeerService returns an attribute KeyValue conforming to the "peer.service"// semantic conventions. It represents the [`service.name`] of the remote// service. SHOULD be equal to the actual `service.name` resource attribute of// the remote service if any.//// [`service.name`]: /docs/resource/README.md#servicefunc ( string) attribute.KeyValue {return PeerServiceKey.String()}// Namespace: processconst (// ProcessArgsCountKey is the attribute Key conforming to the// "process.args_count" semantic conventions. It represents the length of the// process.command_args array.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 4// Note: This field can be useful for querying or performing bucket analysis on// how many arguments were provided to start a process. More arguments may be an// indication of suspicious activity.ProcessArgsCountKey = attribute.Key("process.args_count")// ProcessCommandKey is the attribute Key conforming to the "process.command"// semantic conventions. It represents the command used to launch the process// (i.e. the command name). On Linux based systems, can be set to the zeroth// string in `proc/[pid]/cmdline`. On Windows, can be set to the first parameter// extracted from `GetCommandLineW`.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "cmd/otelcol"ProcessCommandKey = attribute.Key("process.command")// ProcessCommandArgsKey is the attribute Key conforming to the// "process.command_args" semantic conventions. It represents the all the// command arguments (including the command/executable itself) as received by// the process. On Linux-based systems (and some other Unixoid systems// supporting procfs), can be set according to the list of null-delimited// strings extracted from `proc/[pid]/cmdline`. For libc-based executables, this// would be the full argv vector passed to `main`. SHOULD NOT be collected by// default unless there is sanitization that excludes sensitive data.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "cmd/otecol", "--config=config.yaml"ProcessCommandArgsKey = attribute.Key("process.command_args")// ProcessCommandLineKey is the attribute Key conforming to the// "process.command_line" semantic conventions. It represents the full command// used to launch the process as a single string representing the full command.// On Windows, can be set to the result of `GetCommandLineW`. Do not set this if// you have to assemble it just for monitoring; use `process.command_args`// instead. SHOULD NOT be collected by default unless there is sanitization that// excludes sensitive data.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "C:\cmd\otecol --config="my directory\config.yaml""ProcessCommandLineKey = attribute.Key("process.command_line")// ProcessContextSwitchTypeKey is the attribute Key conforming to the// "process.context_switch_type" semantic conventions. It represents the// specifies whether the context switches for this data point were voluntary or// involuntary.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:ProcessContextSwitchTypeKey = attribute.Key("process.context_switch_type")// ProcessCreationTimeKey is the attribute Key conforming to the// "process.creation.time" semantic conventions. It represents the date and time// the process was created, in ISO 8601 format.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "2023-11-21T09:25:34.853Z"ProcessCreationTimeKey = attribute.Key("process.creation.time")// ProcessExecutableBuildIDGNUKey is the attribute Key conforming to the// "process.executable.build_id.gnu" semantic conventions. It represents the GNU// build ID as found in the `.note.gnu.build-id` ELF section (hex string).//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "c89b11207f6479603b0d49bf291c092c2b719293"ProcessExecutableBuildIDGNUKey = attribute.Key("process.executable.build_id.gnu")// ProcessExecutableBuildIDGoKey is the attribute Key conforming to the// "process.executable.build_id.go" semantic conventions. It represents the Go// build ID as retrieved by `go tool buildid <go executable>`.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples:// "foh3mEXu7BLZjsN9pOwG/kATcXlYVCDEFouRMQed_/WwRFB1hPo9LBkekthSPG/x8hMC8emW2cCjXD0_1aY"ProcessExecutableBuildIDGoKey = attribute.Key("process.executable.build_id.go")// ProcessExecutableBuildIDHtlhashKey is the attribute Key conforming to the// "process.executable.build_id.htlhash" semantic conventions. It represents the// profiling specific build ID for executables. See the OTel specification for// Profiles for more information.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "600DCAFE4A110000F2BF38C493F5FB92"ProcessExecutableBuildIDHtlhashKey = attribute.Key("process.executable.build_id.htlhash")// ProcessExecutableNameKey is the attribute Key conforming to the// "process.executable.name" semantic conventions. It represents the name of the// process executable. On Linux based systems, this SHOULD be set to the base// name of the target of `/proc/[pid]/exe`. On Windows, this SHOULD be set to// the base name of `GetProcessImageFileNameW`.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "otelcol"ProcessExecutableNameKey = attribute.Key("process.executable.name")// ProcessExecutablePathKey is the attribute Key conforming to the// "process.executable.path" semantic conventions. It represents the full path// to the process executable. On Linux based systems, can be set to the target// of `proc/[pid]/exe`. On Windows, can be set to the result of// `GetProcessImageFileNameW`.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "/usr/bin/cmd/otelcol"ProcessExecutablePathKey = attribute.Key("process.executable.path")// ProcessExitCodeKey is the attribute Key conforming to the "process.exit.code"// semantic conventions. It represents the exit code of the process.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 127ProcessExitCodeKey = attribute.Key("process.exit.code")// ProcessExitTimeKey is the attribute Key conforming to the "process.exit.time"// semantic conventions. It represents the date and time the process exited, in// ISO 8601 format.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "2023-11-21T09:26:12.315Z"ProcessExitTimeKey = attribute.Key("process.exit.time")// ProcessGroupLeaderPIDKey is the attribute Key conforming to the// "process.group_leader.pid" semantic conventions. It represents the PID of the// process's group leader. This is also the process group ID (PGID) of the// process.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 23ProcessGroupLeaderPIDKey = attribute.Key("process.group_leader.pid")// ProcessInteractiveKey is the attribute Key conforming to the// "process.interactive" semantic conventions. It represents the whether the// process is connected to an interactive shell.//// Type: boolean// RequirementLevel: Recommended// Stability: Development//// Examples:ProcessInteractiveKey = attribute.Key("process.interactive")// ProcessLinuxCgroupKey is the attribute Key conforming to the// "process.linux.cgroup" semantic conventions. It represents the control group// associated with the process.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "1:name=systemd:/user.slice/user-1000.slice/session-3.scope",// "0::/user.slice/user-1000.slice/user@1000.service/tmux-spawn-0267755b-4639-4a27-90ed-f19f88e53748.scope"// Note: Control groups (cgroups) are a kernel feature used to organize and// manage process resources. This attribute provides the path(s) to the// cgroup(s) associated with the process, which should match the contents of the// [/proc/[PID]/cgroup] file.//// [/proc/[PID]/cgroup]: https://man7.org/linux/man-pages/man7/cgroups.7.htmlProcessLinuxCgroupKey = attribute.Key("process.linux.cgroup")// ProcessOwnerKey is the attribute Key conforming to the "process.owner"// semantic conventions. It represents the username of the user that owns the// process.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "root"ProcessOwnerKey = attribute.Key("process.owner")// ProcessPagingFaultTypeKey is the attribute Key conforming to the// "process.paging.fault_type" semantic conventions. It represents the type of// page fault for this data point. Type `major` is for major/hard page faults,// and `minor` is for minor/soft page faults.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:ProcessPagingFaultTypeKey = attribute.Key("process.paging.fault_type")// ProcessParentPIDKey is the attribute Key conforming to the// "process.parent_pid" semantic conventions. It represents the parent Process// identifier (PPID).//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 111ProcessParentPIDKey = attribute.Key("process.parent_pid")// ProcessPIDKey is the attribute Key conforming to the "process.pid" semantic// conventions. It represents the process identifier (PID).//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 1234ProcessPIDKey = attribute.Key("process.pid")// ProcessRealUserIDKey is the attribute Key conforming to the// "process.real_user.id" semantic conventions. It represents the real user ID// (RUID) of the process.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 1000ProcessRealUserIDKey = attribute.Key("process.real_user.id")// ProcessRealUserNameKey is the attribute Key conforming to the// "process.real_user.name" semantic conventions. It represents the username of// the real user of the process.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "operator"ProcessRealUserNameKey = attribute.Key("process.real_user.name")// ProcessRuntimeDescriptionKey is the attribute Key conforming to the// "process.runtime.description" semantic conventions. It represents an// additional description about the runtime of the process, for example a// specific vendor customization of the runtime environment.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: Eclipse OpenJ9 Eclipse OpenJ9 VM openj9-0.21.0ProcessRuntimeDescriptionKey = attribute.Key("process.runtime.description")// ProcessRuntimeNameKey is the attribute Key conforming to the// "process.runtime.name" semantic conventions. It represents the name of the// runtime of this process.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "OpenJDK Runtime Environment"ProcessRuntimeNameKey = attribute.Key("process.runtime.name")// ProcessRuntimeVersionKey is the attribute Key conforming to the// "process.runtime.version" semantic conventions. It represents the version of// the runtime of this process, as returned by the runtime without modification.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: 14.0.2ProcessRuntimeVersionKey = attribute.Key("process.runtime.version")// ProcessSavedUserIDKey is the attribute Key conforming to the// "process.saved_user.id" semantic conventions. It represents the saved user ID// (SUID) of the process.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 1002ProcessSavedUserIDKey = attribute.Key("process.saved_user.id")// ProcessSavedUserNameKey is the attribute Key conforming to the// "process.saved_user.name" semantic conventions. It represents the username of// the saved user.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "operator"ProcessSavedUserNameKey = attribute.Key("process.saved_user.name")// ProcessSessionLeaderPIDKey is the attribute Key conforming to the// "process.session_leader.pid" semantic conventions. It represents the PID of// the process's session leader. This is also the session ID (SID) of the// process.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 14ProcessSessionLeaderPIDKey = attribute.Key("process.session_leader.pid")// ProcessTitleKey is the attribute Key conforming to the "process.title"// semantic conventions. It represents the process title (proctitle).//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "cat /etc/hostname", "xfce4-session", "bash"// Note: In many Unix-like systems, process title (proctitle), is the string// that represents the name or command line of a running process, displayed by// system monitoring tools like ps, top, and htop.ProcessTitleKey = attribute.Key("process.title")// ProcessUserIDKey is the attribute Key conforming to the "process.user.id"// semantic conventions. It represents the effective user ID (EUID) of the// process.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 1001ProcessUserIDKey = attribute.Key("process.user.id")// ProcessUserNameKey is the attribute Key conforming to the "process.user.name"// semantic conventions. It represents the username of the effective user of the// process.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "root"ProcessUserNameKey = attribute.Key("process.user.name")// ProcessVpidKey is the attribute Key conforming to the "process.vpid" semantic// conventions. It represents the virtual process identifier.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 12// Note: The process ID within a PID namespace. This is not necessarily unique// across all processes on the host but it is unique within the process// namespace that the process exists within.ProcessVpidKey = attribute.Key("process.vpid")// ProcessWorkingDirectoryKey is the attribute Key conforming to the// "process.working_directory" semantic conventions. It represents the working// directory of the process.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "/root"ProcessWorkingDirectoryKey = attribute.Key("process.working_directory"))// ProcessArgsCount returns an attribute KeyValue conforming to the// "process.args_count" semantic conventions. It represents the length of the// process.command_args array.func ( int) attribute.KeyValue {return ProcessArgsCountKey.Int()}// ProcessCommand returns an attribute KeyValue conforming to the// "process.command" semantic conventions. It represents the command used to// launch the process (i.e. the command name). On Linux based systems, can be set// to the zeroth string in `proc/[pid]/cmdline`. On Windows, can be set to the// first parameter extracted from `GetCommandLineW`.func ( string) attribute.KeyValue {return ProcessCommandKey.String()}// ProcessCommandArgs returns an attribute KeyValue conforming to the// "process.command_args" semantic conventions. It represents the all the command// arguments (including the command/executable itself) as received by the// process. On Linux-based systems (and some other Unixoid systems supporting// procfs), can be set according to the list of null-delimited strings extracted// from `proc/[pid]/cmdline`. For libc-based executables, this would be the full// argv vector passed to `main`. SHOULD NOT be collected by default unless there// is sanitization that excludes sensitive data.func ( ...string) attribute.KeyValue {return ProcessCommandArgsKey.StringSlice()}// ProcessCommandLine returns an attribute KeyValue conforming to the// "process.command_line" semantic conventions. It represents the full command// used to launch the process as a single string representing the full command.// On Windows, can be set to the result of `GetCommandLineW`. Do not set this if// you have to assemble it just for monitoring; use `process.command_args`// instead. SHOULD NOT be collected by default unless there is sanitization that// excludes sensitive data.func ( string) attribute.KeyValue {return ProcessCommandLineKey.String()}// ProcessCreationTime returns an attribute KeyValue conforming to the// "process.creation.time" semantic conventions. It represents the date and time// the process was created, in ISO 8601 format.func ( string) attribute.KeyValue {return ProcessCreationTimeKey.String()}// ProcessEnvironmentVariable returns an attribute KeyValue conforming to the// "process.environment_variable" semantic conventions. It represents the process// environment variables, `<key>` being the environment variable name, the value// being the environment variable value.func ( string, string) attribute.KeyValue {return attribute.String("process.environment_variable."+, )}// ProcessExecutableBuildIDGNU returns an attribute KeyValue conforming to the// "process.executable.build_id.gnu" semantic conventions. It represents the GNU// build ID as found in the `.note.gnu.build-id` ELF section (hex string).func ( string) attribute.KeyValue {return ProcessExecutableBuildIDGNUKey.String()}// ProcessExecutableBuildIDGo returns an attribute KeyValue conforming to the// "process.executable.build_id.go" semantic conventions. It represents the Go// build ID as retrieved by `go tool buildid <go executable>`.func ( string) attribute.KeyValue {return ProcessExecutableBuildIDGoKey.String()}// ProcessExecutableBuildIDHtlhash returns an attribute KeyValue conforming to// the "process.executable.build_id.htlhash" semantic conventions. It represents// the profiling specific build ID for executables. See the OTel specification// for Profiles for more information.func ( string) attribute.KeyValue {return ProcessExecutableBuildIDHtlhashKey.String()}// ProcessExecutableName returns an attribute KeyValue conforming to the// "process.executable.name" semantic conventions. It represents the name of the// process executable. On Linux based systems, this SHOULD be set to the base// name of the target of `/proc/[pid]/exe`. On Windows, this SHOULD be set to the// base name of `GetProcessImageFileNameW`.func ( string) attribute.KeyValue {return ProcessExecutableNameKey.String()}// ProcessExecutablePath returns an attribute KeyValue conforming to the// "process.executable.path" semantic conventions. It represents the full path to// the process executable. On Linux based systems, can be set to the target of// `proc/[pid]/exe`. On Windows, can be set to the result of// `GetProcessImageFileNameW`.func ( string) attribute.KeyValue {return ProcessExecutablePathKey.String()}// ProcessExitCode returns an attribute KeyValue conforming to the// "process.exit.code" semantic conventions. It represents the exit code of the// process.func ( int) attribute.KeyValue {return ProcessExitCodeKey.Int()}// ProcessExitTime returns an attribute KeyValue conforming to the// "process.exit.time" semantic conventions. It represents the date and time the// process exited, in ISO 8601 format.func ( string) attribute.KeyValue {return ProcessExitTimeKey.String()}// ProcessGroupLeaderPID returns an attribute KeyValue conforming to the// "process.group_leader.pid" semantic conventions. It represents the PID of the// process's group leader. This is also the process group ID (PGID) of the// process.func ( int) attribute.KeyValue {return ProcessGroupLeaderPIDKey.Int()}// ProcessInteractive returns an attribute KeyValue conforming to the// "process.interactive" semantic conventions. It represents the whether the// process is connected to an interactive shell.func ( bool) attribute.KeyValue {return ProcessInteractiveKey.Bool()}// ProcessLinuxCgroup returns an attribute KeyValue conforming to the// "process.linux.cgroup" semantic conventions. It represents the control group// associated with the process.func ( string) attribute.KeyValue {return ProcessLinuxCgroupKey.String()}// ProcessOwner returns an attribute KeyValue conforming to the "process.owner"// semantic conventions. It represents the username of the user that owns the// process.func ( string) attribute.KeyValue {return ProcessOwnerKey.String()}// ProcessParentPID returns an attribute KeyValue conforming to the// "process.parent_pid" semantic conventions. It represents the parent Process// identifier (PPID).func ( int) attribute.KeyValue {return ProcessParentPIDKey.Int()}// ProcessPID returns an attribute KeyValue conforming to the "process.pid"// semantic conventions. It represents the process identifier (PID).func ( int) attribute.KeyValue {return ProcessPIDKey.Int()}// ProcessRealUserID returns an attribute KeyValue conforming to the// "process.real_user.id" semantic conventions. It represents the real user ID// (RUID) of the process.func ( int) attribute.KeyValue {return ProcessRealUserIDKey.Int()}// ProcessRealUserName returns an attribute KeyValue conforming to the// "process.real_user.name" semantic conventions. It represents the username of// the real user of the process.func ( string) attribute.KeyValue {return ProcessRealUserNameKey.String()}// ProcessRuntimeDescription returns an attribute KeyValue conforming to the// "process.runtime.description" semantic conventions. It represents an// additional description about the runtime of the process, for example a// specific vendor customization of the runtime environment.func ( string) attribute.KeyValue {return ProcessRuntimeDescriptionKey.String()}// ProcessRuntimeName returns an attribute KeyValue conforming to the// "process.runtime.name" semantic conventions. It represents the name of the// runtime of this process.func ( string) attribute.KeyValue {return ProcessRuntimeNameKey.String()}// ProcessRuntimeVersion returns an attribute KeyValue conforming to the// "process.runtime.version" semantic conventions. It represents the version of// the runtime of this process, as returned by the runtime without modification.func ( string) attribute.KeyValue {return ProcessRuntimeVersionKey.String()}// ProcessSavedUserID returns an attribute KeyValue conforming to the// "process.saved_user.id" semantic conventions. It represents the saved user ID// (SUID) of the process.func ( int) attribute.KeyValue {return ProcessSavedUserIDKey.Int()}// ProcessSavedUserName returns an attribute KeyValue conforming to the// "process.saved_user.name" semantic conventions. It represents the username of// the saved user.func ( string) attribute.KeyValue {return ProcessSavedUserNameKey.String()}// ProcessSessionLeaderPID returns an attribute KeyValue conforming to the// "process.session_leader.pid" semantic conventions. It represents the PID of// the process's session leader. This is also the session ID (SID) of the// process.func ( int) attribute.KeyValue {return ProcessSessionLeaderPIDKey.Int()}// ProcessTitle returns an attribute KeyValue conforming to the "process.title"// semantic conventions. It represents the process title (proctitle).func ( string) attribute.KeyValue {return ProcessTitleKey.String()}// ProcessUserID returns an attribute KeyValue conforming to the// "process.user.id" semantic conventions. It represents the effective user ID// (EUID) of the process.func ( int) attribute.KeyValue {return ProcessUserIDKey.Int()}// ProcessUserName returns an attribute KeyValue conforming to the// "process.user.name" semantic conventions. It represents the username of the// effective user of the process.func ( string) attribute.KeyValue {return ProcessUserNameKey.String()}// ProcessVpid returns an attribute KeyValue conforming to the "process.vpid"// semantic conventions. It represents the virtual process identifier.func ( int) attribute.KeyValue {return ProcessVpidKey.Int()}// ProcessWorkingDirectory returns an attribute KeyValue conforming to the// "process.working_directory" semantic conventions. It represents the working// directory of the process.func ( string) attribute.KeyValue {return ProcessWorkingDirectoryKey.String()}// Enum values for process.context_switch_typevar (// voluntary// Stability: developmentProcessContextSwitchTypeVoluntary = ProcessContextSwitchTypeKey.String("voluntary")// involuntary// Stability: developmentProcessContextSwitchTypeInvoluntary = ProcessContextSwitchTypeKey.String("involuntary"))// Enum values for process.paging.fault_typevar (// major// Stability: developmentProcessPagingFaultTypeMajor = ProcessPagingFaultTypeKey.String("major")// minor// Stability: developmentProcessPagingFaultTypeMinor = ProcessPagingFaultTypeKey.String("minor"))// Namespace: profileconst (// ProfileFrameTypeKey is the attribute Key conforming to the// "profile.frame.type" semantic conventions. It represents the describes the// interpreter or compiler of a single frame.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "cpython"ProfileFrameTypeKey = attribute.Key("profile.frame.type"))// Enum values for profile.frame.typevar (// [.NET]//// Stability: development//// [.NET]: https://wikipedia.org/wiki/.NETProfileFrameTypeDotnet = ProfileFrameTypeKey.String("dotnet")// [JVM]//// Stability: development//// [JVM]: https://wikipedia.org/wiki/Java_virtual_machineProfileFrameTypeJVM = ProfileFrameTypeKey.String("jvm")// [Kernel]//// Stability: development//// [Kernel]: https://wikipedia.org/wiki/Kernel_(operating_system)ProfileFrameTypeKernel = ProfileFrameTypeKey.String("kernel")// Can be one of but not limited to [C], [C++], [Go] or [Rust]. If possible, a// more precise value MUST be used.//// Stability: development//// [C]: https://wikipedia.org/wiki/C_(programming_language)// [C++]: https://wikipedia.org/wiki/C%2B%2B// [Go]: https://wikipedia.org/wiki/Go_(programming_language)// [Rust]: https://wikipedia.org/wiki/Rust_(programming_language)ProfileFrameTypeNative = ProfileFrameTypeKey.String("native")// [Perl]//// Stability: development//// [Perl]: https://wikipedia.org/wiki/PerlProfileFrameTypePerl = ProfileFrameTypeKey.String("perl")// [PHP]//// Stability: development//// [PHP]: https://wikipedia.org/wiki/PHPProfileFrameTypePHP = ProfileFrameTypeKey.String("php")// [Python]//// Stability: development//// [Python]: https://wikipedia.org/wiki/Python_(programming_language)ProfileFrameTypeCpython = ProfileFrameTypeKey.String("cpython")// [Ruby]//// Stability: development//// [Ruby]: https://wikipedia.org/wiki/Ruby_(programming_language)ProfileFrameTypeRuby = ProfileFrameTypeKey.String("ruby")// [V8JS]//// Stability: development//// [V8JS]: https://wikipedia.org/wiki/V8_(JavaScript_engine)ProfileFrameTypeV8JS = ProfileFrameTypeKey.String("v8js")// [Erlang]//// Stability: development//// [Erlang]: https://en.wikipedia.org/wiki/BEAM_(Erlang_virtual_machine)ProfileFrameTypeBeam = ProfileFrameTypeKey.String("beam")// [Go],//// Stability: development//// [Go]: https://wikipedia.org/wiki/Go_(programming_language)ProfileFrameTypeGo = ProfileFrameTypeKey.String("go")// [Rust]//// Stability: development//// [Rust]: https://wikipedia.org/wiki/Rust_(programming_language)ProfileFrameTypeRust = ProfileFrameTypeKey.String("rust"))// Namespace: rpcconst (// RPCConnectRPCErrorCodeKey is the attribute Key conforming to the// "rpc.connect_rpc.error_code" semantic conventions. It represents the// [error codes] of the Connect request. Error codes are always string values.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples://// [error codes]: https://connectrpc.com//docs/protocol/#error-codesRPCConnectRPCErrorCodeKey = attribute.Key("rpc.connect_rpc.error_code")// RPCGRPCStatusCodeKey is the attribute Key conforming to the// "rpc.grpc.status_code" semantic conventions. It represents the// [numeric status code] of the gRPC request.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples://// [numeric status code]: https://github.com/grpc/grpc/blob/v1.33.2/doc/statuscodes.mdRPCGRPCStatusCodeKey = attribute.Key("rpc.grpc.status_code")// RPCJSONRPCErrorCodeKey is the attribute Key conforming to the// "rpc.jsonrpc.error_code" semantic conventions. It represents the `error.code`// property of response if it is an error response.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: -32700, 100RPCJSONRPCErrorCodeKey = attribute.Key("rpc.jsonrpc.error_code")// RPCJSONRPCErrorMessageKey is the attribute Key conforming to the// "rpc.jsonrpc.error_message" semantic conventions. It represents the// `error.message` property of response if it is an error response.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Parse error", "User already exists"RPCJSONRPCErrorMessageKey = attribute.Key("rpc.jsonrpc.error_message")// RPCJSONRPCRequestIDKey is the attribute Key conforming to the// "rpc.jsonrpc.request_id" semantic conventions. It represents the `id`// property of request or response. Since protocol allows id to be int, string,// `null` or missing (for notifications), value is expected to be cast to string// for simplicity. Use empty string in case of `null` value. Omit entirely if// this is a notification.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "10", "request-7", ""RPCJSONRPCRequestIDKey = attribute.Key("rpc.jsonrpc.request_id")// RPCJSONRPCVersionKey is the attribute Key conforming to the// "rpc.jsonrpc.version" semantic conventions. It represents the protocol// version as in `jsonrpc` property of request/response. Since JSON-RPC 1.0// doesn't specify this, the value can be omitted.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "2.0", "1.0"RPCJSONRPCVersionKey = attribute.Key("rpc.jsonrpc.version")// RPCMessageCompressedSizeKey is the attribute Key conforming to the// "rpc.message.compressed_size" semantic conventions. It represents the// compressed size of the message in bytes.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples:RPCMessageCompressedSizeKey = attribute.Key("rpc.message.compressed_size")// RPCMessageIDKey is the attribute Key conforming to the "rpc.message.id"// semantic conventions. It MUST be calculated as two different counters// starting from `1` one for sent messages and one for received message..//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: This way we guarantee that the values will be consistent between// different implementations.RPCMessageIDKey = attribute.Key("rpc.message.id")// RPCMessageTypeKey is the attribute Key conforming to the "rpc.message.type"// semantic conventions. It represents the whether this is a received or sent// message.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:RPCMessageTypeKey = attribute.Key("rpc.message.type")// RPCMessageUncompressedSizeKey is the attribute Key conforming to the// "rpc.message.uncompressed_size" semantic conventions. It represents the// uncompressed size of the message in bytes.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples:RPCMessageUncompressedSizeKey = attribute.Key("rpc.message.uncompressed_size")// RPCMethodKey is the attribute Key conforming to the "rpc.method" semantic// conventions. It represents the name of the (logical) method being called,// must be equal to the $method part in the span name.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: exampleMethod// Note: This is the logical name of the method from the RPC interface// perspective, which can be different from the name of any implementing// method/function. The `code.function.name` attribute may be used to store the// latter (e.g., method actually executing the call on the server side, RPC// client stub method on the client side).RPCMethodKey = attribute.Key("rpc.method")// RPCServiceKey is the attribute Key conforming to the "rpc.service" semantic// conventions. It represents the full (logical) name of the service being// called, including its package name, if applicable.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: myservice.EchoService// Note: This is the logical name of the service from the RPC interface// perspective, which can be different from the name of any implementing class.// The `code.namespace` attribute may be used to store the latter (despite the// attribute name, it may include a class name; e.g., class with method actually// executing the call on the server side, RPC client stub class on the client// side).RPCServiceKey = attribute.Key("rpc.service")// RPCSystemKey is the attribute Key conforming to the "rpc.system" semantic// conventions. It represents a string identifying the remoting system. See// below for a list of well-known identifiers.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:RPCSystemKey = attribute.Key("rpc.system"))// RPCConnectRPCRequestMetadata returns an attribute KeyValue conforming to the// "rpc.connect_rpc.request.metadata" semantic conventions. It represents the// connect request metadata, `<key>` being the normalized Connect Metadata key// (lowercase), the value being the metadata values.func ( string, ...string) attribute.KeyValue {return attribute.StringSlice("rpc.connect_rpc.request.metadata."+, )}// RPCConnectRPCResponseMetadata returns an attribute KeyValue conforming to the// "rpc.connect_rpc.response.metadata" semantic conventions. It represents the// connect response metadata, `<key>` being the normalized Connect Metadata key// (lowercase), the value being the metadata values.func ( string, ...string) attribute.KeyValue {return attribute.StringSlice("rpc.connect_rpc.response.metadata."+, )}// RPCGRPCRequestMetadata returns an attribute KeyValue conforming to the// "rpc.grpc.request.metadata" semantic conventions. It represents the gRPC// request metadata, `<key>` being the normalized gRPC Metadata key (lowercase),// the value being the metadata values.func ( string, ...string) attribute.KeyValue {return attribute.StringSlice("rpc.grpc.request.metadata."+, )}// RPCGRPCResponseMetadata returns an attribute KeyValue conforming to the// "rpc.grpc.response.metadata" semantic conventions. It represents the gRPC// response metadata, `<key>` being the normalized gRPC Metadata key (lowercase),// the value being the metadata values.func ( string, ...string) attribute.KeyValue {return attribute.StringSlice("rpc.grpc.response.metadata."+, )}// RPCJSONRPCErrorCode returns an attribute KeyValue conforming to the// "rpc.jsonrpc.error_code" semantic conventions. It represents the `error.code`// property of response if it is an error response.func ( int) attribute.KeyValue {return RPCJSONRPCErrorCodeKey.Int()}// RPCJSONRPCErrorMessage returns an attribute KeyValue conforming to the// "rpc.jsonrpc.error_message" semantic conventions. It represents the// `error.message` property of response if it is an error response.func ( string) attribute.KeyValue {return RPCJSONRPCErrorMessageKey.String()}// RPCJSONRPCRequestID returns an attribute KeyValue conforming to the// "rpc.jsonrpc.request_id" semantic conventions. It represents the `id` property// of request or response. Since protocol allows id to be int, string, `null` or// missing (for notifications), value is expected to be cast to string for// simplicity. Use empty string in case of `null` value. Omit entirely if this is// a notification.func ( string) attribute.KeyValue {return RPCJSONRPCRequestIDKey.String()}// RPCJSONRPCVersion returns an attribute KeyValue conforming to the// "rpc.jsonrpc.version" semantic conventions. It represents the protocol version// as in `jsonrpc` property of request/response. Since JSON-RPC 1.0 doesn't// specify this, the value can be omitted.func ( string) attribute.KeyValue {return RPCJSONRPCVersionKey.String()}// RPCMessageCompressedSize returns an attribute KeyValue conforming to the// "rpc.message.compressed_size" semantic conventions. It represents the// compressed size of the message in bytes.func ( int) attribute.KeyValue {return RPCMessageCompressedSizeKey.Int()}// RPCMessageID returns an attribute KeyValue conforming to the "rpc.message.id"// semantic conventions. It MUST be calculated as two different counters starting// from `1` one for sent messages and one for received message..func ( int) attribute.KeyValue {return RPCMessageIDKey.Int()}// RPCMessageUncompressedSize returns an attribute KeyValue conforming to the// "rpc.message.uncompressed_size" semantic conventions. It represents the// uncompressed size of the message in bytes.func ( int) attribute.KeyValue {return RPCMessageUncompressedSizeKey.Int()}// RPCMethod returns an attribute KeyValue conforming to the "rpc.method"// semantic conventions. It represents the name of the (logical) method being// called, must be equal to the $method part in the span name.func ( string) attribute.KeyValue {return RPCMethodKey.String()}// RPCService returns an attribute KeyValue conforming to the "rpc.service"// semantic conventions. It represents the full (logical) name of the service// being called, including its package name, if applicable.func ( string) attribute.KeyValue {return RPCServiceKey.String()}// Enum values for rpc.connect_rpc.error_codevar (// cancelled// Stability: developmentRPCConnectRPCErrorCodeCancelled = RPCConnectRPCErrorCodeKey.String("cancelled")// unknown// Stability: developmentRPCConnectRPCErrorCodeUnknown = RPCConnectRPCErrorCodeKey.String("unknown")// invalid_argument// Stability: developmentRPCConnectRPCErrorCodeInvalidArgument = RPCConnectRPCErrorCodeKey.String("invalid_argument")// deadline_exceeded// Stability: developmentRPCConnectRPCErrorCodeDeadlineExceeded = RPCConnectRPCErrorCodeKey.String("deadline_exceeded")// not_found// Stability: developmentRPCConnectRPCErrorCodeNotFound = RPCConnectRPCErrorCodeKey.String("not_found")// already_exists// Stability: developmentRPCConnectRPCErrorCodeAlreadyExists = RPCConnectRPCErrorCodeKey.String("already_exists")// permission_denied// Stability: developmentRPCConnectRPCErrorCodePermissionDenied = RPCConnectRPCErrorCodeKey.String("permission_denied")// resource_exhausted// Stability: developmentRPCConnectRPCErrorCodeResourceExhausted = RPCConnectRPCErrorCodeKey.String("resource_exhausted")// failed_precondition// Stability: developmentRPCConnectRPCErrorCodeFailedPrecondition = RPCConnectRPCErrorCodeKey.String("failed_precondition")// aborted// Stability: developmentRPCConnectRPCErrorCodeAborted = RPCConnectRPCErrorCodeKey.String("aborted")// out_of_range// Stability: developmentRPCConnectRPCErrorCodeOutOfRange = RPCConnectRPCErrorCodeKey.String("out_of_range")// unimplemented// Stability: developmentRPCConnectRPCErrorCodeUnimplemented = RPCConnectRPCErrorCodeKey.String("unimplemented")// internal// Stability: developmentRPCConnectRPCErrorCodeInternal = RPCConnectRPCErrorCodeKey.String("internal")// unavailable// Stability: developmentRPCConnectRPCErrorCodeUnavailable = RPCConnectRPCErrorCodeKey.String("unavailable")// data_loss// Stability: developmentRPCConnectRPCErrorCodeDataLoss = RPCConnectRPCErrorCodeKey.String("data_loss")// unauthenticated// Stability: developmentRPCConnectRPCErrorCodeUnauthenticated = RPCConnectRPCErrorCodeKey.String("unauthenticated"))// Enum values for rpc.grpc.status_codevar (// OK// Stability: developmentRPCGRPCStatusCodeOk = RPCGRPCStatusCodeKey.Int(0)// CANCELLED// Stability: developmentRPCGRPCStatusCodeCancelled = RPCGRPCStatusCodeKey.Int(1)// UNKNOWN// Stability: developmentRPCGRPCStatusCodeUnknown = RPCGRPCStatusCodeKey.Int(2)// INVALID_ARGUMENT// Stability: developmentRPCGRPCStatusCodeInvalidArgument = RPCGRPCStatusCodeKey.Int(3)// DEADLINE_EXCEEDED// Stability: developmentRPCGRPCStatusCodeDeadlineExceeded = RPCGRPCStatusCodeKey.Int(4)// NOT_FOUND// Stability: developmentRPCGRPCStatusCodeNotFound = RPCGRPCStatusCodeKey.Int(5)// ALREADY_EXISTS// Stability: developmentRPCGRPCStatusCodeAlreadyExists = RPCGRPCStatusCodeKey.Int(6)// PERMISSION_DENIED// Stability: developmentRPCGRPCStatusCodePermissionDenied = RPCGRPCStatusCodeKey.Int(7)// RESOURCE_EXHAUSTED// Stability: developmentRPCGRPCStatusCodeResourceExhausted = RPCGRPCStatusCodeKey.Int(8)// FAILED_PRECONDITION// Stability: developmentRPCGRPCStatusCodeFailedPrecondition = RPCGRPCStatusCodeKey.Int(9)// ABORTED// Stability: developmentRPCGRPCStatusCodeAborted = RPCGRPCStatusCodeKey.Int(10)// OUT_OF_RANGE// Stability: developmentRPCGRPCStatusCodeOutOfRange = RPCGRPCStatusCodeKey.Int(11)// UNIMPLEMENTED// Stability: developmentRPCGRPCStatusCodeUnimplemented = RPCGRPCStatusCodeKey.Int(12)// INTERNAL// Stability: developmentRPCGRPCStatusCodeInternal = RPCGRPCStatusCodeKey.Int(13)// UNAVAILABLE// Stability: developmentRPCGRPCStatusCodeUnavailable = RPCGRPCStatusCodeKey.Int(14)// DATA_LOSS// Stability: developmentRPCGRPCStatusCodeDataLoss = RPCGRPCStatusCodeKey.Int(15)// UNAUTHENTICATED// Stability: developmentRPCGRPCStatusCodeUnauthenticated = RPCGRPCStatusCodeKey.Int(16))// Enum values for rpc.message.typevar (// sent// Stability: developmentRPCMessageTypeSent = RPCMessageTypeKey.String("SENT")// received// Stability: developmentRPCMessageTypeReceived = RPCMessageTypeKey.String("RECEIVED"))// Enum values for rpc.systemvar (// gRPC// Stability: developmentRPCSystemGRPC = RPCSystemKey.String("grpc")// Java RMI// Stability: developmentRPCSystemJavaRmi = RPCSystemKey.String("java_rmi")// .NET WCF// Stability: developmentRPCSystemDotnetWcf = RPCSystemKey.String("dotnet_wcf")// Apache Dubbo// Stability: developmentRPCSystemApacheDubbo = RPCSystemKey.String("apache_dubbo")// Connect RPC// Stability: developmentRPCSystemConnectRPC = RPCSystemKey.String("connect_rpc"))// Namespace: security_ruleconst (// SecurityRuleCategoryKey is the attribute Key conforming to the// "security_rule.category" semantic conventions. It represents a categorization// value keyword used by the entity using the rule for detection of this event.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Attempted Information Leak"SecurityRuleCategoryKey = attribute.Key("security_rule.category")// SecurityRuleDescriptionKey is the attribute Key conforming to the// "security_rule.description" semantic conventions. It represents the// description of the rule generating the event.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Block requests to public DNS over HTTPS / TLS protocols"SecurityRuleDescriptionKey = attribute.Key("security_rule.description")// SecurityRuleLicenseKey is the attribute Key conforming to the// "security_rule.license" semantic conventions. It represents the name of the// license under which the rule used to generate this event is made available.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Apache 2.0"SecurityRuleLicenseKey = attribute.Key("security_rule.license")// SecurityRuleNameKey is the attribute Key conforming to the// "security_rule.name" semantic conventions. It represents the name of the rule// or signature generating the event.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "BLOCK_DNS_over_TLS"SecurityRuleNameKey = attribute.Key("security_rule.name")// SecurityRuleReferenceKey is the attribute Key conforming to the// "security_rule.reference" semantic conventions. It represents the reference// URL to additional information about the rule used to generate this event.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "https://en.wikipedia.org/wiki/DNS_over_TLS"// Note: The URL can point to the vendor’s documentation about the rule. If// that’s not available, it can also be a link to a more general page// describing this type of alert.SecurityRuleReferenceKey = attribute.Key("security_rule.reference")// SecurityRuleRulesetNameKey is the attribute Key conforming to the// "security_rule.ruleset.name" semantic conventions. It represents the name of// the ruleset, policy, group, or parent category in which the rule used to// generate this event is a member.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Standard_Protocol_Filters"SecurityRuleRulesetNameKey = attribute.Key("security_rule.ruleset.name")// SecurityRuleUUIDKey is the attribute Key conforming to the// "security_rule.uuid" semantic conventions. It represents a rule ID that is// unique within the scope of a set or group of agents, observers, or other// entities using the rule for detection of this event.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "550e8400-e29b-41d4-a716-446655440000", "1100110011"SecurityRuleUUIDKey = attribute.Key("security_rule.uuid")// SecurityRuleVersionKey is the attribute Key conforming to the// "security_rule.version" semantic conventions. It represents the version /// revision of the rule being used for analysis.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "1.0.0"SecurityRuleVersionKey = attribute.Key("security_rule.version"))// SecurityRuleCategory returns an attribute KeyValue conforming to the// "security_rule.category" semantic conventions. It represents a categorization// value keyword used by the entity using the rule for detection of this event.func ( string) attribute.KeyValue {return SecurityRuleCategoryKey.String()}// SecurityRuleDescription returns an attribute KeyValue conforming to the// "security_rule.description" semantic conventions. It represents the// description of the rule generating the event.func ( string) attribute.KeyValue {return SecurityRuleDescriptionKey.String()}// SecurityRuleLicense returns an attribute KeyValue conforming to the// "security_rule.license" semantic conventions. It represents the name of the// license under which the rule used to generate this event is made available.func ( string) attribute.KeyValue {return SecurityRuleLicenseKey.String()}// SecurityRuleName returns an attribute KeyValue conforming to the// "security_rule.name" semantic conventions. It represents the name of the rule// or signature generating the event.func ( string) attribute.KeyValue {return SecurityRuleNameKey.String()}// SecurityRuleReference returns an attribute KeyValue conforming to the// "security_rule.reference" semantic conventions. It represents the reference// URL to additional information about the rule used to generate this event.func ( string) attribute.KeyValue {return SecurityRuleReferenceKey.String()}// SecurityRuleRulesetName returns an attribute KeyValue conforming to the// "security_rule.ruleset.name" semantic conventions. It represents the name of// the ruleset, policy, group, or parent category in which the rule used to// generate this event is a member.func ( string) attribute.KeyValue {return SecurityRuleRulesetNameKey.String()}// SecurityRuleUUID returns an attribute KeyValue conforming to the// "security_rule.uuid" semantic conventions. It represents a rule ID that is// unique within the scope of a set or group of agents, observers, or other// entities using the rule for detection of this event.func ( string) attribute.KeyValue {return SecurityRuleUUIDKey.String()}// SecurityRuleVersion returns an attribute KeyValue conforming to the// "security_rule.version" semantic conventions. It represents the version /// revision of the rule being used for analysis.func ( string) attribute.KeyValue {return SecurityRuleVersionKey.String()}// Namespace: serverconst (// ServerAddressKey is the attribute Key conforming to the "server.address"// semantic conventions. It represents the server domain name if available// without reverse DNS lookup; otherwise, IP address or Unix domain socket name.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "example.com", "10.1.2.80", "/tmp/my.sock"// Note: When observed from the client side, and when communicating through an// intermediary, `server.address` SHOULD represent the server address behind any// intermediaries, for example proxies, if it's available.ServerAddressKey = attribute.Key("server.address")// ServerPortKey is the attribute Key conforming to the "server.port" semantic// conventions. It represents the server port number.//// Type: int// RequirementLevel: Recommended// Stability: Stable//// Examples: 80, 8080, 443// Note: When observed from the client side, and when communicating through an// intermediary, `server.port` SHOULD represent the server port behind any// intermediaries, for example proxies, if it's available.ServerPortKey = attribute.Key("server.port"))// ServerAddress returns an attribute KeyValue conforming to the "server.address"// semantic conventions. It represents the server domain name if available// without reverse DNS lookup; otherwise, IP address or Unix domain socket name.func ( string) attribute.KeyValue {return ServerAddressKey.String()}// ServerPort returns an attribute KeyValue conforming to the "server.port"// semantic conventions. It represents the server port number.func ( int) attribute.KeyValue {return ServerPortKey.Int()}// Namespace: serviceconst (// ServiceInstanceIDKey is the attribute Key conforming to the// "service.instance.id" semantic conventions. It represents the string ID of// the service instance.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "627cc493-f310-47de-96bd-71410b7dec09"// Note: MUST be unique for each instance of the same// `service.namespace,service.name` pair (in other words// `service.namespace,service.name,service.instance.id` triplet MUST be globally// unique). The ID helps to// distinguish instances of the same service that exist at the same time (e.g.// instances of a horizontally scaled// service).//// Implementations, such as SDKs, are recommended to generate a random Version 1// or Version 4 [RFC// 4122] UUID, but are free to use an inherent unique ID as// the source of// this value if stability is desirable. In that case, the ID SHOULD be used as// source of a UUID Version 5 and// SHOULD use the following UUID as the namespace:// `4d63009a-8d0f-11ee-aad7-4c796ed8e320`.//// UUIDs are typically recommended, as only an opaque value for the purposes of// identifying a service instance is// needed. Similar to what can be seen in the man page for the// [`/etc/machine-id`] file, the underlying// data, such as pod name and namespace should be treated as confidential, being// the user's choice to expose it// or not via another resource attribute.//// For applications running behind an application server (like unicorn), we do// not recommend using one identifier// for all processes participating in the application. Instead, it's recommended// each division (e.g. a worker// thread in unicorn) to have its own instance.id.//// It's not recommended for a Collector to set `service.instance.id` if it can't// unambiguously determine the// service instance that is generating that telemetry. For instance, creating an// UUID based on `pod.name` will// likely be wrong, as the Collector might not know from which container within// that pod the telemetry originated.// However, Collectors can set the `service.instance.id` if they can// unambiguously determine the service instance// for that telemetry. This is typically the case for scraping receivers, as// they know the target address and// port.//// [RFC// 4122]: https://www.ietf.org/rfc/rfc4122.txt// [`/etc/machine-id`]: https://www.freedesktop.org/software/systemd/man/latest/machine-id.htmlServiceInstanceIDKey = attribute.Key("service.instance.id")// ServiceNameKey is the attribute Key conforming to the "service.name" semantic// conventions. It represents the logical name of the service.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "shoppingcart"// Note: MUST be the same for all instances of horizontally scaled services. If// the value was not specified, SDKs MUST fallback to `unknown_service:`// concatenated with [`process.executable.name`], e.g. `unknown_service:bash`.// If `process.executable.name` is not available, the value MUST be set to// `unknown_service`.//// [`process.executable.name`]: process.mdServiceNameKey = attribute.Key("service.name")// ServiceNamespaceKey is the attribute Key conforming to the// "service.namespace" semantic conventions. It represents a namespace for// `service.name`.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Shop"// Note: A string value having a meaning that helps to distinguish a group of// services, for example the team name that owns a group of services.// `service.name` is expected to be unique within the same namespace. If// `service.namespace` is not specified in the Resource then `service.name` is// expected to be unique for all services that have no explicit namespace// defined (so the empty/unspecified namespace is simply one more valid// namespace). Zero-length namespace string is assumed equal to unspecified// namespace.ServiceNamespaceKey = attribute.Key("service.namespace")// ServiceVersionKey is the attribute Key conforming to the "service.version"// semantic conventions. It represents the version string of the service API or// implementation. The format is not defined by these conventions.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "2.0.0", "a01dbef8a"ServiceVersionKey = attribute.Key("service.version"))// ServiceInstanceID returns an attribute KeyValue conforming to the// "service.instance.id" semantic conventions. It represents the string ID of the// service instance.func ( string) attribute.KeyValue {return ServiceInstanceIDKey.String()}// ServiceName returns an attribute KeyValue conforming to the "service.name"// semantic conventions. It represents the logical name of the service.func ( string) attribute.KeyValue {return ServiceNameKey.String()}// ServiceNamespace returns an attribute KeyValue conforming to the// "service.namespace" semantic conventions. It represents a namespace for// `service.name`.func ( string) attribute.KeyValue {return ServiceNamespaceKey.String()}// ServiceVersion returns an attribute KeyValue conforming to the// "service.version" semantic conventions. It represents the version string of// the service API or implementation. The format is not defined by these// conventions.func ( string) attribute.KeyValue {return ServiceVersionKey.String()}// Namespace: sessionconst (// SessionIDKey is the attribute Key conforming to the "session.id" semantic// conventions. It represents a unique id to identify a session.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: 00112233-4455-6677-8899-aabbccddeeffSessionIDKey = attribute.Key("session.id")// SessionPreviousIDKey is the attribute Key conforming to the// "session.previous_id" semantic conventions. It represents the previous// `session.id` for this user, when known.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: 00112233-4455-6677-8899-aabbccddeeffSessionPreviousIDKey = attribute.Key("session.previous_id"))// SessionID returns an attribute KeyValue conforming to the "session.id"// semantic conventions. It represents a unique id to identify a session.func ( string) attribute.KeyValue {return SessionIDKey.String()}// SessionPreviousID returns an attribute KeyValue conforming to the// "session.previous_id" semantic conventions. It represents the previous// `session.id` for this user, when known.func ( string) attribute.KeyValue {return SessionPreviousIDKey.String()}// Namespace: signalrconst (// SignalRConnectionStatusKey is the attribute Key conforming to the// "signalr.connection.status" semantic conventions. It represents the signalR// HTTP connection closure status.//// Type: Enum// RequirementLevel: Recommended// Stability: Stable//// Examples: "app_shutdown", "timeout"SignalRConnectionStatusKey = attribute.Key("signalr.connection.status")// SignalRTransportKey is the attribute Key conforming to the// "signalr.transport" semantic conventions. It represents the// [SignalR transport type].//// Type: Enum// RequirementLevel: Recommended// Stability: Stable//// Examples: "web_sockets", "long_polling"//// [SignalR transport type]: https://github.com/dotnet/aspnetcore/blob/main/src/SignalR/docs/specs/TransportProtocols.mdSignalRTransportKey = attribute.Key("signalr.transport"))// Enum values for signalr.connection.statusvar (// The connection was closed normally.// Stability: stableSignalRConnectionStatusNormalClosure = SignalRConnectionStatusKey.String("normal_closure")// The connection was closed due to a timeout.// Stability: stableSignalRConnectionStatusTimeout = SignalRConnectionStatusKey.String("timeout")// The connection was closed because the app is shutting down.// Stability: stableSignalRConnectionStatusAppShutdown = SignalRConnectionStatusKey.String("app_shutdown"))// Enum values for signalr.transportvar (// ServerSentEvents protocol// Stability: stableSignalRTransportServerSentEvents = SignalRTransportKey.String("server_sent_events")// LongPolling protocol// Stability: stableSignalRTransportLongPolling = SignalRTransportKey.String("long_polling")// WebSockets protocol// Stability: stableSignalRTransportWebSockets = SignalRTransportKey.String("web_sockets"))// Namespace: sourceconst (// SourceAddressKey is the attribute Key conforming to the "source.address"// semantic conventions. It represents the source address - domain name if// available without reverse DNS lookup; otherwise, IP address or Unix domain// socket name.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "source.example.com", "10.1.2.80", "/tmp/my.sock"// Note: When observed from the destination side, and when communicating through// an intermediary, `source.address` SHOULD represent the source address behind// any intermediaries, for example proxies, if it's available.SourceAddressKey = attribute.Key("source.address")// SourcePortKey is the attribute Key conforming to the "source.port" semantic// conventions. It represents the source port number.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 3389, 2888SourcePortKey = attribute.Key("source.port"))// SourceAddress returns an attribute KeyValue conforming to the "source.address"// semantic conventions. It represents the source address - domain name if// available without reverse DNS lookup; otherwise, IP address or Unix domain// socket name.func ( string) attribute.KeyValue {return SourceAddressKey.String()}// SourcePort returns an attribute KeyValue conforming to the "source.port"// semantic conventions. It represents the source port number.func ( int) attribute.KeyValue {return SourcePortKey.Int()}// Namespace: systemconst (// SystemCPULogicalNumberKey is the attribute Key conforming to the// "system.cpu.logical_number" semantic conventions. It represents the// deprecated, use `cpu.logical_number` instead.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 1SystemCPULogicalNumberKey = attribute.Key("system.cpu.logical_number")// SystemDeviceKey is the attribute Key conforming to the "system.device"// semantic conventions. It represents the device identifier.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "(identifier)"SystemDeviceKey = attribute.Key("system.device")// SystemFilesystemModeKey is the attribute Key conforming to the// "system.filesystem.mode" semantic conventions. It represents the filesystem// mode.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "rw, ro"SystemFilesystemModeKey = attribute.Key("system.filesystem.mode")// SystemFilesystemMountpointKey is the attribute Key conforming to the// "system.filesystem.mountpoint" semantic conventions. It represents the// filesystem mount path.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "/mnt/data"SystemFilesystemMountpointKey = attribute.Key("system.filesystem.mountpoint")// SystemFilesystemStateKey is the attribute Key conforming to the// "system.filesystem.state" semantic conventions. It represents the filesystem// state.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "used"SystemFilesystemStateKey = attribute.Key("system.filesystem.state")// SystemFilesystemTypeKey is the attribute Key conforming to the// "system.filesystem.type" semantic conventions. It represents the filesystem// type.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "ext4"SystemFilesystemTypeKey = attribute.Key("system.filesystem.type")// SystemMemoryStateKey is the attribute Key conforming to the// "system.memory.state" semantic conventions. It represents the memory state.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "free", "cached"SystemMemoryStateKey = attribute.Key("system.memory.state")// SystemPagingDirectionKey is the attribute Key conforming to the// "system.paging.direction" semantic conventions. It represents the paging// access direction.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "in"SystemPagingDirectionKey = attribute.Key("system.paging.direction")// SystemPagingStateKey is the attribute Key conforming to the// "system.paging.state" semantic conventions. It represents the memory paging// state.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "free"SystemPagingStateKey = attribute.Key("system.paging.state")// SystemPagingTypeKey is the attribute Key conforming to the// "system.paging.type" semantic conventions. It represents the memory paging// type.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "minor"SystemPagingTypeKey = attribute.Key("system.paging.type")// SystemProcessStatusKey is the attribute Key conforming to the// "system.process.status" semantic conventions. It represents the process// state, e.g., [Linux Process State Codes].//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "running"//// [Linux Process State Codes]: https://man7.org/linux/man-pages/man1/ps.1.html#PROCESS_STATE_CODESSystemProcessStatusKey = attribute.Key("system.process.status"))// SystemCPULogicalNumber returns an attribute KeyValue conforming to the// "system.cpu.logical_number" semantic conventions. It represents the// deprecated, use `cpu.logical_number` instead.func ( int) attribute.KeyValue {return SystemCPULogicalNumberKey.Int()}// SystemDevice returns an attribute KeyValue conforming to the "system.device"// semantic conventions. It represents the device identifier.func ( string) attribute.KeyValue {return SystemDeviceKey.String()}// SystemFilesystemMode returns an attribute KeyValue conforming to the// "system.filesystem.mode" semantic conventions. It represents the filesystem// mode.func ( string) attribute.KeyValue {return SystemFilesystemModeKey.String()}// SystemFilesystemMountpoint returns an attribute KeyValue conforming to the// "system.filesystem.mountpoint" semantic conventions. It represents the// filesystem mount path.func ( string) attribute.KeyValue {return SystemFilesystemMountpointKey.String()}// Enum values for system.filesystem.statevar (// used// Stability: developmentSystemFilesystemStateUsed = SystemFilesystemStateKey.String("used")// free// Stability: developmentSystemFilesystemStateFree = SystemFilesystemStateKey.String("free")// reserved// Stability: developmentSystemFilesystemStateReserved = SystemFilesystemStateKey.String("reserved"))// Enum values for system.filesystem.typevar (// fat32// Stability: developmentSystemFilesystemTypeFat32 = SystemFilesystemTypeKey.String("fat32")// exfat// Stability: developmentSystemFilesystemTypeExfat = SystemFilesystemTypeKey.String("exfat")// ntfs// Stability: developmentSystemFilesystemTypeNtfs = SystemFilesystemTypeKey.String("ntfs")// refs// Stability: developmentSystemFilesystemTypeRefs = SystemFilesystemTypeKey.String("refs")// hfsplus// Stability: developmentSystemFilesystemTypeHfsplus = SystemFilesystemTypeKey.String("hfsplus")// ext4// Stability: developmentSystemFilesystemTypeExt4 = SystemFilesystemTypeKey.String("ext4"))// Enum values for system.memory.statevar (// Actual used virtual memory in bytes.// Stability: developmentSystemMemoryStateUsed = SystemMemoryStateKey.String("used")// free// Stability: developmentSystemMemoryStateFree = SystemMemoryStateKey.String("free")// buffers// Stability: developmentSystemMemoryStateBuffers = SystemMemoryStateKey.String("buffers")// cached// Stability: developmentSystemMemoryStateCached = SystemMemoryStateKey.String("cached"))// Enum values for system.paging.directionvar (// in// Stability: developmentSystemPagingDirectionIn = SystemPagingDirectionKey.String("in")// out// Stability: developmentSystemPagingDirectionOut = SystemPagingDirectionKey.String("out"))// Enum values for system.paging.statevar (// used// Stability: developmentSystemPagingStateUsed = SystemPagingStateKey.String("used")// free// Stability: developmentSystemPagingStateFree = SystemPagingStateKey.String("free"))// Enum values for system.paging.typevar (// major// Stability: developmentSystemPagingTypeMajor = SystemPagingTypeKey.String("major")// minor// Stability: developmentSystemPagingTypeMinor = SystemPagingTypeKey.String("minor"))// Enum values for system.process.statusvar (// running// Stability: developmentSystemProcessStatusRunning = SystemProcessStatusKey.String("running")// sleeping// Stability: developmentSystemProcessStatusSleeping = SystemProcessStatusKey.String("sleeping")// stopped// Stability: developmentSystemProcessStatusStopped = SystemProcessStatusKey.String("stopped")// defunct// Stability: developmentSystemProcessStatusDefunct = SystemProcessStatusKey.String("defunct"))// Namespace: telemetryconst (// TelemetryDistroNameKey is the attribute Key conforming to the// "telemetry.distro.name" semantic conventions. It represents the name of the// auto instrumentation agent or distribution, if used.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "parts-unlimited-java"// Note: Official auto instrumentation agents and distributions SHOULD set the// `telemetry.distro.name` attribute to// a string starting with `opentelemetry-`, e.g.// `opentelemetry-java-instrumentation`.TelemetryDistroNameKey = attribute.Key("telemetry.distro.name")// TelemetryDistroVersionKey is the attribute Key conforming to the// "telemetry.distro.version" semantic conventions. It represents the version// string of the auto instrumentation agent or distribution, if used.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "1.2.3"TelemetryDistroVersionKey = attribute.Key("telemetry.distro.version")// TelemetrySDKLanguageKey is the attribute Key conforming to the// "telemetry.sdk.language" semantic conventions. It represents the language of// the telemetry SDK.//// Type: Enum// RequirementLevel: Recommended// Stability: Stable//// Examples:TelemetrySDKLanguageKey = attribute.Key("telemetry.sdk.language")// TelemetrySDKNameKey is the attribute Key conforming to the// "telemetry.sdk.name" semantic conventions. It represents the name of the// telemetry SDK as defined above.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "opentelemetry"// Note: The OpenTelemetry SDK MUST set the `telemetry.sdk.name` attribute to// `opentelemetry`.// If another SDK, like a fork or a vendor-provided implementation, is used,// this SDK MUST set the// `telemetry.sdk.name` attribute to the fully-qualified class or module name of// this SDK's main entry point// or another suitable identifier depending on the language.// The identifier `opentelemetry` is reserved and MUST NOT be used in this case.// All custom identifiers SHOULD be stable across different versions of an// implementation.TelemetrySDKNameKey = attribute.Key("telemetry.sdk.name")// TelemetrySDKVersionKey is the attribute Key conforming to the// "telemetry.sdk.version" semantic conventions. It represents the version// string of the telemetry SDK.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "1.2.3"TelemetrySDKVersionKey = attribute.Key("telemetry.sdk.version"))// TelemetryDistroName returns an attribute KeyValue conforming to the// "telemetry.distro.name" semantic conventions. It represents the name of the// auto instrumentation agent or distribution, if used.func ( string) attribute.KeyValue {return TelemetryDistroNameKey.String()}// TelemetryDistroVersion returns an attribute KeyValue conforming to the// "telemetry.distro.version" semantic conventions. It represents the version// string of the auto instrumentation agent or distribution, if used.func ( string) attribute.KeyValue {return TelemetryDistroVersionKey.String()}// TelemetrySDKName returns an attribute KeyValue conforming to the// "telemetry.sdk.name" semantic conventions. It represents the name of the// telemetry SDK as defined above.func ( string) attribute.KeyValue {return TelemetrySDKNameKey.String()}// TelemetrySDKVersion returns an attribute KeyValue conforming to the// "telemetry.sdk.version" semantic conventions. It represents the version string// of the telemetry SDK.func ( string) attribute.KeyValue {return TelemetrySDKVersionKey.String()}// Enum values for telemetry.sdk.languagevar (// cpp// Stability: stableTelemetrySDKLanguageCPP = TelemetrySDKLanguageKey.String("cpp")// dotnet// Stability: stableTelemetrySDKLanguageDotnet = TelemetrySDKLanguageKey.String("dotnet")// erlang// Stability: stableTelemetrySDKLanguageErlang = TelemetrySDKLanguageKey.String("erlang")// go// Stability: stableTelemetrySDKLanguageGo = TelemetrySDKLanguageKey.String("go")// java// Stability: stableTelemetrySDKLanguageJava = TelemetrySDKLanguageKey.String("java")// nodejs// Stability: stableTelemetrySDKLanguageNodejs = TelemetrySDKLanguageKey.String("nodejs")// php// Stability: stableTelemetrySDKLanguagePHP = TelemetrySDKLanguageKey.String("php")// python// Stability: stableTelemetrySDKLanguagePython = TelemetrySDKLanguageKey.String("python")// ruby// Stability: stableTelemetrySDKLanguageRuby = TelemetrySDKLanguageKey.String("ruby")// rust// Stability: stableTelemetrySDKLanguageRust = TelemetrySDKLanguageKey.String("rust")// swift// Stability: stableTelemetrySDKLanguageSwift = TelemetrySDKLanguageKey.String("swift")// webjs// Stability: stableTelemetrySDKLanguageWebJS = TelemetrySDKLanguageKey.String("webjs"))// Namespace: testconst (// TestCaseNameKey is the attribute Key conforming to the "test.case.name"// semantic conventions. It represents the fully qualified human readable name// of the [test case].//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "org.example.TestCase1.test1", "example/tests/TestCase1.test1",// "ExampleTestCase1_test1"//// [test case]: https://wikipedia.org/wiki/Test_caseTestCaseNameKey = attribute.Key("test.case.name")// TestCaseResultStatusKey is the attribute Key conforming to the// "test.case.result.status" semantic conventions. It represents the status of// the actual test case result from test execution.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "pass", "fail"TestCaseResultStatusKey = attribute.Key("test.case.result.status")// TestSuiteNameKey is the attribute Key conforming to the "test.suite.name"// semantic conventions. It represents the human readable name of a [test suite]// .//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "TestSuite1"//// [test suite]: https://wikipedia.org/wiki/Test_suiteTestSuiteNameKey = attribute.Key("test.suite.name")// TestSuiteRunStatusKey is the attribute Key conforming to the// "test.suite.run.status" semantic conventions. It represents the status of the// test suite run.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "success", "failure", "skipped", "aborted", "timed_out",// "in_progress"TestSuiteRunStatusKey = attribute.Key("test.suite.run.status"))// TestCaseName returns an attribute KeyValue conforming to the "test.case.name"// semantic conventions. It represents the fully qualified human readable name of// the [test case].//// [test case]: https://wikipedia.org/wiki/Test_casefunc ( string) attribute.KeyValue {return TestCaseNameKey.String()}// TestSuiteName returns an attribute KeyValue conforming to the// "test.suite.name" semantic conventions. It represents the human readable name// of a [test suite].//// [test suite]: https://wikipedia.org/wiki/Test_suitefunc ( string) attribute.KeyValue {return TestSuiteNameKey.String()}// Enum values for test.case.result.statusvar (// pass// Stability: developmentTestCaseResultStatusPass = TestCaseResultStatusKey.String("pass")// fail// Stability: developmentTestCaseResultStatusFail = TestCaseResultStatusKey.String("fail"))// Enum values for test.suite.run.statusvar (// success// Stability: developmentTestSuiteRunStatusSuccess = TestSuiteRunStatusKey.String("success")// failure// Stability: developmentTestSuiteRunStatusFailure = TestSuiteRunStatusKey.String("failure")// skipped// Stability: developmentTestSuiteRunStatusSkipped = TestSuiteRunStatusKey.String("skipped")// aborted// Stability: developmentTestSuiteRunStatusAborted = TestSuiteRunStatusKey.String("aborted")// timed_out// Stability: developmentTestSuiteRunStatusTimedOut = TestSuiteRunStatusKey.String("timed_out")// in_progress// Stability: developmentTestSuiteRunStatusInProgress = TestSuiteRunStatusKey.String("in_progress"))// Namespace: threadconst (// ThreadIDKey is the attribute Key conforming to the "thread.id" semantic// conventions. It represents the current "managed" thread ID (as opposed to OS// thread ID).//// Type: int// RequirementLevel: Recommended// Stability: DevelopmentThreadIDKey = attribute.Key("thread.id")// ThreadNameKey is the attribute Key conforming to the "thread.name" semantic// conventions. It represents the current thread name.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: mainThreadNameKey = attribute.Key("thread.name"))// ThreadID returns an attribute KeyValue conforming to the "thread.id" semantic// conventions. It represents the current "managed" thread ID (as opposed to OS// thread ID).func ( int) attribute.KeyValue {return ThreadIDKey.Int()}// ThreadName returns an attribute KeyValue conforming to the "thread.name"// semantic conventions. It represents the current thread name.func ( string) attribute.KeyValue {return ThreadNameKey.String()}// Namespace: tlsconst (// TLSCipherKey is the attribute Key conforming to the "tls.cipher" semantic// conventions. It represents the string indicating the [cipher] used during the// current connection.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "TLS_RSA_WITH_3DES_EDE_CBC_SHA",// "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256"// Note: The values allowed for `tls.cipher` MUST be one of the `Descriptions`// of the [registered TLS Cipher Suits].//// [cipher]: https://datatracker.ietf.org/doc/html/rfc5246#appendix-A.5// [registered TLS Cipher Suits]: https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml#table-tls-parameters-4TLSCipherKey = attribute.Key("tls.cipher")// TLSClientCertificateKey is the attribute Key conforming to the// "tls.client.certificate" semantic conventions. It represents the PEM-encoded// stand-alone certificate offered by the client. This is usually// mutually-exclusive of `client.certificate_chain` since this value also exists// in that list.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "MII..."TLSClientCertificateKey = attribute.Key("tls.client.certificate")// TLSClientCertificateChainKey is the attribute Key conforming to the// "tls.client.certificate_chain" semantic conventions. It represents the array// of PEM-encoded certificates that make up the certificate chain offered by the// client. This is usually mutually-exclusive of `client.certificate` since that// value should be the first certificate in the chain.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "MII...", "MI..."TLSClientCertificateChainKey = attribute.Key("tls.client.certificate_chain")// TLSClientHashMd5Key is the attribute Key conforming to the// "tls.client.hash.md5" semantic conventions. It represents the certificate// fingerprint using the MD5 digest of DER-encoded version of certificate// offered by the client. For consistency with other hash values, this value// should be formatted as an uppercase hash.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "0F76C7F2C55BFD7D8E8B8F4BFBF0C9EC"TLSClientHashMd5Key = attribute.Key("tls.client.hash.md5")// TLSClientHashSha1Key is the attribute Key conforming to the// "tls.client.hash.sha1" semantic conventions. It represents the certificate// fingerprint using the SHA1 digest of DER-encoded version of certificate// offered by the client. For consistency with other hash values, this value// should be formatted as an uppercase hash.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "9E393D93138888D288266C2D915214D1D1CCEB2A"TLSClientHashSha1Key = attribute.Key("tls.client.hash.sha1")// TLSClientHashSha256Key is the attribute Key conforming to the// "tls.client.hash.sha256" semantic conventions. It represents the certificate// fingerprint using the SHA256 digest of DER-encoded version of certificate// offered by the client. For consistency with other hash values, this value// should be formatted as an uppercase hash.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "0687F666A054EF17A08E2F2162EAB4CBC0D265E1D7875BE74BF3C712CA92DAF0"TLSClientHashSha256Key = attribute.Key("tls.client.hash.sha256")// TLSClientIssuerKey is the attribute Key conforming to the "tls.client.issuer"// semantic conventions. It represents the distinguished name of [subject] of// the issuer of the x.509 certificate presented by the client.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "CN=Example Root CA, OU=Infrastructure Team, DC=example, DC=com"//// [subject]: https://datatracker.ietf.org/doc/html/rfc5280#section-4.1.2.6TLSClientIssuerKey = attribute.Key("tls.client.issuer")// TLSClientJa3Key is the attribute Key conforming to the "tls.client.ja3"// semantic conventions. It represents a hash that identifies clients based on// how they perform an SSL/TLS handshake.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "d4e5b18d6b55c71272893221c96ba240"TLSClientJa3Key = attribute.Key("tls.client.ja3")// TLSClientNotAfterKey is the attribute Key conforming to the// "tls.client.not_after" semantic conventions. It represents the date/Time// indicating when client certificate is no longer considered valid.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "2021-01-01T00:00:00.000Z"TLSClientNotAfterKey = attribute.Key("tls.client.not_after")// TLSClientNotBeforeKey is the attribute Key conforming to the// "tls.client.not_before" semantic conventions. It represents the date/Time// indicating when client certificate is first considered valid.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "1970-01-01T00:00:00.000Z"TLSClientNotBeforeKey = attribute.Key("tls.client.not_before")// TLSClientSubjectKey is the attribute Key conforming to the// "tls.client.subject" semantic conventions. It represents the distinguished// name of subject of the x.509 certificate presented by the client.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "CN=myclient, OU=Documentation Team, DC=example, DC=com"TLSClientSubjectKey = attribute.Key("tls.client.subject")// TLSClientSupportedCiphersKey is the attribute Key conforming to the// "tls.client.supported_ciphers" semantic conventions. It represents the array// of ciphers offered by the client during the client hello.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",// "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384"TLSClientSupportedCiphersKey = attribute.Key("tls.client.supported_ciphers")// TLSCurveKey is the attribute Key conforming to the "tls.curve" semantic// conventions. It represents the string indicating the curve used for the given// cipher, when applicable.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "secp256r1"TLSCurveKey = attribute.Key("tls.curve")// TLSEstablishedKey is the attribute Key conforming to the "tls.established"// semantic conventions. It represents the boolean flag indicating if the TLS// negotiation was successful and transitioned to an encrypted tunnel.//// Type: boolean// RequirementLevel: Recommended// Stability: Development//// Examples: trueTLSEstablishedKey = attribute.Key("tls.established")// TLSNextProtocolKey is the attribute Key conforming to the "tls.next_protocol"// semantic conventions. It represents the string indicating the protocol being// tunneled. Per the values in the [IANA registry], this string should be lower// case.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "http/1.1"//// [IANA registry]: https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-idsTLSNextProtocolKey = attribute.Key("tls.next_protocol")// TLSProtocolNameKey is the attribute Key conforming to the "tls.protocol.name"// semantic conventions. It represents the normalized lowercase protocol name// parsed from original string of the negotiated [SSL/TLS protocol version].//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples://// [SSL/TLS protocol version]: https://docs.openssl.org/1.1.1/man3/SSL_get_version/#return-valuesTLSProtocolNameKey = attribute.Key("tls.protocol.name")// TLSProtocolVersionKey is the attribute Key conforming to the// "tls.protocol.version" semantic conventions. It represents the numeric part// of the version parsed from the original string of the negotiated// [SSL/TLS protocol version].//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "1.2", "3"//// [SSL/TLS protocol version]: https://docs.openssl.org/1.1.1/man3/SSL_get_version/#return-valuesTLSProtocolVersionKey = attribute.Key("tls.protocol.version")// TLSResumedKey is the attribute Key conforming to the "tls.resumed" semantic// conventions. It represents the boolean flag indicating if this TLS connection// was resumed from an existing TLS negotiation.//// Type: boolean// RequirementLevel: Recommended// Stability: Development//// Examples: trueTLSResumedKey = attribute.Key("tls.resumed")// TLSServerCertificateKey is the attribute Key conforming to the// "tls.server.certificate" semantic conventions. It represents the PEM-encoded// stand-alone certificate offered by the server. This is usually// mutually-exclusive of `server.certificate_chain` since this value also exists// in that list.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "MII..."TLSServerCertificateKey = attribute.Key("tls.server.certificate")// TLSServerCertificateChainKey is the attribute Key conforming to the// "tls.server.certificate_chain" semantic conventions. It represents the array// of PEM-encoded certificates that make up the certificate chain offered by the// server. This is usually mutually-exclusive of `server.certificate` since that// value should be the first certificate in the chain.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "MII...", "MI..."TLSServerCertificateChainKey = attribute.Key("tls.server.certificate_chain")// TLSServerHashMd5Key is the attribute Key conforming to the// "tls.server.hash.md5" semantic conventions. It represents the certificate// fingerprint using the MD5 digest of DER-encoded version of certificate// offered by the server. For consistency with other hash values, this value// should be formatted as an uppercase hash.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "0F76C7F2C55BFD7D8E8B8F4BFBF0C9EC"TLSServerHashMd5Key = attribute.Key("tls.server.hash.md5")// TLSServerHashSha1Key is the attribute Key conforming to the// "tls.server.hash.sha1" semantic conventions. It represents the certificate// fingerprint using the SHA1 digest of DER-encoded version of certificate// offered by the server. For consistency with other hash values, this value// should be formatted as an uppercase hash.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "9E393D93138888D288266C2D915214D1D1CCEB2A"TLSServerHashSha1Key = attribute.Key("tls.server.hash.sha1")// TLSServerHashSha256Key is the attribute Key conforming to the// "tls.server.hash.sha256" semantic conventions. It represents the certificate// fingerprint using the SHA256 digest of DER-encoded version of certificate// offered by the server. For consistency with other hash values, this value// should be formatted as an uppercase hash.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "0687F666A054EF17A08E2F2162EAB4CBC0D265E1D7875BE74BF3C712CA92DAF0"TLSServerHashSha256Key = attribute.Key("tls.server.hash.sha256")// TLSServerIssuerKey is the attribute Key conforming to the "tls.server.issuer"// semantic conventions. It represents the distinguished name of [subject] of// the issuer of the x.509 certificate presented by the client.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "CN=Example Root CA, OU=Infrastructure Team, DC=example, DC=com"//// [subject]: https://datatracker.ietf.org/doc/html/rfc5280#section-4.1.2.6TLSServerIssuerKey = attribute.Key("tls.server.issuer")// TLSServerJa3sKey is the attribute Key conforming to the "tls.server.ja3s"// semantic conventions. It represents a hash that identifies servers based on// how they perform an SSL/TLS handshake.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "d4e5b18d6b55c71272893221c96ba240"TLSServerJa3sKey = attribute.Key("tls.server.ja3s")// TLSServerNotAfterKey is the attribute Key conforming to the// "tls.server.not_after" semantic conventions. It represents the date/Time// indicating when server certificate is no longer considered valid.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "2021-01-01T00:00:00.000Z"TLSServerNotAfterKey = attribute.Key("tls.server.not_after")// TLSServerNotBeforeKey is the attribute Key conforming to the// "tls.server.not_before" semantic conventions. It represents the date/Time// indicating when server certificate is first considered valid.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "1970-01-01T00:00:00.000Z"TLSServerNotBeforeKey = attribute.Key("tls.server.not_before")// TLSServerSubjectKey is the attribute Key conforming to the// "tls.server.subject" semantic conventions. It represents the distinguished// name of subject of the x.509 certificate presented by the server.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "CN=myserver, OU=Documentation Team, DC=example, DC=com"TLSServerSubjectKey = attribute.Key("tls.server.subject"))// TLSCipher returns an attribute KeyValue conforming to the "tls.cipher"// semantic conventions. It represents the string indicating the [cipher] used// during the current connection.//// [cipher]: https://datatracker.ietf.org/doc/html/rfc5246#appendix-A.5func ( string) attribute.KeyValue {return TLSCipherKey.String()}// TLSClientCertificate returns an attribute KeyValue conforming to the// "tls.client.certificate" semantic conventions. It represents the PEM-encoded// stand-alone certificate offered by the client. This is usually// mutually-exclusive of `client.certificate_chain` since this value also exists// in that list.func ( string) attribute.KeyValue {return TLSClientCertificateKey.String()}// TLSClientCertificateChain returns an attribute KeyValue conforming to the// "tls.client.certificate_chain" semantic conventions. It represents the array// of PEM-encoded certificates that make up the certificate chain offered by the// client. This is usually mutually-exclusive of `client.certificate` since that// value should be the first certificate in the chain.func ( ...string) attribute.KeyValue {return TLSClientCertificateChainKey.StringSlice()}// TLSClientHashMd5 returns an attribute KeyValue conforming to the// "tls.client.hash.md5" semantic conventions. It represents the certificate// fingerprint using the MD5 digest of DER-encoded version of certificate offered// by the client. For consistency with other hash values, this value should be// formatted as an uppercase hash.func ( string) attribute.KeyValue {return TLSClientHashMd5Key.String()}// TLSClientHashSha1 returns an attribute KeyValue conforming to the// "tls.client.hash.sha1" semantic conventions. It represents the certificate// fingerprint using the SHA1 digest of DER-encoded version of certificate// offered by the client. For consistency with other hash values, this value// should be formatted as an uppercase hash.func ( string) attribute.KeyValue {return TLSClientHashSha1Key.String()}// TLSClientHashSha256 returns an attribute KeyValue conforming to the// "tls.client.hash.sha256" semantic conventions. It represents the certificate// fingerprint using the SHA256 digest of DER-encoded version of certificate// offered by the client. For consistency with other hash values, this value// should be formatted as an uppercase hash.func ( string) attribute.KeyValue {return TLSClientHashSha256Key.String()}// TLSClientIssuer returns an attribute KeyValue conforming to the// "tls.client.issuer" semantic conventions. It represents the distinguished name// of [subject] of the issuer of the x.509 certificate presented by the client.//// [subject]: https://datatracker.ietf.org/doc/html/rfc5280#section-4.1.2.6func ( string) attribute.KeyValue {return TLSClientIssuerKey.String()}// TLSClientJa3 returns an attribute KeyValue conforming to the "tls.client.ja3"// semantic conventions. It represents a hash that identifies clients based on// how they perform an SSL/TLS handshake.func ( string) attribute.KeyValue {return TLSClientJa3Key.String()}// TLSClientNotAfter returns an attribute KeyValue conforming to the// "tls.client.not_after" semantic conventions. It represents the date/Time// indicating when client certificate is no longer considered valid.func ( string) attribute.KeyValue {return TLSClientNotAfterKey.String()}// TLSClientNotBefore returns an attribute KeyValue conforming to the// "tls.client.not_before" semantic conventions. It represents the date/Time// indicating when client certificate is first considered valid.func ( string) attribute.KeyValue {return TLSClientNotBeforeKey.String()}// TLSClientSubject returns an attribute KeyValue conforming to the// "tls.client.subject" semantic conventions. It represents the distinguished// name of subject of the x.509 certificate presented by the client.func ( string) attribute.KeyValue {return TLSClientSubjectKey.String()}// TLSClientSupportedCiphers returns an attribute KeyValue conforming to the// "tls.client.supported_ciphers" semantic conventions. It represents the array// of ciphers offered by the client during the client hello.func ( ...string) attribute.KeyValue {return TLSClientSupportedCiphersKey.StringSlice()}// TLSCurve returns an attribute KeyValue conforming to the "tls.curve" semantic// conventions. It represents the string indicating the curve used for the given// cipher, when applicable.func ( string) attribute.KeyValue {return TLSCurveKey.String()}// TLSEstablished returns an attribute KeyValue conforming to the// "tls.established" semantic conventions. It represents the boolean flag// indicating if the TLS negotiation was successful and transitioned to an// encrypted tunnel.func ( bool) attribute.KeyValue {return TLSEstablishedKey.Bool()}// TLSNextProtocol returns an attribute KeyValue conforming to the// "tls.next_protocol" semantic conventions. It represents the string indicating// the protocol being tunneled. Per the values in the [IANA registry], this// string should be lower case.//// [IANA registry]: https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-idsfunc ( string) attribute.KeyValue {return TLSNextProtocolKey.String()}// TLSProtocolVersion returns an attribute KeyValue conforming to the// "tls.protocol.version" semantic conventions. It represents the numeric part of// the version parsed from the original string of the negotiated// [SSL/TLS protocol version].//// [SSL/TLS protocol version]: https://docs.openssl.org/1.1.1/man3/SSL_get_version/#return-valuesfunc ( string) attribute.KeyValue {return TLSProtocolVersionKey.String()}// TLSResumed returns an attribute KeyValue conforming to the "tls.resumed"// semantic conventions. It represents the boolean flag indicating if this TLS// connection was resumed from an existing TLS negotiation.func ( bool) attribute.KeyValue {return TLSResumedKey.Bool()}// TLSServerCertificate returns an attribute KeyValue conforming to the// "tls.server.certificate" semantic conventions. It represents the PEM-encoded// stand-alone certificate offered by the server. This is usually// mutually-exclusive of `server.certificate_chain` since this value also exists// in that list.func ( string) attribute.KeyValue {return TLSServerCertificateKey.String()}// TLSServerCertificateChain returns an attribute KeyValue conforming to the// "tls.server.certificate_chain" semantic conventions. It represents the array// of PEM-encoded certificates that make up the certificate chain offered by the// server. This is usually mutually-exclusive of `server.certificate` since that// value should be the first certificate in the chain.func ( ...string) attribute.KeyValue {return TLSServerCertificateChainKey.StringSlice()}// TLSServerHashMd5 returns an attribute KeyValue conforming to the// "tls.server.hash.md5" semantic conventions. It represents the certificate// fingerprint using the MD5 digest of DER-encoded version of certificate offered// by the server. For consistency with other hash values, this value should be// formatted as an uppercase hash.func ( string) attribute.KeyValue {return TLSServerHashMd5Key.String()}// TLSServerHashSha1 returns an attribute KeyValue conforming to the// "tls.server.hash.sha1" semantic conventions. It represents the certificate// fingerprint using the SHA1 digest of DER-encoded version of certificate// offered by the server. For consistency with other hash values, this value// should be formatted as an uppercase hash.func ( string) attribute.KeyValue {return TLSServerHashSha1Key.String()}// TLSServerHashSha256 returns an attribute KeyValue conforming to the// "tls.server.hash.sha256" semantic conventions. It represents the certificate// fingerprint using the SHA256 digest of DER-encoded version of certificate// offered by the server. For consistency with other hash values, this value// should be formatted as an uppercase hash.func ( string) attribute.KeyValue {return TLSServerHashSha256Key.String()}// TLSServerIssuer returns an attribute KeyValue conforming to the// "tls.server.issuer" semantic conventions. It represents the distinguished name// of [subject] of the issuer of the x.509 certificate presented by the client.//// [subject]: https://datatracker.ietf.org/doc/html/rfc5280#section-4.1.2.6func ( string) attribute.KeyValue {return TLSServerIssuerKey.String()}// TLSServerJa3s returns an attribute KeyValue conforming to the// "tls.server.ja3s" semantic conventions. It represents a hash that identifies// servers based on how they perform an SSL/TLS handshake.func ( string) attribute.KeyValue {return TLSServerJa3sKey.String()}// TLSServerNotAfter returns an attribute KeyValue conforming to the// "tls.server.not_after" semantic conventions. It represents the date/Time// indicating when server certificate is no longer considered valid.func ( string) attribute.KeyValue {return TLSServerNotAfterKey.String()}// TLSServerNotBefore returns an attribute KeyValue conforming to the// "tls.server.not_before" semantic conventions. It represents the date/Time// indicating when server certificate is first considered valid.func ( string) attribute.KeyValue {return TLSServerNotBeforeKey.String()}// TLSServerSubject returns an attribute KeyValue conforming to the// "tls.server.subject" semantic conventions. It represents the distinguished// name of subject of the x.509 certificate presented by the server.func ( string) attribute.KeyValue {return TLSServerSubjectKey.String()}// Enum values for tls.protocol.namevar (// ssl// Stability: developmentTLSProtocolNameSsl = TLSProtocolNameKey.String("ssl")// tls// Stability: developmentTLSProtocolNameTLS = TLSProtocolNameKey.String("tls"))// Namespace: urlconst (// URLDomainKey is the attribute Key conforming to the "url.domain" semantic// conventions. It represents the domain extracted from the `url.full`, such as// "opentelemetry.io".//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "www.foo.bar", "opentelemetry.io", "3.12.167.2",// "[1080:0:0:0:8:800:200C:417A]"// Note: In some cases a URL may refer to an IP and/or port directly, without a// domain name. In this case, the IP address would go to the domain field. If// the URL contains a [literal IPv6 address] enclosed by `[` and `]`, the `[`// and `]` characters should also be captured in the domain field.//// [literal IPv6 address]: https://www.rfc-editor.org/rfc/rfc2732#section-2URLDomainKey = attribute.Key("url.domain")// URLExtensionKey is the attribute Key conforming to the "url.extension"// semantic conventions. It represents the file extension extracted from the// `url.full`, excluding the leading dot.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "png", "gz"// Note: The file extension is only set if it exists, as not every url has a// file extension. When the file name has multiple extensions `example.tar.gz`,// only the last one should be captured `gz`, not `tar.gz`.URLExtensionKey = attribute.Key("url.extension")// URLFragmentKey is the attribute Key conforming to the "url.fragment" semantic// conventions. It represents the [URI fragment] component.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "SemConv"//// [URI fragment]: https://www.rfc-editor.org/rfc/rfc3986#section-3.5URLFragmentKey = attribute.Key("url.fragment")// URLFullKey is the attribute Key conforming to the "url.full" semantic// conventions. It represents the absolute URL describing a network resource// according to [RFC3986].//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "https://www.foo.bar/search?q=OpenTelemetry#SemConv", "//localhost"// Note: For network calls, URL usually has// `scheme://host[:port][path][?query][#fragment]` format, where the fragment// is not transmitted over HTTP, but if it is known, it SHOULD be included// nevertheless.//// `url.full` MUST NOT contain credentials passed via URL in form of// `https://username:password@www.example.com/`.// In such case username and password SHOULD be redacted and attribute's value// SHOULD be `https://REDACTED:REDACTED@www.example.com/`.//// `url.full` SHOULD capture the absolute URL when it is available (or can be// reconstructed).//// Sensitive content provided in `url.full` SHOULD be scrubbed when// instrumentations can identify it.////// Query string values for the following keys SHOULD be redacted by default and// replaced by the// value `REDACTED`://// - [`AWSAccessKeyId`]// - [`Signature`]// - [`sig`]// - [`X-Goog-Signature`]//// This list is subject to change over time.//// When a query string value is redacted, the query string key SHOULD still be// preserved, e.g.// `https://www.example.com/path?color=blue&sig=REDACTED`.//// [RFC3986]: https://www.rfc-editor.org/rfc/rfc3986// [`AWSAccessKeyId`]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/RESTAuthentication.html#RESTAuthenticationQueryStringAuth// [`Signature`]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/RESTAuthentication.html#RESTAuthenticationQueryStringAuth// [`sig`]: https://learn.microsoft.com/azure/storage/common/storage-sas-overview#sas-token// [`X-Goog-Signature`]: https://cloud.google.com/storage/docs/access-control/signed-urlsURLFullKey = attribute.Key("url.full")// URLOriginalKey is the attribute Key conforming to the "url.original" semantic// conventions. It represents the unmodified original URL as seen in the event// source.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "https://www.foo.bar/search?q=OpenTelemetry#SemConv",// "search?q=OpenTelemetry"// Note: In network monitoring, the observed URL may be a full URL, whereas in// access logs, the URL is often just represented as a path. This field is meant// to represent the URL as it was observed, complete or not.// `url.original` might contain credentials passed via URL in form of// `https://username:password@www.example.com/`. In such case password and// username SHOULD NOT be redacted and attribute's value SHOULD remain the same.URLOriginalKey = attribute.Key("url.original")// URLPathKey is the attribute Key conforming to the "url.path" semantic// conventions. It represents the [URI path] component.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "/search"// Note: Sensitive content provided in `url.path` SHOULD be scrubbed when// instrumentations can identify it.//// [URI path]: https://www.rfc-editor.org/rfc/rfc3986#section-3.3URLPathKey = attribute.Key("url.path")// URLPortKey is the attribute Key conforming to the "url.port" semantic// conventions. It represents the port extracted from the `url.full`.//// Type: int// RequirementLevel: Recommended// Stability: Development//// Examples: 443URLPortKey = attribute.Key("url.port")// URLQueryKey is the attribute Key conforming to the "url.query" semantic// conventions. It represents the [URI query] component.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "q=OpenTelemetry"// Note: Sensitive content provided in `url.query` SHOULD be scrubbed when// instrumentations can identify it.////// Query string values for the following keys SHOULD be redacted by default and// replaced by the value `REDACTED`://// - [`AWSAccessKeyId`]// - [`Signature`]// - [`sig`]// - [`X-Goog-Signature`]//// This list is subject to change over time.//// When a query string value is redacted, the query string key SHOULD still be// preserved, e.g.// `q=OpenTelemetry&sig=REDACTED`.//// [URI query]: https://www.rfc-editor.org/rfc/rfc3986#section-3.4// [`AWSAccessKeyId`]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/RESTAuthentication.html#RESTAuthenticationQueryStringAuth// [`Signature`]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/RESTAuthentication.html#RESTAuthenticationQueryStringAuth// [`sig`]: https://learn.microsoft.com/azure/storage/common/storage-sas-overview#sas-token// [`X-Goog-Signature`]: https://cloud.google.com/storage/docs/access-control/signed-urlsURLQueryKey = attribute.Key("url.query")// URLRegisteredDomainKey is the attribute Key conforming to the// "url.registered_domain" semantic conventions. It represents the highest// registered url domain, stripped of the subdomain.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "example.com", "foo.co.uk"// Note: This value can be determined precisely with the [public suffix list].// For example, the registered domain for `foo.example.com` is `example.com`.// Trying to approximate this by simply taking the last two labels will not work// well for TLDs such as `co.uk`.//// [public suffix list]: https://publicsuffix.org/URLRegisteredDomainKey = attribute.Key("url.registered_domain")// URLSchemeKey is the attribute Key conforming to the "url.scheme" semantic// conventions. It represents the [URI scheme] component identifying the used// protocol.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "https", "ftp", "telnet"//// [URI scheme]: https://www.rfc-editor.org/rfc/rfc3986#section-3.1URLSchemeKey = attribute.Key("url.scheme")// URLSubdomainKey is the attribute Key conforming to the "url.subdomain"// semantic conventions. It represents the subdomain portion of a fully// qualified domain name includes all of the names except the host name under// the registered_domain. In a partially qualified domain, or if the// qualification level of the full name cannot be determined, subdomain contains// all of the names below the registered domain.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "east", "sub2.sub1"// Note: The subdomain portion of `www.east.mydomain.co.uk` is `east`. If the// domain has multiple levels of subdomain, such as `sub2.sub1.example.com`, the// subdomain field should contain `sub2.sub1`, with no trailing period.URLSubdomainKey = attribute.Key("url.subdomain")// URLTemplateKey is the attribute Key conforming to the "url.template" semantic// conventions. It represents the low-cardinality template of an// [absolute path reference].//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "/users/{id}", "/users/:id", "/users?id={id}"//// [absolute path reference]: https://www.rfc-editor.org/rfc/rfc3986#section-4.2URLTemplateKey = attribute.Key("url.template")// URLTopLevelDomainKey is the attribute Key conforming to the// "url.top_level_domain" semantic conventions. It represents the effective top// level domain (eTLD), also known as the domain suffix, is the last part of the// domain name. For example, the top level domain for example.com is `com`.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "com", "co.uk"// Note: This value can be determined precisely with the [public suffix list].//// [public suffix list]: https://publicsuffix.org/URLTopLevelDomainKey = attribute.Key("url.top_level_domain"))// URLDomain returns an attribute KeyValue conforming to the "url.domain"// semantic conventions. It represents the domain extracted from the `url.full`,// such as "opentelemetry.io".func ( string) attribute.KeyValue {return URLDomainKey.String()}// URLExtension returns an attribute KeyValue conforming to the "url.extension"// semantic conventions. It represents the file extension extracted from the// `url.full`, excluding the leading dot.func ( string) attribute.KeyValue {return URLExtensionKey.String()}// URLFragment returns an attribute KeyValue conforming to the "url.fragment"// semantic conventions. It represents the [URI fragment] component.//// [URI fragment]: https://www.rfc-editor.org/rfc/rfc3986#section-3.5func ( string) attribute.KeyValue {return URLFragmentKey.String()}// URLFull returns an attribute KeyValue conforming to the "url.full" semantic// conventions. It represents the absolute URL describing a network resource// according to [RFC3986].//// [RFC3986]: https://www.rfc-editor.org/rfc/rfc3986func ( string) attribute.KeyValue {return URLFullKey.String()}// URLOriginal returns an attribute KeyValue conforming to the "url.original"// semantic conventions. It represents the unmodified original URL as seen in the// event source.func ( string) attribute.KeyValue {return URLOriginalKey.String()}// URLPath returns an attribute KeyValue conforming to the "url.path" semantic// conventions. It represents the [URI path] component.//// [URI path]: https://www.rfc-editor.org/rfc/rfc3986#section-3.3func ( string) attribute.KeyValue {return URLPathKey.String()}// URLPort returns an attribute KeyValue conforming to the "url.port" semantic// conventions. It represents the port extracted from the `url.full`.func ( int) attribute.KeyValue {return URLPortKey.Int()}// URLQuery returns an attribute KeyValue conforming to the "url.query" semantic// conventions. It represents the [URI query] component.//// [URI query]: https://www.rfc-editor.org/rfc/rfc3986#section-3.4func ( string) attribute.KeyValue {return URLQueryKey.String()}// URLRegisteredDomain returns an attribute KeyValue conforming to the// "url.registered_domain" semantic conventions. It represents the highest// registered url domain, stripped of the subdomain.func ( string) attribute.KeyValue {return URLRegisteredDomainKey.String()}// URLScheme returns an attribute KeyValue conforming to the "url.scheme"// semantic conventions. It represents the [URI scheme] component identifying the// used protocol.//// [URI scheme]: https://www.rfc-editor.org/rfc/rfc3986#section-3.1func ( string) attribute.KeyValue {return URLSchemeKey.String()}// URLSubdomain returns an attribute KeyValue conforming to the "url.subdomain"// semantic conventions. It represents the subdomain portion of a fully qualified// domain name includes all of the names except the host name under the// registered_domain. In a partially qualified domain, or if the qualification// level of the full name cannot be determined, subdomain contains all of the// names below the registered domain.func ( string) attribute.KeyValue {return URLSubdomainKey.String()}// URLTemplate returns an attribute KeyValue conforming to the "url.template"// semantic conventions. It represents the low-cardinality template of an// [absolute path reference].//// [absolute path reference]: https://www.rfc-editor.org/rfc/rfc3986#section-4.2func ( string) attribute.KeyValue {return URLTemplateKey.String()}// URLTopLevelDomain returns an attribute KeyValue conforming to the// "url.top_level_domain" semantic conventions. It represents the effective top// level domain (eTLD), also known as the domain suffix, is the last part of the// domain name. For example, the top level domain for example.com is `com`.func ( string) attribute.KeyValue {return URLTopLevelDomainKey.String()}// Namespace: userconst (// UserEmailKey is the attribute Key conforming to the "user.email" semantic// conventions. It represents the user email address.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "a.einstein@example.com"UserEmailKey = attribute.Key("user.email")// UserFullNameKey is the attribute Key conforming to the "user.full_name"// semantic conventions. It represents the user's full name.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Albert Einstein"UserFullNameKey = attribute.Key("user.full_name")// UserHashKey is the attribute Key conforming to the "user.hash" semantic// conventions. It represents the unique user hash to correlate information for// a user in anonymized form.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "364fc68eaf4c8acec74a4e52d7d1feaa"// Note: Useful if `user.id` or `user.name` contain confidential information and// cannot be used.UserHashKey = attribute.Key("user.hash")// UserIDKey is the attribute Key conforming to the "user.id" semantic// conventions. It represents the unique identifier of the user.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "S-1-5-21-202424912787-2692429404-2351956786-1000"UserIDKey = attribute.Key("user.id")// UserNameKey is the attribute Key conforming to the "user.name" semantic// conventions. It represents the short name or login/username of the user.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "a.einstein"UserNameKey = attribute.Key("user.name")// UserRolesKey is the attribute Key conforming to the "user.roles" semantic// conventions. It represents the array of user roles at the time of the event.//// Type: string[]// RequirementLevel: Recommended// Stability: Development//// Examples: "admin", "reporting_user"UserRolesKey = attribute.Key("user.roles"))// UserEmail returns an attribute KeyValue conforming to the "user.email"// semantic conventions. It represents the user email address.func ( string) attribute.KeyValue {return UserEmailKey.String()}// UserFullName returns an attribute KeyValue conforming to the "user.full_name"// semantic conventions. It represents the user's full name.func ( string) attribute.KeyValue {return UserFullNameKey.String()}// UserHash returns an attribute KeyValue conforming to the "user.hash" semantic// conventions. It represents the unique user hash to correlate information for a// user in anonymized form.func ( string) attribute.KeyValue {return UserHashKey.String()}// UserID returns an attribute KeyValue conforming to the "user.id" semantic// conventions. It represents the unique identifier of the user.func ( string) attribute.KeyValue {return UserIDKey.String()}// UserName returns an attribute KeyValue conforming to the "user.name" semantic// conventions. It represents the short name or login/username of the user.func ( string) attribute.KeyValue {return UserNameKey.String()}// UserRoles returns an attribute KeyValue conforming to the "user.roles"// semantic conventions. It represents the array of user roles at the time of the// event.func ( ...string) attribute.KeyValue {return UserRolesKey.StringSlice()}// Namespace: user_agentconst (// UserAgentNameKey is the attribute Key conforming to the "user_agent.name"// semantic conventions. It represents the name of the user-agent extracted from// original. Usually refers to the browser's name.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Safari", "YourApp"// Note: [Example] of extracting browser's name from original string. In the// case of using a user-agent for non-browser products, such as microservices// with multiple names/versions inside the `user_agent.original`, the most// significant name SHOULD be selected. In such a scenario it should align with// `user_agent.version`//// [Example]: https://www.whatsmyua.infoUserAgentNameKey = attribute.Key("user_agent.name")// UserAgentOriginalKey is the attribute Key conforming to the// "user_agent.original" semantic conventions. It represents the value of the// [HTTP User-Agent] header sent by the client.//// Type: string// RequirementLevel: Recommended// Stability: Stable//// Examples: "CERN-LineMode/2.15 libwww/2.17b3", "Mozilla/5.0 (iPhone; CPU// iPhone OS 14_7_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko)// Version/14.1.2 Mobile/15E148 Safari/604.1", "YourApp/1.0.0// grpc-java-okhttp/1.27.2"//// [HTTP User-Agent]: https://www.rfc-editor.org/rfc/rfc9110.html#field.user-agentUserAgentOriginalKey = attribute.Key("user_agent.original")// UserAgentOSNameKey is the attribute Key conforming to the// "user_agent.os.name" semantic conventions. It represents the human readable// operating system name.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "iOS", "Android", "Ubuntu"// Note: For mapping user agent strings to OS names, libraries such as// [ua-parser] can be utilized.//// [ua-parser]: https://github.com/ua-parserUserAgentOSNameKey = attribute.Key("user_agent.os.name")// UserAgentOSVersionKey is the attribute Key conforming to the// "user_agent.os.version" semantic conventions. It represents the version// string of the operating system as defined in [Version Attributes].//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "14.2.1", "18.04.1"// Note: For mapping user agent strings to OS versions, libraries such as// [ua-parser] can be utilized.//// [Version Attributes]: /docs/resource/README.md#version-attributes// [ua-parser]: https://github.com/ua-parserUserAgentOSVersionKey = attribute.Key("user_agent.os.version")// UserAgentSyntheticTypeKey is the attribute Key conforming to the// "user_agent.synthetic.type" semantic conventions. It represents the specifies// the category of synthetic traffic, such as tests or bots.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples:// Note: This attribute MAY be derived from the contents of the// `user_agent.original` attribute. Components that populate the attribute are// responsible for determining what they consider to be synthetic bot or test// traffic. This attribute can either be set for self-identification purposes,// or on telemetry detected to be generated as a result of a synthetic request.// This attribute is useful for distinguishing between genuine client traffic// and synthetic traffic generated by bots or tests.UserAgentSyntheticTypeKey = attribute.Key("user_agent.synthetic.type")// UserAgentVersionKey is the attribute Key conforming to the// "user_agent.version" semantic conventions. It represents the version of the// user-agent extracted from original. Usually refers to the browser's version.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "14.1.2", "1.0.0"// Note: [Example] of extracting browser's version from original string. In the// case of using a user-agent for non-browser products, such as microservices// with multiple names/versions inside the `user_agent.original`, the most// significant version SHOULD be selected. In such a scenario it should align// with `user_agent.name`//// [Example]: https://www.whatsmyua.infoUserAgentVersionKey = attribute.Key("user_agent.version"))// UserAgentName returns an attribute KeyValue conforming to the// "user_agent.name" semantic conventions. It represents the name of the// user-agent extracted from original. Usually refers to the browser's name.func ( string) attribute.KeyValue {return UserAgentNameKey.String()}// UserAgentOriginal returns an attribute KeyValue conforming to the// "user_agent.original" semantic conventions. It represents the value of the// [HTTP User-Agent] header sent by the client.//// [HTTP User-Agent]: https://www.rfc-editor.org/rfc/rfc9110.html#field.user-agentfunc ( string) attribute.KeyValue {return UserAgentOriginalKey.String()}// UserAgentOSName returns an attribute KeyValue conforming to the// "user_agent.os.name" semantic conventions. It represents the human readable// operating system name.func ( string) attribute.KeyValue {return UserAgentOSNameKey.String()}// UserAgentOSVersion returns an attribute KeyValue conforming to the// "user_agent.os.version" semantic conventions. It represents the version string// of the operating system as defined in [Version Attributes].//// [Version Attributes]: /docs/resource/README.md#version-attributesfunc ( string) attribute.KeyValue {return UserAgentOSVersionKey.String()}// UserAgentVersion returns an attribute KeyValue conforming to the// "user_agent.version" semantic conventions. It represents the version of the// user-agent extracted from original. Usually refers to the browser's version.func ( string) attribute.KeyValue {return UserAgentVersionKey.String()}// Enum values for user_agent.synthetic.typevar (// Bot source.// Stability: developmentUserAgentSyntheticTypeBot = UserAgentSyntheticTypeKey.String("bot")// Synthetic test source.// Stability: developmentUserAgentSyntheticTypeTest = UserAgentSyntheticTypeKey.String("test"))// Namespace: vcsconst (// VCSChangeIDKey is the attribute Key conforming to the "vcs.change.id"// semantic conventions. It represents the ID of the change (pull request/merge// request/changelist) if applicable. This is usually a unique (within// repository) identifier generated by the VCS system.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "123"VCSChangeIDKey = attribute.Key("vcs.change.id")// VCSChangeStateKey is the attribute Key conforming to the "vcs.change.state"// semantic conventions. It represents the state of the change (pull// request/merge request/changelist).//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "open", "closed", "merged"VCSChangeStateKey = attribute.Key("vcs.change.state")// VCSChangeTitleKey is the attribute Key conforming to the "vcs.change.title"// semantic conventions. It represents the human readable title of the change// (pull request/merge request/changelist). This title is often a brief summary// of the change and may get merged in to a ref as the commit summary.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "Fixes broken thing", "feat: add my new feature", "[chore] update// dependency"VCSChangeTitleKey = attribute.Key("vcs.change.title")// VCSLineChangeTypeKey is the attribute Key conforming to the// "vcs.line_change.type" semantic conventions. It represents the type of line// change being measured on a branch or change.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "added", "removed"VCSLineChangeTypeKey = attribute.Key("vcs.line_change.type")// VCSOwnerNameKey is the attribute Key conforming to the "vcs.owner.name"// semantic conventions. It represents the group owner within the version// control system.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "my-org", "myteam", "business-unit"VCSOwnerNameKey = attribute.Key("vcs.owner.name")// VCSProviderNameKey is the attribute Key conforming to the "vcs.provider.name"// semantic conventions. It represents the name of the version control system// provider.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "github", "gitlab", "gitea", "bitbucket"VCSProviderNameKey = attribute.Key("vcs.provider.name")// VCSRefBaseNameKey is the attribute Key conforming to the "vcs.ref.base.name"// semantic conventions. It represents the name of the [reference] such as// **branch** or **tag** in the repository.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "my-feature-branch", "tag-1-test"// Note: `base` refers to the starting point of a change. For example, `main`// would be the base reference of type branch if you've created a new// reference of type branch from it and created new commits.//// [reference]: https://git-scm.com/docs/gitglossary#def_refVCSRefBaseNameKey = attribute.Key("vcs.ref.base.name")// VCSRefBaseRevisionKey is the attribute Key conforming to the// "vcs.ref.base.revision" semantic conventions. It represents the revision,// literally [revised version], The revision most often refers to a commit// object in Git, or a revision number in SVN.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "9d59409acf479dfa0df1aa568182e43e43df8bbe28d60fcf2bc52e30068802cc",// "main", "123", "HEAD"// Note: `base` refers to the starting point of a change. For example, `main`// would be the base reference of type branch if you've created a new// reference of type branch from it and created new commits. 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.base.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.//// [revised version]: https://www.merriam-webster.com/dictionary/revision// [hash value (see// glossary)]: https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf// [commit]: https://git-scm.com/docs/git-commit// [revision// number]: https://svnbook.red-bean.com/en/1.7/svn.tour.revs.specifiers.htmlVCSRefBaseRevisionKey = attribute.Key("vcs.ref.base.revision")// VCSRefBaseTypeKey is the attribute Key conforming to the "vcs.ref.base.type"// semantic conventions. It represents the type of the [reference] in the// repository.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "branch", "tag"// Note: `base` refers to the starting point of a change. For example, `main`// would be the base reference of type branch if you've created a new// reference of type branch from it and created new commits.//// [reference]: https://git-scm.com/docs/gitglossary#def_refVCSRefBaseTypeKey = attribute.Key("vcs.ref.base.type")// VCSRefHeadNameKey is the attribute Key conforming to the "vcs.ref.head.name"// semantic conventions. It represents the name of the [reference] such as// **branch** or **tag** in the repository.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "my-feature-branch", "tag-1-test"// Note: `head` refers to where you are right now; the current reference at a// given time.//// [reference]: https://git-scm.com/docs/gitglossary#def_refVCSRefHeadNameKey = attribute.Key("vcs.ref.head.name")// VCSRefHeadRevisionKey is the attribute Key conforming to the// "vcs.ref.head.revision" semantic conventions. It represents the revision,// literally [revised version], The revision most often refers to a commit// object in Git, or a revision number in SVN.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "9d59409acf479dfa0df1aa568182e43e43df8bbe28d60fcf2bc52e30068802cc",// "main", "123", "HEAD"// Note: `head` refers to where you are right now; the current reference at a// given time.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.head.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.//// [revised version]: https://www.merriam-webster.com/dictionary/revision// [hash value (see// glossary)]: https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf// [commit]: https://git-scm.com/docs/git-commit// [revision// number]: https://svnbook.red-bean.com/en/1.7/svn.tour.revs.specifiers.htmlVCSRefHeadRevisionKey = attribute.Key("vcs.ref.head.revision")// VCSRefHeadTypeKey is the attribute Key conforming to the "vcs.ref.head.type"// semantic conventions. It represents the type of the [reference] in the// repository.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "branch", "tag"// Note: `head` refers to where you are right now; the current reference at a// given time.//// [reference]: https://git-scm.com/docs/gitglossary#def_refVCSRefHeadTypeKey = attribute.Key("vcs.ref.head.type")// VCSRefTypeKey is the attribute Key conforming to the "vcs.ref.type" semantic// conventions. It represents the type of the [reference] in the repository.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "branch", "tag"//// [reference]: https://git-scm.com/docs/gitglossary#def_refVCSRefTypeKey = attribute.Key("vcs.ref.type")// VCSRepositoryNameKey is the attribute Key conforming to the// "vcs.repository.name" semantic conventions. It represents the human readable// name of the repository. It SHOULD NOT include any additional identifier like// Group/SubGroup in GitLab or organization in GitHub.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "semantic-conventions", "my-cool-repo"// Note: Due to it only being the name, it can clash with forks of the same// repository if collecting telemetry across multiple orgs or groups in// the same backends.VCSRepositoryNameKey = attribute.Key("vcs.repository.name")// VCSRepositoryURLFullKey is the attribute Key conforming to the// "vcs.repository.url.full" semantic conventions. It represents the// [canonical URL] of the repository providing the complete HTTP(S) address in// order to locate and identify the repository through a browser.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples:// "https://github.com/opentelemetry/open-telemetry-collector-contrib",// "https://gitlab.com/my-org/my-project/my-projects-project/repo"// Note: In Git Version Control Systems, the canonical URL SHOULD NOT include// the `.git` extension.//// [canonical URL]: https://support.google.com/webmasters/answer/10347851?hl=en#:~:text=A%20canonical%20URL%20is%20the,Google%20chooses%20one%20as%20canonical.VCSRepositoryURLFullKey = attribute.Key("vcs.repository.url.full")// VCSRevisionDeltaDirectionKey is the attribute Key conforming to the// "vcs.revision_delta.direction" semantic conventions. It represents the type// of revision comparison.//// Type: Enum// RequirementLevel: Recommended// Stability: Development//// Examples: "ahead", "behind"VCSRevisionDeltaDirectionKey = attribute.Key("vcs.revision_delta.direction"))// VCSChangeID returns an attribute KeyValue conforming to the "vcs.change.id"// semantic conventions. It represents the ID of the change (pull request/merge// request/changelist) if applicable. This is usually a unique (within// repository) identifier generated by the VCS system.func ( string) attribute.KeyValue {return VCSChangeIDKey.String()}// VCSChangeTitle returns an attribute KeyValue conforming to the// "vcs.change.title" semantic conventions. It represents the human readable// title of the change (pull request/merge request/changelist). This title is// often a brief summary of the change and may get merged in to a ref as the// commit summary.func ( string) attribute.KeyValue {return VCSChangeTitleKey.String()}// VCSOwnerName returns an attribute KeyValue conforming to the "vcs.owner.name"// semantic conventions. It represents the group owner within the version control// system.func ( string) attribute.KeyValue {return VCSOwnerNameKey.String()}// VCSRefBaseName returns an attribute KeyValue conforming to the// "vcs.ref.base.name" semantic conventions. It represents the name of the// [reference] such as **branch** or **tag** in the repository.//// [reference]: https://git-scm.com/docs/gitglossary#def_reffunc ( string) attribute.KeyValue {return VCSRefBaseNameKey.String()}// VCSRefBaseRevision returns an attribute KeyValue conforming to the// "vcs.ref.base.revision" semantic conventions. It represents the revision,// literally [revised version], The revision most often refers to a commit object// in Git, or a revision number in SVN.//// [revised version]: https://www.merriam-webster.com/dictionary/revisionfunc ( string) attribute.KeyValue {return VCSRefBaseRevisionKey.String()}// VCSRefHeadName returns an attribute KeyValue conforming to the// "vcs.ref.head.name" semantic conventions. It represents the name of the// [reference] such as **branch** or **tag** in the repository.//// [reference]: https://git-scm.com/docs/gitglossary#def_reffunc ( string) attribute.KeyValue {return VCSRefHeadNameKey.String()}// VCSRefHeadRevision returns an attribute KeyValue conforming to the// "vcs.ref.head.revision" semantic conventions. It represents the revision,// literally [revised version], The revision most often refers to a commit object// in Git, or a revision number in SVN.//// [revised version]: https://www.merriam-webster.com/dictionary/revisionfunc ( string) attribute.KeyValue {return VCSRefHeadRevisionKey.String()}// VCSRepositoryName returns an attribute KeyValue conforming to the// "vcs.repository.name" semantic conventions. It represents the human readable// name of the repository. It SHOULD NOT include any additional identifier like// Group/SubGroup in GitLab or organization in GitHub.func ( string) attribute.KeyValue {return VCSRepositoryNameKey.String()}// VCSRepositoryURLFull returns an attribute KeyValue conforming to the// "vcs.repository.url.full" semantic conventions. It represents the// [canonical URL] of the repository providing the complete HTTP(S) address in// order to locate and identify the repository through a browser.//// [canonical URL]: https://support.google.com/webmasters/answer/10347851?hl=en#:~:text=A%20canonical%20URL%20is%20the,Google%20chooses%20one%20as%20canonical.func ( string) attribute.KeyValue {return VCSRepositoryURLFullKey.String()}// Enum values for vcs.change.statevar (// Open means the change is currently active and under review. It hasn't been// merged into the target branch yet, and it's still possible to make changes or// add comments.// Stability: developmentVCSChangeStateOpen = VCSChangeStateKey.String("open")// WIP (work-in-progress, draft) means the change is still in progress and not// yet ready for a full review. It might still undergo significant changes.// Stability: developmentVCSChangeStateWip = VCSChangeStateKey.String("wip")// Closed means the merge request has been closed without merging. This can// happen for various reasons, such as the changes being deemed unnecessary, the// issue being resolved in another way, or the author deciding to withdraw the// request.// Stability: developmentVCSChangeStateClosed = VCSChangeStateKey.String("closed")// Merged indicates that the change has been successfully integrated into the// target codebase.// Stability: developmentVCSChangeStateMerged = VCSChangeStateKey.String("merged"))// Enum values for vcs.line_change.typevar (// How many lines were added.// Stability: developmentVCSLineChangeTypeAdded = VCSLineChangeTypeKey.String("added")// How many lines were removed.// Stability: developmentVCSLineChangeTypeRemoved = VCSLineChangeTypeKey.String("removed"))// Enum values for vcs.provider.namevar (// [GitHub]// Stability: development//// [GitHub]: https://github.comVCSProviderNameGithub = VCSProviderNameKey.String("github")// [GitLab]// Stability: development//// [GitLab]: https://gitlab.comVCSProviderNameGitlab = VCSProviderNameKey.String("gitlab")// [Gitea]// Stability: development//// [Gitea]: https://gitea.ioVCSProviderNameGitea = VCSProviderNameKey.String("gitea")// [Bitbucket]// Stability: development//// [Bitbucket]: https://bitbucket.orgVCSProviderNameBitbucket = VCSProviderNameKey.String("bitbucket"))// Enum values for vcs.ref.base.typevar (// [branch]// Stability: development//// [branch]: https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddefbranchabranchVCSRefBaseTypeBranch = VCSRefBaseTypeKey.String("branch")// [tag]// Stability: development//// [tag]: https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddeftagatagVCSRefBaseTypeTag = VCSRefBaseTypeKey.String("tag"))// Enum values for vcs.ref.head.typevar (// [branch]// Stability: development//// [branch]: https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddefbranchabranchVCSRefHeadTypeBranch = VCSRefHeadTypeKey.String("branch")// [tag]// Stability: development//// [tag]: https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddeftagatagVCSRefHeadTypeTag = VCSRefHeadTypeKey.String("tag"))// Enum values for vcs.ref.typevar (// [branch]// Stability: development//// [branch]: https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddefbranchabranchVCSRefTypeBranch = VCSRefTypeKey.String("branch")// [tag]// Stability: development//// [tag]: https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddeftagatagVCSRefTypeTag = VCSRefTypeKey.String("tag"))// Enum values for vcs.revision_delta.directionvar (// How many revisions the change is behind the target ref.// Stability: developmentVCSRevisionDeltaDirectionBehind = VCSRevisionDeltaDirectionKey.String("behind")// How many revisions the change is ahead of the target ref.// Stability: developmentVCSRevisionDeltaDirectionAhead = VCSRevisionDeltaDirectionKey.String("ahead"))// Namespace: webengineconst (// WebEngineDescriptionKey is the attribute Key conforming to the// "webengine.description" semantic conventions. It represents the additional// description of the web engine (e.g. detailed version and edition// information).//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "WildFly Full 21.0.0.Final (WildFly Core 13.0.1.Final) -// 2.2.2.Final"WebEngineDescriptionKey = attribute.Key("webengine.description")// WebEngineNameKey is the attribute Key conforming to the "webengine.name"// semantic conventions. It represents the name of the web engine.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "WildFly"WebEngineNameKey = attribute.Key("webengine.name")// WebEngineVersionKey is the attribute Key conforming to the// "webengine.version" semantic conventions. It represents the version of the// web engine.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "21.0.0"WebEngineVersionKey = attribute.Key("webengine.version"))// WebEngineDescription returns an attribute KeyValue conforming to the// "webengine.description" semantic conventions. It represents the additional// description of the web engine (e.g. detailed version and edition information).func ( string) attribute.KeyValue {return WebEngineDescriptionKey.String()}// WebEngineName returns an attribute KeyValue conforming to the "webengine.name"// semantic conventions. It represents the name of the web engine.func ( string) attribute.KeyValue {return WebEngineNameKey.String()}// WebEngineVersion returns an attribute KeyValue conforming to the// "webengine.version" semantic conventions. It represents the version of the web// engine.func ( string) attribute.KeyValue {return WebEngineVersionKey.String()}// Namespace: zosconst (// ZOSSmfIDKey is the attribute Key conforming to the "zos.smf.id" semantic// conventions. It represents the System Management Facility (SMF) Identifier// uniquely identified a z/OS system within a SYSPLEX or mainframe environment// and is used for system and performance analysis.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "SYS1"ZOSSmfIDKey = attribute.Key("zos.smf.id")// ZOSSysplexNameKey is the attribute Key conforming to the "zos.sysplex.name"// semantic conventions. It represents the name of the SYSPLEX to which the z/OS// system belongs too.//// Type: string// RequirementLevel: Recommended// Stability: Development//// Examples: "SYSPLEX1"ZOSSysplexNameKey = attribute.Key("zos.sysplex.name"))// ZOSSmfID returns an attribute KeyValue conforming to the "zos.smf.id" semantic// conventions. It represents the System Management Facility (SMF) Identifier// uniquely identified a z/OS system within a SYSPLEX or mainframe environment// and is used for system and performance analysis.func ( string) attribute.KeyValue {return ZOSSmfIDKey.String()}// ZOSSysplexName returns an attribute KeyValue conforming to the// "zos.sysplex.name" semantic conventions. It represents the name of the SYSPLEX// to which the z/OS system belongs too.func ( string) attribute.KeyValue {return ZOSSysplexNameKey.String()}
![]() |
The pages are generated with Golds v0.8.2. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |