Skip to content

Commit

Permalink
Require that names and namespaces are one global space across all sem…
Browse files Browse the repository at this point in the history
…antic convention areas

We have semantic conventions for Resources, Spans and Metrics (in the future also Logs are expected).
It was not clear if the attribute names across all convention areas should be globally unique.

This commit asserts that conventions are one space, they are not independent spaces with
their own namespaces each.

We prohibit using the same Span or Resource attribute name or metric label name but give them
slightly different meanings or value sets.

Resolves: open-telemetry#815
  • Loading branch information
Tigran Najaryan committed Aug 19, 2020
1 parent e52c763 commit 2bac62d
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions specification/common/common.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,13 @@ Names SHOULD follow these rules:
- When a new namespace is necessary consider whether it should be a top-level
namespace (e.g. `service`) or a nested namespace (e.g. `service.instance`).

- Semantic conventions exist for 4 areas: for Resource, Span and Log attribute
and for Metric label keys. Identical namespaces or names in these areas MUST
have identical meanings. For example the `http.method` span attribute name
denotes exactly the same concept as the `http.method` metric label, has the
same data type and the same set of possible values (in both cases it records
the value of the HTTP protocol's request method as a string).

- Semantic conventions MUST limit names to printable Basic Latin characters
(more precisely to
[U+0021 .. U+007E](https://en.wikipedia.org/wiki/Basic_Latin_(Unicode_block)#Table_of_characters)
Expand Down

0 comments on commit 2bac62d

Please sign in to comment.