-
Notifications
You must be signed in to change notification settings - Fork 896
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' into samplerparent
- Loading branch information
Showing
27 changed files
with
1,035 additions
and
316 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
groups: | ||
- id: service | ||
prefix: service | ||
brief: > | ||
A service instance. | ||
attributes: | ||
- id: name | ||
type: string | ||
required: always | ||
brief: > | ||
Logical name of the service. | ||
note: > | ||
MUST be the same for all instances of horizontally scaled services. | ||
examples: ["shoppingcart"] | ||
- id: namespace | ||
type: string | ||
brief: > | ||
A namespace for `service.name`. | ||
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. | ||
examples: ["Shop"] | ||
- id: instance.id | ||
type: string | ||
required: always | ||
brief: > | ||
The string ID of the service instance. | ||
note: > | ||
MUST be unique for each instance of the same `service.namespace,service.name` pair | ||
(in other words `service.namespace,service.name,service.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). It is preferable for the ID to be persistent | ||
and stay the same for the lifetime of the service instance, however it is acceptable that | ||
the ID is ephemeral and changes during important lifetime events for the service | ||
(e.g. service restarts). | ||
If the service has no inherent unique ID that can be used as the value of this attribute | ||
it is recommended to generate a random Version 1 or Version 4 RFC 4122 UUID | ||
(services aiming for reproducible UUIDs may also use Version 5, see RFC 4122 | ||
for more recommendations). | ||
examples: ["627cc493-f310-47de-96bd-71410b7dec09"] | ||
- id: version | ||
type: string | ||
brief: > | ||
The version string of the service API or implementation. | ||
examples: ["2.0.0"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
groups: | ||
- id: telemetry | ||
prefix: telemetry | ||
brief: > | ||
The telemetry SDK used to capture data recorded by the instrumentation libraries. | ||
attributes: | ||
- id: sdk.name | ||
type: string | ||
brief: > | ||
The name of the telemetry SDK as defined above. | ||
examples: ["opentelemetry"] | ||
- id: sdk.language | ||
type: | ||
allow_custom_values: true | ||
members: | ||
- id: cpp | ||
value: "cpp" | ||
- id: dotnet | ||
value: "dotnet" | ||
- id: erlang | ||
value: "erlang" | ||
- id: go | ||
value: "go" | ||
- id: java | ||
value: "java" | ||
- id: nodejs | ||
value: "nodejs" | ||
- id: php | ||
value: "php" | ||
- id: python | ||
value: "python" | ||
- id: ruby | ||
value: "ruby" | ||
- id: webjs | ||
value: "webjs" | ||
brief: > | ||
The language of the telemetry SDK. | ||
- id: sdk.version | ||
type: string | ||
brief: > | ||
The version string of the telemetry SDK. | ||
examples: ["1.2.3"] | ||
- id: auto.version | ||
type: string | ||
brief: > | ||
The version string of the auto instrumentation agent, if used. | ||
examples: ["1.2.3"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,116 @@ | ||
groups: | ||
- id: messaging | ||
prefix: messaging | ||
brief: > | ||
This document defines the attributes used in | ||
messaging systems. | ||
attributes: | ||
- id: system | ||
type: string | ||
required: always | ||
brief: 'A string identifying the messaging system.' | ||
examples: ['kafka', 'rabbitmq', 'activemq'] | ||
- id: destination | ||
type: string | ||
required: always | ||
brief: > | ||
The message destination name. This might be equal to the span name | ||
but is required nevertheless. | ||
examples: ['MyQueue', 'MyTopic'] | ||
- id: destination_kind | ||
type: | ||
allow_custom_values: false | ||
members: | ||
- id: queue | ||
value: "queue" | ||
brief: "A message sent to a queue" | ||
- id: topic | ||
value: "topic" | ||
brief: "A message broadcasted to the subscribers of the topic" | ||
required: | ||
conditional: 'Required only if the message destination is either a `queue` or `topic`.' | ||
brief: 'The kind of message destination' | ||
- id: temp_destination | ||
type: boolean | ||
required: | ||
conditional: 'If missing, it is assumed to be false.' | ||
brief: 'A boolean that is true if the message destination is temporary.' | ||
- id: protocol | ||
type: string | ||
brief: 'The name of the transport protocol.' | ||
examples: ['AMQP', 'MQTT'] | ||
- id: protocol_version | ||
type: string | ||
brief: 'The version of the transport protocol.' | ||
examples: '0.9.1' | ||
- id: url | ||
type: string | ||
brief: 'Connection string.' | ||
examples: ['tibjmsnaming://localhost:7222', 'https://queue.amazonaws.com/80398EXAMPLE/MyQueue'] | ||
- id: message_id | ||
type: string | ||
brief: 'A value used by the messaging system as an identifier for the message, represented as a string.' | ||
examples: '452a7c7c7c7048c2f887f61572b18fc2' | ||
- id: conversation_id | ||
type: string | ||
brief: > | ||
The [conversation ID](#conversations) identifying the conversation to which the message belongs, | ||
represented as a string. Sometimes called "Correlation ID". | ||
examples: 'MyConversationId' | ||
- id: message_payload_size_bytes | ||
type: number | ||
brief: > | ||
The (uncompressed) size of the message payload in bytes. | ||
Also use this attribute if it is unknown whether the compressed or uncompressed payload size is reported. | ||
examples: 2738 | ||
- id: message_payload_compressed_size_bytes | ||
type: number | ||
brief: 'The compressed size of the message payload in bytes.' | ||
examples: 2048 | ||
constraints: | ||
- any_of: | ||
- 'net.peer.name' | ||
- 'net.peer.ip' | ||
- include: network | ||
|
||
- id: messaging.producer | ||
prefix: messaging | ||
extends: messaging | ||
span_kind: producer | ||
brief: 'Semantic convention for producers of messages sent to a messaging systems.' | ||
|
||
- id: messaging.producer.synchronous | ||
prefix: messaging | ||
extends: messaging | ||
span_kind: client | ||
brief: > | ||
Semantic convention for clients of messaging systems that produce messages | ||
and synchronously wait for responses. | ||
- id: messaging.consumer | ||
prefix: messaging | ||
extends: messaging | ||
span_kind: consumer | ||
brief: 'Semantic convention for a consumer of messages received from a messaging system' | ||
attributes: | ||
- id: operation | ||
type: | ||
allow_custom_values: false | ||
members: | ||
- id: receive | ||
value: "receive" | ||
- id: process | ||
value: "process" | ||
brief: > | ||
A string identifying the kind of message consumption as defined in the | ||
[Operation names](#operation-names) section above. | ||
If the operation is "send", this attribute MUST NOT be set, since the | ||
operation can be inferred from the span kind in that case. | ||
- id: messaging.consumer.synchronous | ||
prefix: messaging | ||
extends: messaging.consumer | ||
span_kind: server | ||
brief: > | ||
Semantic convention for servers that consume messages received from messaging systems | ||
and always send back replies directed to the producers of these messages. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
groups: | ||
- id: rpc | ||
prefix: rpc | ||
brief: 'This document defines semantic conventions for remote procedure calls.' | ||
attributes: | ||
- id: system | ||
type: string | ||
required: always | ||
brief: 'A string identifying the remoting system.' | ||
examples: ["grpc", "java_rmi", "wcf"] | ||
- id: service | ||
type: string | ||
required: | ||
conditional: "No, but recommended" | ||
brief: 'The full name of the service being called, including its package name, if applicable.' | ||
examples: "myservice.EchoService" | ||
- id: method | ||
type: string | ||
required: | ||
conditional: "No, but recommended" | ||
brief: 'The name of the method being called, must be equal to the $method part in the span name.' | ||
examples: "exampleMethod" | ||
- ref: net.peer.ip | ||
- ref: net.peer.name | ||
- ref: net.peer.port | ||
required: | ||
conditional: "See below" | ||
- ref: net.transport | ||
required: | ||
conditional: "See below" | ||
constraints: | ||
- any_of: | ||
- net.peer.ip | ||
- net.peer.name | ||
- include: network |
Oops, something went wrong.