semantic-conventions/specification/trace/semantic_conventions
Vladimir Šor f2bc1ad6bd Add YAML definition for code-related semantic attributes. (#1229)
* Introduce code-related semantic attributes.

* Generate table for `code` semantic attributes from the yaml spec.

* Update semantic_conventions/trace/general.yaml

Co-authored-by: Christian Neumüller <christian+github@neumueller.me>

* Update semantic_conventions/trace/general.yaml

Co-authored-by: Christian Neumüller <christian+github@neumueller.me>

* Generate table for `code` semantic attributes from the yaml spec.

* Revert line-endings-only change

* Better function name for code.function example.

Co-authored-by: Armin Ruech <armin.ruech@dynatrace.com>

Co-authored-by: Christian Neumüller <christian+github@neumueller.me>
Co-authored-by: Armin Ruech <armin.ruech@dynatrace.com>
2020-11-19 18:55:10 +01:00
..
README.md Add link to exceptions from folder README (#795) 2020-08-13 07:33:39 -07:00
database.md Database semantic conventions: Add db.table, allow SQL keyword as db.operation (#1141) 2020-11-09 19:47:40 +01:00
exceptions.md Fix absolute links to spec (#1192) 2020-11-04 12:29:48 -08:00
faas.md Add yaml for FaaS trace attributes (#1054) 2020-10-19 18:36:54 +02:00
http.md Remove deprecated span status codes from http semantic conventions (#1216) 2020-11-10 08:10:45 -08:00
messaging.md Use MUST consistently instead of SHALL (#1208) 2020-11-08 15:48:53 -05:00
rpc.md Updating gRPC status semantic conventions (#1156) 2020-11-06 15:06:46 -08:00
span-general.md Add YAML definition for code-related semantic attributes. (#1229) 2020-11-19 18:55:10 +01:00

README.md

Trace Semantic Conventions

In OpenTelemetry spans can be created freely and its up to the implementor to annotate them with attributes specific to the represented operation. Spans represent specific operations in and between systems. Some of these operations represent calls that use well-known protocols like HTTP or database calls. Depending on the protocol and the type of operation, additional information is needed to represent and analyze a span correctly in monitoring systems. It is also important to unify how this attribution is made in different languages. This way, the operator will not need to learn specifics of a language and telemetry collected from polyglot (multi-language) micro-service environments can still be easily correlated and cross-analyzed.

The following semantic conventions for spans are defined:

  • General: General semantic attributes that may be used in describing different kinds of operations.
  • HTTP: Spans for HTTP client and server.
  • Database: Spans for SQL and NoSQL client calls.
  • RPC/RMI: Spans for remote procedure calls (e.g., gRPC).
  • Messaging: Spans for interaction with messaging systems (queues, publish/subscribe, etc.).
  • FaaS: Spans for Function as a Service (e.g., AWS Lambda).
  • Exceptions: Attributes for recording exceptions associated with a span

Apart from semantic conventions for traces and metrics, OpenTelemetry also defines the concept of overarching Resources with their own Resource Semantic Conventions.