opentelemetry-semantic_conventions 1.42.0 → 1.44.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/lib/opentelemetry/semantic_conventions/version.rb +2 -2
  4. data/lib/opentelemetry/semconv/client/attributes.rb +1 -1
  5. data/lib/opentelemetry/semconv/code/attributes.rb +1 -1
  6. data/lib/opentelemetry/semconv/container/attributes.rb +1 -1
  7. data/lib/opentelemetry/semconv/db/attributes.rb +23 -2
  8. data/lib/opentelemetry/semconv/incubating/android/attributes.rb +1 -1
  9. data/lib/opentelemetry/semconv/incubating/app/attributes.rb +1 -1
  10. data/lib/opentelemetry/semconv/incubating/artifact/attributes.rb +3 -3
  11. data/lib/opentelemetry/semconv/incubating/azure/attributes.rb +5 -0
  12. data/lib/opentelemetry/semconv/incubating/browser/attributes.rb +30 -0
  13. data/lib/opentelemetry/semconv/incubating/cicd/attributes.rb +16 -16
  14. data/lib/opentelemetry/semconv/incubating/cicd/metrics.rb +5 -5
  15. data/lib/opentelemetry/semconv/incubating/client/attributes.rb +1 -1
  16. data/lib/opentelemetry/semconv/incubating/cloud/attributes.rb +2 -0
  17. data/lib/opentelemetry/semconv/incubating/cloudfoundry/attributes.rb +1 -1
  18. data/lib/opentelemetry/semconv/incubating/code/attributes.rb +1 -1
  19. data/lib/opentelemetry/semconv/incubating/container/attributes.rb +3 -3
  20. data/lib/opentelemetry/semconv/incubating/container/metrics.rb +23 -12
  21. data/lib/opentelemetry/semconv/incubating/db/attributes.rb +30 -4
  22. data/lib/opentelemetry/semconv/incubating/deployment/attributes.rb +1 -1
  23. data/lib/opentelemetry/semconv/incubating/destination/attributes.rb +1 -1
  24. data/lib/opentelemetry/semconv/incubating/disk/attributes.rb +1 -1
  25. data/lib/opentelemetry/semconv/incubating/file/attributes.rb +3 -3
  26. data/lib/opentelemetry/semconv/incubating/host/attributes.rb +1 -1
  27. data/lib/opentelemetry/semconv/incubating/k8s/attributes.rb +16 -16
  28. data/lib/opentelemetry/semconv/incubating/k8s/metrics.rb +59 -19
  29. data/lib/opentelemetry/semconv/incubating/log/attributes.rb +2 -2
  30. data/lib/opentelemetry/semconv/incubating/mcp/attributes.rb +1 -1
  31. data/lib/opentelemetry/semconv/incubating/messaging/attributes.rb +13 -6
  32. data/lib/opentelemetry/semconv/incubating/network/attributes.rb +6 -6
  33. data/lib/opentelemetry/semconv/incubating/oracle/attributes.rb +6 -6
  34. data/lib/opentelemetry/semconv/incubating/otel/metrics.rb +20 -7
  35. data/lib/opentelemetry/semconv/incubating/pprof/attributes.rb +2 -2
  36. data/lib/opentelemetry/semconv/incubating/process/metrics.rb +28 -13
  37. data/lib/opentelemetry/semconv/incubating/rpc/attributes.rb +1 -3
  38. data/lib/opentelemetry/semconv/incubating/server/attributes.rb +1 -1
  39. data/lib/opentelemetry/semconv/incubating/session/attributes.rb +1 -1
  40. data/lib/opentelemetry/semconv/incubating/source/attributes.rb +1 -1
  41. data/lib/opentelemetry/semconv/incubating/system/attributes.rb +1 -1
  42. data/lib/opentelemetry/semconv/incubating/system/metrics.rb +11 -2
  43. data/lib/opentelemetry/semconv/incubating/url/attributes.rb +3 -3
  44. data/lib/opentelemetry/semconv/incubating/vcs/attributes.rb +16 -16
  45. data/lib/opentelemetry/semconv/incubating/vcs/metrics.rb +8 -8
  46. data/lib/opentelemetry/semconv/k8s/attributes.rb +16 -16
  47. data/lib/opentelemetry/semconv/network/attributes.rb +2 -2
  48. data/lib/opentelemetry/semconv/server/attributes.rb +1 -1
  49. metadata +5 -5
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dc7a3272858c8f6b81b0bf6fe79daaf2dbe86ea9998cdf8d9de9931ae39f8a78
4
- data.tar.gz: 55c64947141573ee3c72b2e563c98aab71d84bf86a50076513da34ab552cf299
3
+ metadata.gz: 83a4fe1eefc8216b24d3c38fc0a6705987c5829681456ae0d84457f0f0d20e63
4
+ data.tar.gz: '0398ac350966985307a2987f9a5de63542b132afb7409ca013c2faf36a14f4d8'
5
5
  SHA512:
6
- metadata.gz: 581dc30386c954d919f3cb0ea205b2230f11e78035b92e68b6e79ebea143aa791aeab0f8c16f15730f92140f4f17e45b6189620839c0813f6022ae9c1d14eabc
7
- data.tar.gz: ad1f871f3bfae12f3ab40f86ba999c8e759d1e16304c68353c52ab8da6abca50c58f9c46ecfb38189fc8128210309651a45133124906e65a0e32f1466717823a
6
+ metadata.gz: 97fcd773f881a7489754145cebb68531a0ad94443e532127d0332d1ea08adea0a820ed3bd9965917734c9eedb1e5587f4ee2a3421214754aca2b6539838b5592
7
+ data.tar.gz: a9b7ef0a6a9bee697f0b13cd5658d8970742f26052dab4326e47d10a48785c51e7953a3cd01526b7f9d4966a7712a8ab01ba97425680558cdebda5242f7fc511
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Release History: opentelemetry-semantic_conventions
2
2
 
3
+ ### v1.44.0 / 2026-08-07
4
+
5
+ * ADDED: Update dependency open-telemetry/semantic-conventions to v1.44.0 (#2279)
6
+
7
+ ### v1.43.0 / 2026-07-08
8
+
9
+ * ADDED: Update dependency open-telemetry/semantic-conventions to v1.43.0 (#2218)
10
+
3
11
  ### v1.42.0 / 2026-07-07
4
12
 
5
13
  * ADDED: Autoload namespaces so a single require exposes all constants (#2204)
@@ -7,8 +7,8 @@
7
7
  module OpenTelemetry
8
8
  module SemanticConventions
9
9
  # Version of the OpenTelemetry Semantic Conventions from which this library was generated.
10
- SPEC_VERSION = '1.42.0'
10
+ SPEC_VERSION = '1.44.0'
11
11
  # Release version of this gem. May not match SPEC_VERSION until gem is released after a spec update.
12
- VERSION = '1.42.0'
12
+ VERSION = '1.44.0'
13
13
  end
14
14
  end
@@ -23,7 +23,7 @@ module OpenTelemetry
23
23
  module CLIENT
24
24
  # @!group Attribute Names
25
25
 
26
- # Client address - domain name if available without reverse DNS lookup; otherwise, IP address or Unix domain socket name.
26
+ # Client address - domain name if available without reverse DNS lookup; otherwise, IP address or UNIX domain socket name.
27
27
  #
28
28
  # 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.
29
29
  #
@@ -28,7 +28,7 @@ module OpenTelemetry
28
28
  # @note Stability Level: stable
29
29
  CODE_COLUMN_NUMBER = 'code.column.number'
30
30
 
31
- # 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.
31
+ # The source code filename 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.
32
32
  #
33
33
  # @note Stability Level: stable
34
34
  CODE_FILE_PATH = 'code.file.path'
@@ -33,7 +33,7 @@ module OpenTelemetry
33
33
  # @note Stability Level: stable
34
34
  CONTAINER_IMAGE_NAME = 'container.image.name'
35
35
 
36
- # Repo digests of the container image as provided by the container runtime.
36
+ # Repository digests of the container image as provided by the container runtime.
37
37
  #
38
38
  # [Docker](https://docs.docker.com/reference/api/engine/version/v1.52/#tag/Image/operation/ImageInspect) and [CRI](https://github.com/kubernetes/cri-api/blob/c75ef5b473bbe2d0a4fc92f82235efd665ea8e9f/pkg/apis/runtime/v1/api.proto#L1237-L1238) report those under the `RepoDigests` field.
39
39
  #
@@ -47,9 +47,30 @@ module OpenTelemetry
47
47
  # @note Stability Level: stable
48
48
  DB_NAMESPACE = 'db.namespace'
49
49
 
50
- # The number of queries included in a batch operation.
50
+ # The number of database operations included in a batch operation.
51
51
  #
52
- # Operations are only considered batches when they contain two or more operations, and so `db.operation.batch.size` SHOULD never be `1`.
52
+ # Except for empty batch requests described below, a batch operation contains two
53
+ # or more database operations explicitly submitted as separate operations in a single
54
+ # client call, protocol message, or database command.
55
+ #
56
+ # Requests to batch APIs that contain only one operation SHOULD be modeled as single
57
+ # operations, not as batch operations.
58
+ #
59
+ # A database call is not a batch operation solely because one operation accepts
60
+ # multiple operands, such as keys, rows, documents, points, or other data elements,
61
+ # including Redis [`MGET`](https://redis.io/docs/latest/commands/mget/) with
62
+ # multiple keys.
63
+ #
64
+ # In batch APIs that execute the same parameterized operation with parameter sets,
65
+ # each parameter set represents one database operation for determining whether the
66
+ # request is a batch operation. Requests with only one parameter set SHOULD be modeled
67
+ # as single operations, not as batch operations.
68
+ #
69
+ # `db.operation.batch.size` SHOULD be set to the number of operations in the batch.
70
+ # It SHOULD NOT be set for non-batch operations.
71
+ #
72
+ # A request to execute a batch operation with no operations SHOULD also be treated
73
+ # as a batch operation, and `db.operation.batch.size` SHOULD be set to `0`.
53
74
  #
54
75
  # @note Stability Level: stable
55
76
  DB_OPERATION_BATCH_SIZE = 'db.operation.batch.size'
@@ -31,7 +31,7 @@ module OpenTelemetry
31
31
  # @note Stability Level: development
32
32
  ANDROID_APP_STATE = 'android.app.state'
33
33
 
34
- # 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](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels).
34
+ # 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](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels).
35
35
  #
36
36
  # @note Stability Level: development
37
37
  ANDROID_OS_API_LEVEL = 'android.os.api_level'
@@ -29,7 +29,7 @@ module OpenTelemetry
29
29
  # @note Stability Level: development
30
30
  APP_BUILD_ID = 'app.build_id'
31
31
 
32
- # A unique identifier representing an instance of an end-user facing app crash.
32
+ # A unique identifier representing an instance of an end user facing app crash.
33
33
  #
34
34
  # Its value MAY be meaningful and be used as a reference for telemetry and metadata recorded by
35
35
  # the same instrumentation (e.g. it is an ID generated by an external source that captured the crash).
@@ -34,14 +34,14 @@ module OpenTelemetry
34
34
  # @note Stability Level: development
35
35
  ARTIFACT_ATTESTATION_HASH = 'artifact.attestation.hash'
36
36
 
37
- # The id of the build [software attestation](https://slsa.dev/attestation-model).
37
+ # The ID of the build [software attestation](https://slsa.dev/attestation-model).
38
38
  #
39
39
  # @note Stability Level: development
40
40
  ARTIFACT_ATTESTATION_ID = 'artifact.attestation.id'
41
41
 
42
- # 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.
42
+ # The human readable filename of the artifact, typically generated during build and release processes. Often includes the package name and version in the filename.
43
43
  #
44
- # This file name can also act as the [Package Name](https://slsa.dev/spec/v1.0/terminology#package-model)
44
+ # This filename can also act as the [Package Name](https://slsa.dev/spec/v1.0/terminology#package-model)
45
45
  # in cases where the package ecosystem maps accordingly.
46
46
  # Additionally, the artifact [can be published](https://slsa.dev/spec/v1.0/terminology#software-supply-chain)
47
47
  # for others, but that is not a guarantee.
@@ -61,6 +61,11 @@ module OpenTelemetry
61
61
  # @note Stability Level: development
62
62
  AZURE_COSMOSDB_RESPONSE_SUB_STATUS_CODE = 'azure.cosmosdb.response.sub_status_code'
63
63
 
64
+ # The name of the Azure [resource group](https://learn.microsoft.com/azure/azure-resource-manager/management/manage-resource-groups-portal) the resource belongs to.
65
+ #
66
+ # @note Stability Level: development
67
+ AZURE_RESOURCE_GROUP_NAME = 'azure.resource_group.name'
68
+
64
69
  # [Azure Resource Provider Namespace](https://learn.microsoft.com/azure/azure-resource-manager/management/azure-services-resource-providers) as recognized by the client.
65
70
  #
66
71
  # @note Stability Level: development
@@ -58,6 +58,36 @@ module OpenTelemetry
58
58
  # @note Stability Level: development
59
59
  BROWSER_PLATFORM = 'browser.platform'
60
60
 
61
+ # The delta between the current value and the last-reported value. See [delta](https://github.com/GoogleChrome/web-vitals?tab=readme-ov-file#report-only-the-delta-of-changes).
62
+ #
63
+ # @note Stability Level: development
64
+ BROWSER_WEB_VITAL_DELTA = 'browser.web_vital.delta'
65
+
66
+ # A unique ID representing this particular metric instance.
67
+ #
68
+ # @note Stability Level: development
69
+ BROWSER_WEB_VITAL_ID = 'browser.web_vital.id'
70
+
71
+ # Name of the web vital.
72
+ #
73
+ # @note Stability Level: development
74
+ BROWSER_WEB_VITAL_NAME = 'browser.web_vital.name'
75
+
76
+ # The type of navigation, as reported by the [Navigation Timing API](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/type), with additional values reported by the web-vitals library.
77
+ #
78
+ # @note Stability Level: development
79
+ BROWSER_WEB_VITAL_NAVIGATION_TYPE = 'browser.web_vital.navigation_type'
80
+
81
+ # The rating of the web vital value against the "good", "needs improvement", and "poor" thresholds defined for the metric.
82
+ #
83
+ # @note Stability Level: development
84
+ BROWSER_WEB_VITAL_RATING = 'browser.web_vital.rating'
85
+
86
+ # Value of the web vital.
87
+ #
88
+ # @note Stability Level: development
89
+ BROWSER_WEB_VITAL_VALUE = 'browser.web_vital.value'
90
+
61
91
  # @!endgroup
62
92
  end
63
93
  end
@@ -26,84 +26,84 @@ module OpenTelemetry
26
26
 
27
27
  # The kind of action a pipeline run is performing.
28
28
  #
29
- # @note Stability Level: development
29
+ # @note Stability Level: release_candidate
30
30
  CICD_PIPELINE_ACTION_NAME = 'cicd.pipeline.action.name'
31
31
 
32
32
  # The human readable name of the pipeline within a CI/CD system.
33
33
  #
34
- # @note Stability Level: development
34
+ # @note Stability Level: release_candidate
35
35
  CICD_PIPELINE_NAME = 'cicd.pipeline.name'
36
36
 
37
37
  # The result of a pipeline run.
38
38
  #
39
- # @note Stability Level: development
39
+ # @note Stability Level: release_candidate
40
40
  CICD_PIPELINE_RESULT = 'cicd.pipeline.result'
41
41
 
42
42
  # The unique identifier of a pipeline run within a CI/CD system.
43
43
  #
44
- # @note Stability Level: development
44
+ # @note Stability Level: release_candidate
45
45
  CICD_PIPELINE_RUN_ID = 'cicd.pipeline.run.id'
46
46
 
47
47
  # The pipeline run goes through these states during its lifecycle.
48
48
  #
49
- # @note Stability Level: development
49
+ # @note Stability Level: release_candidate
50
50
  CICD_PIPELINE_RUN_STATE = 'cicd.pipeline.run.state'
51
51
 
52
52
  # The [URL](https://wikipedia.org/wiki/URL) of the pipeline run, providing the complete address in order to locate and identify the pipeline run.
53
53
  #
54
- # @note Stability Level: development
54
+ # @note Stability Level: release_candidate
55
55
  CICD_PIPELINE_RUN_URL_FULL = 'cicd.pipeline.run.url.full'
56
56
 
57
57
  # The human readable name of a task within a pipeline. Task here most closely aligns with a [computing process](https://wikipedia.org/wiki/Pipeline_(computing)) in a pipeline. Other terms for tasks include commands, steps, and procedures.
58
58
  #
59
- # @note Stability Level: development
59
+ # @note Stability Level: release_candidate
60
60
  CICD_PIPELINE_TASK_NAME = 'cicd.pipeline.task.name'
61
61
 
62
62
  # The unique identifier of a task run within a pipeline.
63
63
  #
64
64
  # For a given pipeline run and task, the `cicd.pipeline.task.run.id` MUST be unique within that run. For the same task across different runs of the same pipeline, the `cicd.pipeline.task.run.id` MAY remain the same, enabling correlation of `cicd.pipeline.task.run.result` values across multiple pipeline runs.
65
65
  #
66
- # @note Stability Level: development
66
+ # @note Stability Level: release_candidate
67
67
  CICD_PIPELINE_TASK_RUN_ID = 'cicd.pipeline.task.run.id'
68
68
 
69
69
  # The result of a task run.
70
70
  #
71
- # @note Stability Level: development
71
+ # @note Stability Level: release_candidate
72
72
  CICD_PIPELINE_TASK_RUN_RESULT = 'cicd.pipeline.task.run.result'
73
73
 
74
74
  # The [URL](https://wikipedia.org/wiki/URL) of the pipeline task run, providing the complete address in order to locate and identify the pipeline task run.
75
75
  #
76
- # @note Stability Level: development
76
+ # @note Stability Level: release_candidate
77
77
  CICD_PIPELINE_TASK_RUN_URL_FULL = 'cicd.pipeline.task.run.url.full'
78
78
 
79
79
  # The type of the task within a pipeline.
80
80
  #
81
- # @note Stability Level: development
81
+ # @note Stability Level: release_candidate
82
82
  CICD_PIPELINE_TASK_TYPE = 'cicd.pipeline.task.type'
83
83
 
84
84
  # The name of a component of the CI/CD system.
85
85
  #
86
- # @note Stability Level: development
86
+ # @note Stability Level: release_candidate
87
87
  CICD_SYSTEM_COMPONENT = 'cicd.system.component'
88
88
 
89
89
  # The unique identifier of a worker within a CI/CD system.
90
90
  #
91
- # @note Stability Level: development
91
+ # @note Stability Level: release_candidate
92
92
  CICD_WORKER_ID = 'cicd.worker.id'
93
93
 
94
94
  # The name of a worker within a CI/CD system.
95
95
  #
96
- # @note Stability Level: development
96
+ # @note Stability Level: release_candidate
97
97
  CICD_WORKER_NAME = 'cicd.worker.name'
98
98
 
99
99
  # The state of a CI/CD worker / agent.
100
100
  #
101
- # @note Stability Level: development
101
+ # @note Stability Level: release_candidate
102
102
  CICD_WORKER_STATE = 'cicd.worker.state'
103
103
 
104
104
  # The [URL](https://wikipedia.org/wiki/URL) of the worker, providing the complete address in order to locate and identify the worker.
105
105
  #
106
- # @note Stability Level: development
106
+ # @note Stability Level: release_candidate
107
107
  CICD_WORKER_URL_FULL = 'cicd.worker.url.full'
108
108
 
109
109
  # @!endgroup
@@ -26,12 +26,12 @@ module OpenTelemetry
26
26
 
27
27
  # The number of pipeline runs currently active in the system by state.
28
28
  #
29
- # @note Stability Level: development
29
+ # @note Stability Level: release_candidate
30
30
  CICD_PIPELINE_RUN_ACTIVE = 'cicd.pipeline.run.active'
31
31
 
32
32
  # Duration of a pipeline run grouped by pipeline, state and result.
33
33
  #
34
- # @note Stability Level: development
34
+ # @note Stability Level: release_candidate
35
35
  CICD_PIPELINE_RUN_DURATION = 'cicd.pipeline.run.duration'
36
36
 
37
37
  # The number of errors encountered in pipeline runs (eg. compile, test failures).
@@ -39,19 +39,19 @@ module OpenTelemetry
39
39
  # There might be errors in a pipeline run that are non fatal (eg. they are suppressed) or in a parallel stage multiple stages could have a fatal error.
40
40
  # This means that this error count might not be the same as the count of metric `cicd.pipeline.run.duration` with run result `failure`.
41
41
  #
42
- # @note Stability Level: development
42
+ # @note Stability Level: release_candidate
43
43
  CICD_PIPELINE_RUN_ERRORS = 'cicd.pipeline.run.errors'
44
44
 
45
45
  # The number of errors in a component of the CI/CD system (eg. controller, scheduler, agent).
46
46
  #
47
47
  # Errors in pipeline run execution are explicitly excluded. Ie a test failure is not counted in this metric.
48
48
  #
49
- # @note Stability Level: development
49
+ # @note Stability Level: release_candidate
50
50
  CICD_SYSTEM_ERRORS = 'cicd.system.errors'
51
51
 
52
52
  # The number of workers on the CI/CD system by state.
53
53
  #
54
- # @note Stability Level: development
54
+ # @note Stability Level: release_candidate
55
55
  CICD_WORKER_COUNT = 'cicd.worker.count'
56
56
 
57
57
  # @!endgroup
@@ -24,7 +24,7 @@ module OpenTelemetry
24
24
  module CLIENT
25
25
  # @!group Attribute Names
26
26
 
27
- # Client address - domain name if available without reverse DNS lookup; otherwise, IP address or Unix domain socket name.
27
+ # Client address - domain name if available without reverse DNS lookup; otherwise, IP address or UNIX domain socket name.
28
28
  #
29
29
  # 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.
30
30
  #
@@ -26,6 +26,8 @@ module OpenTelemetry
26
26
 
27
27
  # The cloud account ID the resource is assigned to.
28
28
  #
29
+ # For Azure, this is the subscription ID.
30
+ #
29
31
  # @note Stability Level: development
30
32
  CLOUD_ACCOUNT_ID = 'cloud.account.id'
31
33
 
@@ -129,7 +129,7 @@ module OpenTelemetry
129
129
  #
130
130
  # CloudFoundry defines the `instance_id` in the [Loggregator v2 envelope](https://github.com/cloudfoundry/loggregator-api#v2-envelope).
131
131
  # It is used for logs and metrics emitted by CloudFoundry. It is
132
- # supposed to contain the vm id for CloudFoundry components.
132
+ # supposed to contain the vm ID for CloudFoundry components.
133
133
  #
134
134
  # When system components are instrumented, values from the
135
135
  # [Bosh spec](https://bosh.io/docs/jobs/#properties-spec)
@@ -37,7 +37,7 @@ module OpenTelemetry
37
37
  # @deprecated Now available in the stable namespace at {OpenTelemetry::SemConv::CODE::CODE_COLUMN_NUMBER}.
38
38
  CODE_COLUMN_NUMBER = 'code.column.number'
39
39
 
40
- # 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.
40
+ # The source code filename 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.
41
41
  #
42
42
  # @note Stability Level: stable
43
43
  #
@@ -70,7 +70,7 @@ module OpenTelemetry
70
70
 
71
71
  # Runtime specific image identifier. Usually a hash algorithm followed by a UUID.
72
72
  #
73
- # Docker defines a sha256 of the image id; `container.image.id` corresponds to the `Image` field from the Docker container inspect [API](https://docs.docker.com/reference/api/engine/version/v1.52/#tag/Container/operation/ContainerInspect) endpoint.
73
+ # Docker defines a sha256 of the image ID; `container.image.id` corresponds to the `Image` field from the Docker container inspect [API](https://docs.docker.com/reference/api/engine/version/v1.52/#tag/Container/operation/ContainerInspect) endpoint.
74
74
  # K8s defines a link to the container registry repository with digest `"imageID": "registry.azurecr.io /namespace/service/dockerfile@sha256:bdeabd40c3a8a492eaf9e8e44d0ebbb84bac7ee25ac0cf8a7159d25f62555625"`.
75
75
  # 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.
76
76
  #
@@ -84,7 +84,7 @@ module OpenTelemetry
84
84
  # @deprecated Now available in the stable namespace at {OpenTelemetry::SemConv::CONTAINER::CONTAINER_IMAGE_NAME}.
85
85
  CONTAINER_IMAGE_NAME = 'container.image.name'
86
86
 
87
- # Repo digests of the container image as provided by the container runtime.
87
+ # Repository digests of the container image as provided by the container runtime.
88
88
  #
89
89
  # [Docker](https://docs.docker.com/reference/api/engine/version/v1.52/#tag/Image/operation/ImageInspect) and [CRI](https://github.com/kubernetes/cri-api/blob/c75ef5b473bbe2d0a4fc92f82235efd665ea8e9f/pkg/apis/runtime/v1/api.proto#L1237-L1238) report those under the `RepoDigests` field.
90
90
  #
@@ -108,7 +108,7 @@ module OpenTelemetry
108
108
  #
109
109
  # Container labels, `<key>` being the label name, the value being the label value.
110
110
  #
111
- # For example, a docker container label `app` with value `nginx` SHOULD be recorded as the `container.label.app` attribute with value `"nginx"`.
111
+ # For example, a Docker container label `app` with value `nginx` SHOULD be recorded as the `container.label.app` attribute with value `"nginx"`.
112
112
  #
113
113
  # @note Stability Level: development
114
114
  CONTAINER_LABEL_LAMBDA = ->(key) { "container.label.#{key}" }
@@ -24,16 +24,16 @@ module OpenTelemetry
24
24
  module CONTAINER
25
25
  # @!group Metrics Names
26
26
 
27
- # CPU time consumed.
27
+ # Total CPU time consumed.
28
28
  #
29
29
  # CPU time consumed by the specific container on all available CPU cores
30
30
  #
31
31
  # @note Stability Level: release_candidate
32
32
  CONTAINER_CPU_TIME = 'container.cpu.time'
33
33
 
34
- # Container's CPU usage, measured in cpus. Range from 0 to the number of allocatable CPUs.
34
+ # Container's CPU usage, measured in CPUs. Range from 0 to the number of allocatable CPUs.
35
35
  #
36
- # CPU usage of the specific container on all available CPU cores, averaged over the sample window
36
+ # CPU usage of the specific container on all available CPU cores. It is calculated as the change in cumulative CPU time (container.cpu.time) over a measurement interval, divided by the elapsed time: usageCores = (cpuTimeEnd - cpuTimeStart) / elapsedSeconds
37
37
  #
38
38
  # @note Stability Level: development
39
39
  CONTAINER_CPU_USAGE = 'container.cpu.usage'
@@ -81,40 +81,43 @@ module OpenTelemetry
81
81
  #
82
82
  # Available memory for use. This is defined as the memory limit - workingSetBytes. If memory limit is undefined, the available bytes is omitted.
83
83
  # In general, this metric can be derived from [cadvisor](https://github.com/google/cadvisor/blob/v0.53.0/docs/storage/prometheus.md#prometheus-container-metrics) and by subtracting the `container_memory_working_set_bytes` metric from the `container_spec_memory_limit_bytes` metric.
84
- # In K8s, this metric is derived from the [MemoryStats.AvailableBytes](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#MemoryStats) field of the [PodStats.Memory](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#PodStats) of the Kubelet's stats API.
84
+ # In K8s, this metric is derived from the [MemoryStats.AvailableBytes](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#MemoryStats) field of the [ContainerStats.Memory](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#ContainerStats) of the Kubelet's stats API.
85
85
  #
86
- # @note Stability Level: development
86
+ # @note Stability Level: release_candidate
87
87
  CONTAINER_MEMORY_AVAILABLE = 'container.memory.available'
88
88
 
89
- # Container memory paging faults.
89
+ # Deprecated, use `container.paging.faults` instead.
90
90
  #
91
91
  # In general, this metric can be derived from [cadvisor](https://github.com/google/cadvisor/blob/v0.53.0/docs/storage/prometheus.md#prometheus-container-metrics) and specifically the `container_memory_failures_total{failure_type=pgfault, scope=container}` and `container_memory_failures_total{failure_type=pgmajfault, scope=container}`metric.
92
92
  # In K8s, this metric is derived from the [MemoryStats.PageFaults](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#MemoryStats) and [MemoryStats.MajorPageFaults](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#MemoryStats) field of the [PodStats.Memory](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#PodStats) of the Kubelet's stats API.
93
93
  #
94
94
  # @note Stability Level: development
95
+ # @deprecated Replaced by `container.paging.faults`.
95
96
  CONTAINER_MEMORY_PAGING_FAULTS = 'container.memory.paging.faults'
96
97
 
97
98
  # Container memory RSS.
98
99
  #
99
100
  # In general, this metric can be derived from [cadvisor](https://github.com/google/cadvisor/blob/v0.53.0/docs/storage/prometheus.md#prometheus-container-metrics) and specifically the `container_memory_rss` metric.
100
- # In K8s, this metric is derived from the [MemoryStats.RSSBytes](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#MemoryStats) field of the [PodStats.Memory](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#PodStats) of the Kubelet's stats API.
101
+ # In K8s, this metric is derived from the [MemoryStats.RSSBytes](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#MemoryStats) field of the [ContainerStats.Memory](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#ContainerStats) of the Kubelet's stats API.
101
102
  #
102
- # @note Stability Level: development
103
+ # @note Stability Level: release_candidate
103
104
  CONTAINER_MEMORY_RSS = 'container.memory.rss'
104
105
 
105
106
  # Memory usage of the container.
106
107
  #
107
- # Memory usage of the container.
108
+ # Current memory usage, including all memory regardless of when it was accessed.
109
+ # In general, this metric can be derived from [cadvisor](https://github.com/google/cadvisor/blob/v0.53.0/docs/storage/prometheus.md#prometheus-container-metrics) and specifically the `container_memory_usage_bytes` metric.
110
+ # In K8s, this metric is derived from the [MemoryStats.UsageBytes](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#MemoryStats) field of the [ContainerStats.Memory](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#ContainerStats) of the Kubelet's stats API.
108
111
  #
109
- # @note Stability Level: development
112
+ # @note Stability Level: release_candidate
110
113
  CONTAINER_MEMORY_USAGE = 'container.memory.usage'
111
114
 
112
115
  # Container memory working set.
113
116
  #
114
117
  # In general, this metric can be derived from [cadvisor](https://github.com/google/cadvisor/blob/v0.53.0/docs/storage/prometheus.md#prometheus-container-metrics) and specifically the `container_memory_working_set_bytes` metric.
115
- # In K8s, this metric is derived from the [MemoryStats.WorkingSetBytes](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#MemoryStats) field of the [PodStats.Memory](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#PodStats) of the Kubelet's stats API.
118
+ # In K8s, this metric is derived from the [MemoryStats.WorkingSetBytes](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#MemoryStats) field of the [ContainerStats.Memory](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#ContainerStats) of the Kubelet's stats API.
116
119
  #
117
- # @note Stability Level: development
120
+ # @note Stability Level: release_candidate
118
121
  CONTAINER_MEMORY_WORKING_SET = 'container.memory.working_set'
119
122
 
120
123
  # Network bytes for the container.
@@ -124,6 +127,14 @@ module OpenTelemetry
124
127
  # @note Stability Level: development
125
128
  CONTAINER_NETWORK_IO = 'container.network.io'
126
129
 
130
+ # Container memory paging faults.
131
+ #
132
+ # In general, this metric can be derived from [cadvisor](https://github.com/google/cadvisor/blob/v0.53.0/docs/storage/prometheus.md#prometheus-container-metrics) and specifically the `container_memory_failures_total{failure_type=pgfault, scope=container}` and `container_memory_failures_total{failure_type=pgmajfault, scope=container}`metric.
133
+ # In K8s, this metric is derived from the [MemoryStats.PageFaults](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#MemoryStats) and [MemoryStats.MajorPageFaults](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#MemoryStats) field of the [ContainerStats.Memory](https://pkg.go.dev/k8s.io/kubelet@v0.34.0/pkg/apis/stats/v1alpha1#ContainerStats) of the Kubelet's stats API.
134
+ #
135
+ # @note Stability Level: development
136
+ CONTAINER_PAGING_FAULTS = 'container.paging.faults'
137
+
127
138
  # The time the container has been running.
128
139
  #
129
140
  # Instrumentations SHOULD use a gauge with type `double` and measure uptime in seconds as a floating point number with the highest precision available.
@@ -242,9 +242,30 @@ module OpenTelemetry
242
242
  # @deprecated Replaced by `db.operation.name`.
243
243
  DB_OPERATION = 'db.operation'
244
244
 
245
- # The number of queries included in a batch operation.
245
+ # The number of database operations included in a batch operation.
246
246
  #
247
- # Operations are only considered batches when they contain two or more operations, and so `db.operation.batch.size` SHOULD never be `1`.
247
+ # Except for empty batch requests described below, a batch operation contains two
248
+ # or more database operations explicitly submitted as separate operations in a single
249
+ # client call, protocol message, or database command.
250
+ #
251
+ # Requests to batch APIs that contain only one operation SHOULD be modeled as single
252
+ # operations, not as batch operations.
253
+ #
254
+ # A database call is not a batch operation solely because one operation accepts
255
+ # multiple operands, such as keys, rows, documents, points, or other data elements,
256
+ # including Redis [`MGET`](https://redis.io/docs/latest/commands/mget/) with
257
+ # multiple keys.
258
+ #
259
+ # In batch APIs that execute the same parameterized operation with parameter sets,
260
+ # each parameter set represents one database operation for determining whether the
261
+ # request is a batch operation. Requests with only one parameter set SHOULD be modeled
262
+ # as single operations, not as batch operations.
263
+ #
264
+ # `db.operation.batch.size` SHOULD be set to the number of operations in the batch.
265
+ # It SHOULD NOT be set for non-batch operations.
266
+ #
267
+ # A request to execute a batch operation with no operations SHOULD also be treated
268
+ # as a batch operation, and `db.operation.batch.size` SHOULD be set to `0`.
248
269
  #
249
270
  # @note Stability Level: stable
250
271
  #
@@ -305,7 +326,12 @@ module OpenTelemetry
305
326
  # up with the parameterized placeholders present in `db.query.text`.
306
327
  #
307
328
  # It is RECOMMENDED to capture the value as provided by the application
308
- # without attempting to do any case normalization.
329
+ # without attempting to do any case normalization or sanitization.
330
+ #
331
+ # Instrumentations SHOULD NOT capture `db.query.parameter.<key>` by default
332
+ # since values may contain PII or sensitive details.
333
+ # Application operators are expected to enable specific keys depending
334
+ # on their privacy and security considerations.
309
335
  #
310
336
  # `db.query.parameter.<key>` SHOULD NOT be captured on batch operations.
311
337
  #
@@ -355,7 +381,7 @@ module OpenTelemetry
355
381
  # Deprecated, use `db.namespace` instead.
356
382
  #
357
383
  # @note Stability Level: development
358
- # @deprecated Uncategorized.
384
+ # @deprecated Replaced by `db.namespace` (string).
359
385
  DB_REDIS_DATABASE_INDEX = 'db.redis.database_index'
360
386
 
361
387
  # Number of rows returned by the operation.
@@ -45,7 +45,7 @@ module OpenTelemetry
45
45
  # @deprecated Now available in the stable namespace at {OpenTelemetry::SemConv::DEPLOYMENT::DEPLOYMENT_ENVIRONMENT_NAME}.
46
46
  DEPLOYMENT_ENVIRONMENT_NAME = 'deployment.environment.name'
47
47
 
48
- # The id of the deployment.
48
+ # The ID of the deployment.
49
49
  #
50
50
  # @note Stability Level: development
51
51
  DEPLOYMENT_ID = 'deployment.id'
@@ -24,7 +24,7 @@ module OpenTelemetry
24
24
  module DESTINATION
25
25
  # @!group Attribute Names
26
26
 
27
- # Destination address - domain name if available without reverse DNS lookup; otherwise, IP address or Unix domain socket name.
27
+ # Destination address - domain name if available without reverse DNS lookup; otherwise, IP address or UNIX domain socket name.
28
28
  #
29
29
  # 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.
30
30
  #
@@ -26,7 +26,7 @@ module OpenTelemetry
26
26
 
27
27
  # The disk IO operation direction.
28
28
  #
29
- # @note Stability Level: development
29
+ # @note Stability Level: release_candidate
30
30
  DISK_IO_DIRECTION = 'disk.io.direction'
31
31
 
32
32
  # @!endgroup
@@ -59,7 +59,7 @@ module OpenTelemetry
59
59
 
60
60
  # File extension, excluding the leading dot.
61
61
  #
62
- # When the file name has multiple extensions (example.tar.gz), only the last one should be captured ("gz", not "tar.gz").
62
+ # When the filename has multiple extensions (example.tar.gz), only the last one should be captured ("gz", not "tar.gz").
63
63
  #
64
64
  # @note Stability Level: development
65
65
  FILE_EXTENSION = 'file.extension'
@@ -67,7 +67,7 @@ module OpenTelemetry
67
67
  # Name of the fork. A fork is additional data associated with a filesystem object.
68
68
  #
69
69
  # 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.
70
- # 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.
70
+ # 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.
71
71
  #
72
72
  # @note Stability Level: development
73
73
  FILE_FORK_NAME = 'file.fork_name'
@@ -127,7 +127,7 @@ module OpenTelemetry
127
127
  # @note Stability Level: development
128
128
  FILE_OWNER_NAME = 'file.owner.name'
129
129
 
130
- # Full path to the file, including the file name. It should include the drive letter, when appropriate.
130
+ # Full path to the file, including the filename. It should include the drive letter, when appropriate.
131
131
  #
132
132
  # @note Stability Level: development
133
133
  FILE_PATH = 'file.path'
@@ -95,7 +95,7 @@ module OpenTelemetry
95
95
  # @note Stability Level: development
96
96
  HOST_MAC = 'host.mac'
97
97
 
98
- # 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.
98
+ # 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.
99
99
  #
100
100
  # @note Stability Level: development
101
101
  HOST_NAME = 'host.name'