Skip to content

Commit 7324282

Browse files
authored
Merge branch 'main' into accept-non-urlencoded-headers
2 parents 4ceb51d + 2f928a2 commit 7324282

36 files changed

+888
-165
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1818
([#3992](https://github.com/open-telemetry/opentelemetry-python/pull/3992))
1919
- sdk: Accept non URL-encoded headers in `OTEL_EXPORTER_OTLP_*HEADERS` to match other languages SDKs
2020
([#4103](https://github.com/open-telemetry/opentelemetry-python/pull/4103))
21+
- Update semantic conventions to version 1.27.0
22+
([#4104](https://github.com/open-telemetry/opentelemetry-python/pull/4104))
2123

2224
## Version 1.26.0/0.47b0 (2024-07-25)
2325

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# Copyright The OpenTelemetry Authors
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
from typing import Final
16+
17+
ARTIFACT_ATTESTATION_FILENAME: Final = "artifact.attestation.filename"
18+
"""
19+
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](https://slsa.dev/spec/v1.0/distributing-provenance#relationship-between-artifacts-and-attestations) specification for more information.
20+
"""
21+
22+
ARTIFACT_ATTESTATION_HASH: Final = "artifact.attestation.hash"
23+
"""
24+
The full [hash value (see glossary)](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf), of the built attestation. Some envelopes in the software attestation space also refer to this as the [digest](https://github.com/in-toto/attestation/blob/main/spec/README.md#in-toto-attestation-framework-spec).
25+
"""
26+
27+
ARTIFACT_ATTESTATION_ID: Final = "artifact.attestation.id"
28+
"""
29+
The id of the build [software attestation](https://slsa.dev/attestation-model).
30+
"""
31+
32+
ARTIFACT_FILENAME: Final = "artifact.filename"
33+
"""
34+
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.
35+
Note: This file name can also act as the [Package Name](https://slsa.dev/spec/v1.0/terminology#package-model)
36+
in cases where the package ecosystem maps accordingly.
37+
Additionally, the artifact [can be published](https://slsa.dev/spec/v1.0/terminology#software-supply-chain)
38+
for others, but that is not a guarantee.
39+
"""
40+
41+
ARTIFACT_HASH: Final = "artifact.hash"
42+
"""
43+
The full [hash value (see glossary)](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf), often found in checksum.txt on a release of the artifact and used to verify package integrity.
44+
Note: The specific algorithm used to create the cryptographic hash value is
45+
not defined. In situations where an artifact has multiple
46+
cryptographic hashes, it is up to the implementer to choose which
47+
hash value to set here; this should be the most secure hash algorithm
48+
that is suitable for the situation and consistent with the
49+
corresponding attestation. The implementer can then provide the other
50+
hash values through an additional set of attribute extensions as they
51+
deem necessary.
52+
"""
53+
54+
ARTIFACT_PURL: Final = "artifact.purl"
55+
"""
56+
The [Package URL](https://github.com/package-url/purl-spec) of the [package artifact](https://slsa.dev/spec/v1.0/terminology#package-model) provides a standard way to identify and locate the packaged artifact.
57+
"""
58+
59+
ARTIFACT_VERSION: Final = "artifact.version"
60+
"""
61+
The version of the artifact.
62+
"""
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Copyright The OpenTelemetry Authors
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
from typing import Final
16+
17+
AZ_SERVICE_REQUEST_ID: Final = "az.service_request_id"
18+
"""
19+
The unique identifier of the service request. It's generated by the Azure service and returned with the response.
20+
"""
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# Copyright The OpenTelemetry Authors
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
from enum import Enum
16+
from typing import Final
17+
18+
CICD_PIPELINE_NAME: Final = "cicd.pipeline.name"
19+
"""
20+
The human readable name of the pipeline within a CI/CD system.
21+
"""
22+
23+
CICD_PIPELINE_RUN_ID: Final = "cicd.pipeline.run.id"
24+
"""
25+
The unique identifier of a pipeline run within a CI/CD system.
26+
"""
27+
28+
CICD_PIPELINE_TASK_NAME: Final = "cicd.pipeline.task.name"
29+
"""
30+
The human readable name of a task within a pipeline. Task here most closely aligns with a [computing process](https://en.wikipedia.org/wiki/Pipeline_(computing)) in a pipeline. Other terms for tasks include commands, steps, and procedures.
31+
"""
32+
33+
CICD_PIPELINE_TASK_RUN_ID: Final = "cicd.pipeline.task.run.id"
34+
"""
35+
The unique identifier of a task run within a pipeline.
36+
"""
37+
38+
CICD_PIPELINE_TASK_RUN_URL_FULL: Final = "cicd.pipeline.task.run.url.full"
39+
"""
40+
The [URL](https://en.wikipedia.org/wiki/URL) of the pipeline run providing the complete address in order to locate and identify the pipeline run.
41+
"""
42+
43+
CICD_PIPELINE_TASK_TYPE: Final = "cicd.pipeline.task.type"
44+
"""
45+
The type of the task within a pipeline.
46+
"""
47+
48+
49+
class CicdPipelineTaskTypeValues(Enum):
50+
BUILD = "build"
51+
"""build."""
52+
TEST = "test"
53+
"""test."""
54+
DEPLOY = "deploy"
55+
"""deploy."""

opentelemetry-semantic-conventions/src/opentelemetry/semconv/_incubating/attributes/cloud_attributes.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@
5555
* **AWS Lambda:** The function [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html).
5656
Take care not to use the "invoked ARN" directly but replace any
5757
[alias suffix](https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html)
58-
with the resolved function version, as the same runtime instance may be invokable with
58+
with the resolved function version, as the same runtime instance may be invocable with
5959
multiple different aliases.
6060
* **GCP:** The [URI of the resource](https://cloud.google.com/iam/docs/full-resource-names)
6161
* **Azure:** The [Fully Qualified Resource ID](https://docs.microsoft.com/rest/api/resources/resources/get-by-id) of the invoked function,

opentelemetry-semantic-conventions/src/opentelemetry/semconv/_incubating/attributes/container_attributes.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@
1515
from enum import Enum
1616
from typing import Final
1717

18+
from deprecated import deprecated
19+
1820
CONTAINER_COMMAND: Final = "container.command"
1921
"""
2022
The command used to run the container (i.e. the command name).
@@ -33,7 +35,7 @@
3335

3436
CONTAINER_CPU_STATE: Final = "container.cpu.state"
3537
"""
36-
The CPU state for this data point.
38+
Deprecated: Replaced by `cpu.mode`.
3739
"""
3840

3941
CONTAINER_ID: Final = "container.id"
@@ -86,6 +88,7 @@
8688
"""
8789

8890

91+
@deprecated(reason="The attribute container.cpu.state is deprecated - Replaced by `cpu.mode`") # type: ignore
8992
class ContainerCpuStateValues(Enum):
9093
USER = "user"
9194
"""When tasks of the cgroup are in user mode (Linux). When all container processes are in user mode (Windows)."""
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# Copyright The OpenTelemetry Authors
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
from enum import Enum
16+
from typing import Final
17+
18+
CPU_MODE: Final = "cpu.mode"
19+
"""
20+
The mode of the CPU.
21+
"""
22+
23+
24+
class CpuModeValues(Enum):
25+
USER = "user"
26+
"""user."""
27+
SYSTEM = "system"
28+
"""system."""
29+
NICE = "nice"
30+
"""nice."""
31+
IDLE = "idle"
32+
"""idle."""
33+
IOWAIT = "iowait"
34+
"""iowait."""
35+
INTERRUPT = "interrupt"
36+
"""interrupt."""
37+
STEAL = "steal"
38+
"""steal."""
39+
KERNEL = "kernel"
40+
"""kernel."""

0 commit comments

Comments
 (0)