semantic-conventions/model
Liudmila Molkova 0268189395
Make db.operation.name required where it's available, clarify what to do with multiple layers (#2200)
Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
2025-04-30 17:19:49 +00:00
..
android Rework device events (#1880) 2025-02-18 10:04:31 -08:00
app Create `app.installation.id` attribute (#1897) 2025-03-25 14:01:08 -07:00
artifact Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
aspnetcore Remove requirement_level usages from registry and add a policy to check (#1606) 2024-11-25 11:08:46 -05:00
aws Add span rendering template and clean up span briefs and notes (#1505) 2025-04-09 09:32:28 -07:00
azure Clarify notes on system-specific databases for operation and collection names (#1863) 2025-02-19 18:38:37 -08:00
browser Add Browser Web Vitals Event (#1940) 2025-04-08 23:03:52 +00:00
cassandra Consistent naming: `db.system` to `db.system.name`, namespace constants, remove `db` from system-specific names (#1734) 2025-01-23 23:02:12 -08:00
cicd Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
cli Add span rendering template and clean up span briefs and notes (#1505) 2025-04-09 09:32:28 -07:00
client Group yaml files by root namespace instead of signal (#1345) 2024-09-16 20:22:50 -07:00
cloud Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
cloudevents Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
cloudfoundry Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
code mark code.* attributes as stable (#2102) 2025-04-17 00:31:02 +00:00
container Move key names from template attribute examples to notes (#2175) 2025-04-29 18:39:20 +00:00
cpu refactor: move system cpu-related metrics to cpu namespace (#1896) 2025-03-04 18:23:41 +00:00
cpython CPython runtime garbage collections metrics (#1931) 2025-03-27 14:52:20 +00:00
database Make db.operation.name required where it's available, clarify what to do with multiple layers (#2200) 2025-04-30 17:19:49 +00:00
deployment Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
destination Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
device Change the definition of `device.id` (#1951) 2025-03-26 11:12:28 -07:00
disk Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
dns Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
dotnet Mark .NET runtime metrics as stable (#1609) 2024-12-03 12:39:24 -08:00
elasticsearch Consistent naming: `db.system` to `db.system.name`, namespace constants, remove `db` from system-specific names (#1734) 2025-01-23 23:02:12 -08:00
enduser Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
error Define generic `error.message` (#1992) 2025-03-28 19:02:23 -07:00
event/deprecated Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
exceptions Add common guidance on recording errors on spans and metrics, clarify DB conventions (#1716) 2025-01-16 11:54:10 -08:00
faas Add span rendering template and clean up span briefs and notes (#1505) 2025-04-09 09:32:28 -07:00
feature-flags Rename `feature_flag.provider_name` to `feature_flag.provider.name` (#1982) 2025-04-14 13:02:03 -07:00
file Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
gcp [chore] Fix link to apphub api. (#2012) 2025-03-21 16:08:38 +01:00
gen-ai Add invoke_agent as a member of gen_ai.operation.name (#2160) 2025-04-26 23:19:17 +00:00
geo Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
go Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
graphql Add span rendering template and clean up span briefs and notes (#1505) 2025-04-09 09:32:28 -07:00
hardware [chore] move hardware host metrics to the yaml format (#1927) 2025-03-04 18:26:00 +00:00
heroku Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
host Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
http Move key names from template attribute examples to notes (#2175) 2025-04-29 18:39:20 +00:00
ios Rework device events (#1880) 2025-02-18 10:04:31 -08:00
jvm Add GC causes to jvm GC related metric (#2155) 2025-04-22 03:42:53 +00:00
k8s [k8s] Introduce semantic conventions for k8s DaemonSet labels and annotations (#2170) 2025-04-30 16:15:28 +00:00
kestrel Update weaver to 0.14.0 and allow `_` -> `.` renames (#2086) 2025-04-11 09:30:39 -07:00
linux Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
log Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
messaging Update weaver to 0.14.0 and allow `_` -> `.` renames (#2086) 2025-04-11 09:30:39 -07:00
network Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
nodejs Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
oci Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
opentracing Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
os Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
otel Add health metrics for SDK metrics part (#2016) 2025-04-14 07:37:54 -07:00
peer Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
process Move key names from template attribute examples to notes (#2175) 2025-04-29 18:39:20 +00:00
profile model/profile: add frame.type for Go and Rust (#2003) 2025-03-25 16:11:59 +01:00
rpc Move key names from template attribute examples to notes (#2175) 2025-04-29 18:39:20 +00:00
security-rule Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
server Group yaml files by root namespace instead of signal (#1345) 2024-09-16 20:22:50 -07:00
service Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
session Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
signalr Group yaml files by root namespace instead of signal (#1345) 2024-09-16 20:22:50 -07:00
source Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
system Add bare minimum Entity Association capabilities - Apply to System + Process semconv (#2123) 2025-04-28 16:28:37 +00:00
telemetry Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
test Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
thread Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
tls Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
url [editorial] Use canonical https URLs (#1934) 2025-02-24 13:33:12 -08:00
user Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
user-agent Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
v8js CPython runtime garbage collections metrics (#1931) 2025-03-27 14:52:20 +00:00
vcs vcs: Fix typo in gitea name (#2058) 2025-04-09 11:30:46 -07:00
webengine Update stability levels from experimental -> development (#1889) 2025-02-11 18:06:51 -08:00
README.md Convert headings to sentence case (#2056) 2025-04-07 16:51:23 +00:00
version.properties Renamed `specification` and `semantic_conventions` to `model` and `docs` (#166) 2023-07-06 11:43:47 -07:00

README.md

YAML model for semantic conventions

The YAML descriptions of semantic convention contained in this directory are intended to be used by the various OpenTelemetry language implementations to aid in automatic generation of semantics-related code.

[!NOTE]

If you want to read the semantic conventions and not edit them, please see the generated markdown output in the docs folder.

Writing semantic conventions

Semantic conventions for the spec MUST adhere to the naming, attribute requirement level, and metric requirement level conventions.

Refer to the syntax for how to write the YAML files for semantic conventions and what the YAML properties mean.

A schema file for VS code is configured in the /.vscode/settings.json of this repository, enabling auto-completion and additional checks. Refer to the generator README for what extension you need.

When defining semantic conventions, follow contributing guide:

  • If new attributes are necessary, define them in the attribute registry. Attributes can only be defined inside groups with attribute_group type and with id starting with registry. prefix.
  • Define new spans, metrics, events, resources, and other conventions using appropriate group type. See semantic convention groups for more details.

Generating markdown

These YAML files are used by the make targets attribute-registry-generation and table-generation to generate consistently formatted Markdown tables for all semantic conventions in the specification. Run it from the root of this repository using the command

make attribute-registry-generation table-generation

For more information, see the Weaver as our code generations tool.

Validating semantic conventions

Semantic conventions YAML files are validated by the check-policies make target for backward compatibility, name formatting, and other policies.

You can run it with the following command:

make check-policies

See also: