Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mark service.version as stable. #106

Merged
merged 8 commits into from
Jun 20, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,3 +92,6 @@ release.
- Limit `http.request.method` values to a closed set of known values,
introduce `http.request.method_original` for the original value.
([#17](https://github.com/open-telemetry/opentelemetry-specification/pull/17))
- Mark service.version as stable.
([#106](https://github.com/open-telemetry/semantic-conventions/pull/106))

5 changes: 5 additions & 0 deletions semantic_conventions/resource/service.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,8 @@ groups:
with [`process.executable.name`](process.md#process), e.g. `unknown_service:bash`.
If `process.executable.name` is not available, the value MUST be set to `unknown_service`.
examples: ["shoppingcart"]
- id: version
type: string
brief: >
The version string of the service API or implementation. The format is not defined by these conventions.
examples: ["2.0.0", "a01dbef8a"]
5 changes: 0 additions & 5 deletions semantic_conventions/resource/service_experimental.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,3 @@ groups:
(services aiming for reproducible UUIDs may also use Version 5, see RFC 4122
for more recommendations).
examples: ["my-k8s-pod-deployment-1", "627cc493-f310-47de-96bd-71410b7dec09"]
- id: version
type: string
brief: >
The version string of the service API or implementation.
examples: ["2.0.0"]
3 changes: 2 additions & 1 deletion specification/resource/semantic_conventions/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ These are the attributes which MAY be configurable via a dedicated environment v
as specified in [OpenTelemetry Environment Variable Specification](https://github.com/open-telemetry/opentelemetry-specification/tree/v1.21.0/specification/configuration/sdk-environment-variables.md):

- [`service.name`](#service)
- [`service.version`](#service)

## Semantic Attributes with SDK-provided Default Value

Expand All @@ -76,6 +77,7 @@ as specified in the [Resource SDK specification](https://github.com/open-telemet
| Attribute | Type | Description | Examples | Requirement Level |
|---|---|---|---|---|
| `service.name` | string | Logical name of the service. [1] | `shoppingcart` | Required |
| `service.version` | string | The version string of the service API or implementation. The format is not defined by these conventions. | `2.0.0`; `a01dbef8a` | Recommended |

**[1]:** 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`](process.md#process), e.g. `unknown_service:bash`. If `process.executable.name` is not available, the value MUST be set to `unknown_service`.
<!-- endsemconv -->
Expand All @@ -93,7 +95,6 @@ as specified in the [Resource SDK specification](https://github.com/open-telemet
|---|---|---|---|---|
| `service.namespace` | string | A namespace for `service.name`. [1] | `Shop` | Recommended |
| `service.instance.id` | string | The string ID of the service instance. [2] | `my-k8s-pod-deployment-1`; `627cc493-f310-47de-96bd-71410b7dec09` | Recommended |
| `service.version` | string | The version string of the service API or implementation. | `2.0.0` | Recommended |

**[1]:** 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.

Expand Down