From a4b307f27cb4ee472d99b6e0a7bcf290306520e6 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 9 Jan 2025 16:47:08 -0800 Subject: [PATCH 01/24] Align with naming guidance: rename db.system to db.system.name, rename constants, remove db prefix from system-specific attributes --- docs/attributes-registry/README.md | 2 + docs/attributes-registry/azure.md | 40 ++ docs/attributes-registry/cassandra.md | 38 ++ docs/attributes-registry/db.md | 240 +++++----- docs/attributes-registry/elasticsearch.md | 18 + docs/database/cassandra.md | 16 +- docs/database/cosmosdb.md | 58 +-- docs/database/couchdb.md | 2 +- docs/database/database-metrics.md | 154 +++---- docs/database/database-spans.md | 85 ++-- docs/database/dynamodb.md | 2 +- docs/database/elasticsearch.md | 36 +- docs/database/hbase.md | 2 +- docs/database/mariadb.md | 2 +- docs/database/mongodb.md | 4 +- docs/database/mssql.md | 2 +- docs/database/mysql.md | 2 +- docs/database/postgresql.md | 2 +- docs/database/redis.md | 4 +- docs/database/sql.md | 4 +- docs/general/attribute-requirement-level.md | 2 +- .../{database => azure}/cosmosdb-metrics.yaml | 18 +- model/azure/registry.yaml | 75 +++- model/cassandra/registry.yaml | 75 ++++ model/database/common.yaml | 10 +- .../deprecated/metrics-deprecated.yaml | 50 +++ .../deprecated/registry-deprecated.yaml | 380 ++++++++++++++++ model/database/metrics.yaml | 4 +- model/database/registry.yaml | 424 +++++------------- model/database/spans.yaml | 38 +- model/elasticsearch/registry.yaml | 28 ++ schema-next.yaml | 19 + 32 files changed, 1175 insertions(+), 661 deletions(-) create mode 100644 docs/attributes-registry/cassandra.md create mode 100644 docs/attributes-registry/elasticsearch.md rename model/{database => azure}/cosmosdb-metrics.yaml (67%) create mode 100644 model/cassandra/registry.yaml create mode 100644 model/elasticsearch/registry.yaml diff --git a/docs/attributes-registry/README.md b/docs/attributes-registry/README.md index 9f40561d47..59bf8d7426 100644 --- a/docs/attributes-registry/README.md +++ b/docs/attributes-registry/README.md @@ -38,6 +38,7 @@ Currently, the following namespaces exist: - [AWS](aws.md) - [Azure](azure.md) - [Browser](browser.md) +- [Cassandra](cassandra.md) - [CICD](cicd.md) - [Client](client.md) - [Cloud](cloud.md) @@ -53,6 +54,7 @@ Currently, the following namespaces exist: - [Disk](disk.md) - [DNS](dns.md) - [Dotnet](dotnet.md) +- [Elasticsearch](elasticsearch.md) - [Enduser](enduser.md) - [Error](error.md) - [Event](event.md) diff --git a/docs/attributes-registry/azure.md b/docs/attributes-registry/azure.md index 2ebfa58cfc..aed4a71e0f 100644 --- a/docs/attributes-registry/azure.md +++ b/docs/attributes-registry/azure.md @@ -6,11 +6,51 @@ # Azure +- [Azure Cosmos DB Attributes](#azure-cosmos-db-attributes) +- [Azure SDK Attributes](#azure-sdk-attributes) + +## Azure Cosmos DB Attributes + +This group defines attributes for Azure Cosmos DB. + +| Attribute | Type | Description | Examples | Stability | +|---|---|---|---|---| +| `az.cosmosdb.connection.mode` | string | Cosmos client connection mode. | `gateway`; `direct` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `az.cosmosdb.consistency.level` | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `az.cosmosdb.request.charge` | double | Request units consumed for the operation. | `46.18`; `1.0` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `az.cosmosdb.request.content_length` | int | Request payload size in bytes. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `az.cosmosdb.request.regions_contacted` | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [1] | `["North Central US", "Australia East", "Australia Southeast"]` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `az.cosmosdb.response.sub_status_code` | int | Cosmos DB sub status code. | `1000`; `1002` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | + +**[1] `az.cosmosdb.request.regions_contacted`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) + +--- + +`az.cosmosdb.connection.mode` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. + +| Value | Description | Stability | +|---|---|---| +| `direct` | Direct connection. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `gateway` | Gateway (HTTP) connection. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | + +--- + +`az.cosmosdb.consistency.level` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. + +| Value | Description | Stability | +|---|---|---| +| `BoundedStaleness` | bounded_staleness | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ConsistentPrefix` | consistent_prefix | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `Eventual` | eventual | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `Session` | session | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `Strong` | strong | ![Experimental](https://img.shields.io/badge/-experimental-blue) | + ## Azure SDK Attributes This document defines generic attributes for Azure SDK. | Attribute | Type | Description | Examples | Stability | |---|---|---|---|---| +| `az.client.id` | string | The unique identifier of the client instance. | `3ba4827d-4422-483f-b59f-85b74211c11d`; `storage-client-1` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `az.namespace` | string | [Azure Resource Provider Namespace](https://learn.microsoft.com/azure/azure-resource-manager/management/azure-services-resource-providers) as recognized by the client. | `Microsoft.Storage`; `Microsoft.KeyVault`; `Microsoft.ServiceBus` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `az.service_request_id` | string | The unique identifier of the service request. It's generated by the Azure service and returned with the response. | `00000000-0000-0000-0000-000000000000` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/attributes-registry/cassandra.md b/docs/attributes-registry/cassandra.md new file mode 100644 index 0000000000..7a6d952724 --- /dev/null +++ b/docs/attributes-registry/cassandra.md @@ -0,0 +1,38 @@ + + + + + +# Cassandra + +## Cassandra Attributes + +This group defines attributes for Cassandra. + +| Attribute | Type | Description | Examples | Stability | +|---|---|---|---|---| +| `cassandra.consistency.level` | string | The consistency level of the query. Based on consistency values from [CQL](https://docs.datastax.com/en/cassandra-oss/3.0/cassandra/dml/dmlConfigConsistency.html). | `all`; `each_quorum`; `quorum` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cassandra.coordinator.dc` | string | The data center of the coordinating node for a query. | `us-west-2` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cassandra.coordinator.id` | string | The ID of the coordinating node for a query. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cassandra.idempotence` | boolean | Whether or not the query is idempotent. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cassandra.page_size` | int | The fetch size used for paging, i.e. how many rows will be returned at once. | `5000` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cassandra.speculative_execution_count` | int | The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. | `0`; `2` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | + +--- + +`cassandra.consistency.level` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. + +| Value | Description | Stability | +|---|---|---| +| `all` | all | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `any` | any | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `each_quorum` | each_quorum | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `local_one` | local_one | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `local_quorum` | local_quorum | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `local_serial` | local_serial | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `one` | one | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `quorum` | quorum | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `serial` | serial | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `three` | three | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `two` | two | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/attributes-registry/db.md b/docs/attributes-registry/db.md index 6877905356..c70277dbcb 100644 --- a/docs/attributes-registry/db.md +++ b/docs/attributes-registry/db.md @@ -7,9 +7,6 @@ # DB - [General Database Attributes](#general-database-attributes) -- [Cassandra Attributes](#cassandra-attributes) -- [Azure Cosmos DB Attributes](#azure-cosmos-db-attributes) -- [Elasticsearch Attributes](#elasticsearch-attributes) - [Deprecated Database Attributes](#deprecated-database-attributes) - [Deprecated Database Metrics](#deprecated-database-metrics) @@ -30,7 +27,7 @@ This group defines the attributes used to describe telemetry in the context of d | `db.query.text` | string | The database query being executed. [7] | `SELECT * FROM wuser_table where username = ?`; `SET mykey ?` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `db.response.returned_rows` | int | Number of rows returned by the operation. | `10`; `30`; `1000` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `db.response.status_code` | string | Database response status code. [8] | `102`; `ORA-17002`; `08P01`; `404` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `db.system` | string | The database management system (DBMS) product as identified by the client instrumentation. [9] | `other_sql`; `adabas`; `cache` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `db.system.name` | string | The database management system (DBMS) product as identified by the client instrumentation. [9] | `other_sql`; `adabas`; `actian.ingres` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | **[1] `db.collection.name`:** It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. @@ -70,7 +67,7 @@ Even though parameterized query text can potentially have sensitive data, by usi **[8] `db.response.status_code`:** The status code returned by the database. Usually it represents an error code, but may also represent partial success, warning, or differentiate between various types of successful outcomes. Semantic conventions for individual database systems SHOULD document what `db.response.status_code` means in the context of that system. -**[9] `db.system`:** The actual DBMS may differ from the one identified by the client. For example, when using PostgreSQL client libraries to connect to a CockroachDB, the `db.system` is set to `postgresql` based on the instrumentation's best knowledge. +**[9] `db.system.name`:** The actual DBMS may differ from the one identified by the client. For example, when using PostgreSQL client libraries to connect to a CockroachDB, the `db.system.name` is set to `postgresql` based on the instrumentation's best knowledge. --- @@ -83,77 +80,94 @@ Semantic conventions for individual database systems SHOULD document what `db.re --- -`db.system` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. +`db.system.name` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | Stability | |---|---|---| +| `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `cache` | Deprecated, use `intersystems_cache` instead. | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `intersystems_cache`. | -| `cassandra` | Apache Cassandra | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `clickhouse` | ClickHouse | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `cloudscape` | Deprecated, use `other_sql` instead. | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `other_sql`. | -| `cockroachdb` | CockroachDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `coldfusion` | Deprecated, no replacement at this time. | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Removed. | -| `cosmosdb` | Microsoft Azure Cosmos DB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `couchbase` | Couchbase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `couchdb` | CouchDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db2` | IBM Db2 | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `derby` | Apache Derby | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `dynamodb` | Amazon DynamoDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `edb` | EnterpriseDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `elasticsearch` | Elasticsearch | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `filemaker` | FileMaker | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `firebird` | Firebird | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `firstsql` | Deprecated, use `other_sql` instead. | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `other_sql`. | -| `geode` | Apache Geode | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `h2` | H2 | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hanadb` | SAP HANA | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hbase` | Apache HBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hive` | Apache Hive | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hsqldb` | HyperSQL DataBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `influxdb` | InfluxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `informix` | Informix | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `ingres` | Ingres | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `instantdb` | InstantDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `interbase` | InterBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `intersystems_cache` | InterSystems Caché | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mariadb` | MariaDB (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `az.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cassandra` | [Apache Cassandra](https://cassandra.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `clickhouse` | [ClickHouse](https://clickhouse.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cockroachdb` | [CockroachDB](https://www.cockroachlabs.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `couchbase` | [Couchbase](https://www.couchbase.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `couchdb` | [Apache CouchDB](https://couchdb.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `derby` | [Apache Derby](https://db.apache.org/derby/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `edb` | [EnterpriseDB](https://www.enterprisedb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `elasticsearch` | [Elasticsearch](https://www.elastic.co/elasticsearch) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `firebird` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hive` | [Apache Hive](https://hive.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.db2` | [IBM Db2](https://www.ibm.com/db2) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.informix` | [IBM Informix](https://www.ibm.com/products/informix) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.netezza` | IBM Netezza | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `influxdb` | [InfluxDB](https://www.influxdata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `instantdb` | [InstantDB](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mariadb` | MariaDB | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `memcached` | Memcached | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `mongodb` | MongoDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mssql` | Microsoft SQL Server (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `mssqlcompact` | Deprecated, Microsoft SQL Server Compact is discontinued. | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Removed, use `other_sql` instead. | -| `mysql` | MySQL (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `mssql` | Microsoft SQL Server | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `mysql` | MySQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `neo4j` | Neo4j | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `netezza` | Netezza | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `opensearch` | OpenSearch | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `oracle` | Oracle Database | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `oracle` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `pervasive` | Pervasive PSQL | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `pointbase` | PointBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `postgresql` | PostgreSQL (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `progress` | Progress Database | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `postgresql` | PostgreSQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | Redis | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.hanadb` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `spanner` | Cloud Spanner | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | SQLite | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sybase` | Sybase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | Teradata | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `trino` | Trino | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `vertica` | Vertica | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -## Cassandra Attributes +## Deprecated Database Attributes -This group defines attributes for Cassandra. +"Describes deprecated db attributes." | Attribute | Type | Description | Examples | Stability | |---|---|---|---|---| -| `db.cassandra.consistency_level` | string | The consistency level of the query. Based on consistency values from [CQL](https://docs.datastax.com/en/cassandra-oss/3.0/cassandra/dml/dmlConfigConsistency.html). | `all`; `each_quorum`; `quorum` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db.cassandra.coordinator.dc` | string | The data center of the coordinating node for a query. | `us-west-2` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db.cassandra.coordinator.id` | string | The ID of the coordinating node for a query. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db.cassandra.idempotence` | boolean | Whether or not the query is idempotent. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db.cassandra.page_size` | int | The fetch size used for paging, i.e. how many rows will be returned at once. | `5000` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db.cassandra.speculative_execution_count` | int | The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. | `0`; `2` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `db.cassandra.consistency_level` | string | Deprecated, use `cassandra.consistency.level` instead. | `all`; `each_quorum`; `quorum` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.consistency.level`. | +| `db.cassandra.coordinator.dc` | string | Deprecated, use `cassandra.coordinator.dc` instead. | `us-west-2` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.coordinator.dc`. | +| `db.cassandra.coordinator.id` | string | Deprecated, use `cassandra.coordinator.id` instead. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.coordinator.id`. | +| `db.cassandra.idempotence` | boolean | Deprecated, use `cassandra.idempotence` instead. | | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.idempotence`. | +| `db.cassandra.page_size` | int | Deprecated, use `cassandra.page_size` instead. | `5000` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.page_size`. | +| `db.cassandra.speculative_execution_count` | int | Deprecated, use `cassandra.speculative_execution_count` instead. | `0`; `2` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.speculative_execution_count`. | +| `db.cassandra.table` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | +| `db.connection_string` | string | Deprecated, use `server.address`, `server.port` attributes instead. | `Server=(localdb)\v11.0;Integrated Security=true;` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `server.address` and `server.port`. | +| `db.cosmosdb.client_id` | string | Deprecated, use `az.client.id` instead. | `3ba4827d-4422-483f-b59f-85b74211c11d` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.client.id`. | +| `db.cosmosdb.connection_mode` | string | Deprecated, use `az.cosmosdb.connection.mode` instead. | `gateway`; `direct` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.connection.mode`. | +| `db.cosmosdb.consistency_level` | string | Deprecated, use `cosmosdb.consistency.level` instead. | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.consistency.level`. | +| `db.cosmosdb.container` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | +| `db.cosmosdb.operation_type` | string | Deprecated, no replacement at this time. | `batch`; `create`; `delete` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
No replacement at this time. | +| `db.cosmosdb.regions_contacted` | string[] | Deprecated, use `az.cosmosdb.request.regions_contacted` instead. | `["North Central US", "Australia East", "Australia Southeast"]` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.request.regions_contacted`. | +| `db.cosmosdb.request_charge` | double | Deprecated, use `az.cosmosdb.request.charge` instead. | `46.18`; `1.0` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.request.charge`. | +| `db.cosmosdb.request_content_length` | int | Deprecated, use `az.cosmosdb.request.content_length` instead. | | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.request.content_length`. | +| `db.cosmosdb.status_code` | int | Deprecated, use `db.response.status_code` instead. | `200`; `201` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.response.status_code`. | +| `db.cosmosdb.sub_status_code` | int | Deprecated, use `cosmosdb.response.sub_status_code` instead. | `1000`; `1002` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.response.sub_status_code`. | +| `db.elasticsearch.cluster.name` | string | Deprecated, use `db.namespace` instead. | `e9106fc68e3044f0b1475b04bf4ffd5f` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.namespace`. | +| `db.elasticsearch.node.name` | string | Deprecated, use `elasticsearch.node.name` instead. | `instance-0000000001` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `elasticsearch.node.name`. | +| `db.elasticsearch.path_parts.` | string | Deprecated, use `elasticsearch.path_parts` instead. | `db.elasticsearch.path_parts.index=test-index`; `db.elasticsearch.path_parts.doc_id=123` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `elasticsearch.path_parts`. | +| `db.instance.id` | string | Deprecated, no general replacement at this time. For Elasticsearch, use `db.elasticsearch.node.name` instead. | `mysql-e26b99z.example.com` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Deprecated, no general replacement at this time. For Elasticsearch, use `db.elasticsearch.node.name` instead. | +| `db.jdbc.driver_classname` | string | Removed, no replacement at this time. | `org.postgresql.Driver`; `com.microsoft.sqlserver.jdbc.SQLServerDriver` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Removed as not used. | +| `db.mongodb.collection` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | +| `db.mssql.instance_name` | string | Deprecated, SQL Server instance is now populated as a part of `db.namespace` attribute. | `MSSQLSERVER` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Deprecated, no replacement at this time. | +| `db.name` | string | Deprecated, use `db.namespace` instead. | `customers`; `main` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.namespace`. | +| `db.operation` | string | Deprecated, use `db.operation.name` instead. | `findAndModify`; `HMSET`; `SELECT` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.operation.name`. | +| `db.query.parameter.` | string | A query parameter used in `db.query.text`, with `` being the parameter name, and the attribute value being a string representation of the parameter value. | `someval`; `55` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.operation.parameter`. | +| `db.redis.database_index` | int | Deprecated, use `db.namespace` instead. | `0`; `1`; `15` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.namespace`. | +| `db.sql.table` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | +| `db.statement` | string | The database statement being executed. | `SELECT * FROM wuser_table`; `SET mykey "WuValue"` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.query.text`. | +| `db.system` | string | Deprecated, use `db.system.name` instead. | `other_sql`; `adabas`; `cache` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.system.name`. | +| `db.user` | string | Deprecated, no replacement at this time. | `readonly_user`; `reporting_user` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
No replacement at this time. | --- @@ -173,22 +187,6 @@ This group defines attributes for Cassandra. | `three` | three | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `two` | two | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -## Azure Cosmos DB Attributes - -This group defines attributes for Azure Cosmos DB. - -| Attribute | Type | Description | Examples | Stability | -|---|---|---|---|---| -| `db.cosmosdb.client_id` | string | Unique Cosmos client instance id. | `3ba4827d-4422-483f-b59f-85b74211c11d` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db.cosmosdb.connection_mode` | string | Cosmos client connection mode. | `gateway`; `direct` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db.cosmosdb.consistency_level` | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db.cosmosdb.regions_contacted` | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [10] | `["North Central US", "Australia East", "Australia Southeast"]` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db.cosmosdb.request_charge` | double | Request units consumed for the operation. | `46.18`; `1.0` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db.cosmosdb.request_content_length` | int | Request payload size in bytes. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db.cosmosdb.sub_status_code` | int | Cosmos DB sub status code. | `1000`; `1002` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | - -**[10] `db.cosmosdb.regions_contacted`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) - --- `db.cosmosdb.connection_mode` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. @@ -210,41 +208,6 @@ This group defines attributes for Azure Cosmos DB. | `Session` | session | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `Strong` | strong | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -## Elasticsearch Attributes - -This group defines attributes for Elasticsearch. - -| Attribute | Type | Description | Examples | Stability | -|---|---|---|---|---| -| `db.elasticsearch.node.name` | string | Represents the human-readable identifier of the node/instance to which a request was routed. | `instance-0000000001` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db.elasticsearch.path_parts.` | string | A dynamic value in the url path. [11] | `db.elasticsearch.path_parts.index=test-index`; `db.elasticsearch.path_parts.doc_id=123` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | - -**[11] `db.elasticsearch.path_parts`:** Many Elasticsearch url paths allow dynamic values. These SHOULD be recorded in span attributes in the format `db.elasticsearch.path_parts.`, where `` is the url path part name. The implementation SHOULD reference the [elasticsearch schema](https://raw.githubusercontent.com/elastic/elasticsearch-specification/main/output/schema/schema.json) in order to map the path part values to their names. - -## Deprecated Database Attributes - -"Describes deprecated db attributes." - -| Attribute | Type | Description | Examples | Stability | -|---|---|---|---|---| -| `db.cassandra.table` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | -| `db.connection_string` | string | Deprecated, use `server.address`, `server.port` attributes instead. | `Server=(localdb)\v11.0;Integrated Security=true;` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `server.address` and `server.port`. | -| `db.cosmosdb.container` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | -| `db.cosmosdb.operation_type` | string | Deprecated, no replacement at this time. | `batch`; `create`; `delete` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
No replacement at this time. | -| `db.cosmosdb.status_code` | int | Deprecated, use `db.response.status_code` instead. | `200`; `201` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.response.status_code`. | -| `db.elasticsearch.cluster.name` | string | Deprecated, use `db.namespace` instead. | `e9106fc68e3044f0b1475b04bf4ffd5f` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.namespace`. | -| `db.instance.id` | string | Deprecated, no general replacement at this time. For Elasticsearch, use `db.elasticsearch.node.name` instead. | `mysql-e26b99z.example.com` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Deprecated, no general replacement at this time. For Elasticsearch, use `db.elasticsearch.node.name` instead. | -| `db.jdbc.driver_classname` | string | Removed, no replacement at this time. | `org.postgresql.Driver`; `com.microsoft.sqlserver.jdbc.SQLServerDriver` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Removed as not used. | -| `db.mongodb.collection` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | -| `db.mssql.instance_name` | string | Deprecated, SQL Server instance is now populated as a part of `db.namespace` attribute. | `MSSQLSERVER` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Deprecated, no replacement at this time. | -| `db.name` | string | Deprecated, use `db.namespace` instead. | `customers`; `main` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.namespace`. | -| `db.operation` | string | Deprecated, use `db.operation.name` instead. | `findAndModify`; `HMSET`; `SELECT` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.operation.name`. | -| `db.query.parameter.` | string | A query parameter used in `db.query.text`, with `` being the parameter name, and the attribute value being a string representation of the parameter value. | `someval`; `55` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.operation.parameter`. | -| `db.redis.database_index` | int | Deprecated, use `db.namespace` instead. | `0`; `1`; `15` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.namespace`. | -| `db.sql.table` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | -| `db.statement` | string | The database statement being executed. | `SELECT * FROM wuser_table`; `SET mykey "WuValue"` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.query.text`. | -| `db.user` | string | Deprecated, no replacement at this time. | `readonly_user`; `reporting_user` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
No replacement at this time. | - --- `db.cosmosdb.operation_type` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. @@ -267,6 +230,67 @@ This group defines attributes for Elasticsearch. | `replace` | replace | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `upsert` | upsert | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +--- + +`db.system` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. + +| Value | Description | Stability | +|---|---|---| +| `adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cache` | Deprecated, use `intersystems_cache` instead. | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `intersystems_cache`. | +| `cassandra` | Apache Cassandra | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `clickhouse` | ClickHouse | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cloudscape` | Deprecated, use `other_sql` instead. | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `other_sql`. | +| `cockroachdb` | CockroachDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `coldfusion` | Deprecated, no replacement at this time. | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Removed. | +| `cosmosdb` | Microsoft Azure Cosmos DB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `couchbase` | Couchbase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `couchdb` | CouchDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `db2` | IBM Db2 | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `derby` | Apache Derby | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `dynamodb` | Amazon DynamoDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `edb` | EnterpriseDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `elasticsearch` | Elasticsearch | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `filemaker` | FileMaker | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `firebird` | Firebird | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `firstsql` | Deprecated, use `other_sql` instead. | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `other_sql`. | +| `geode` | Apache Geode | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `h2` | H2 | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hanadb` | SAP HANA | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hbase` | Apache HBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hive` | Apache Hive | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hsqldb` | HyperSQL DataBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `influxdb` | InfluxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `informix` | Informix | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ingres` | Ingres | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `instantdb` | InstantDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `interbase` | InterBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `intersystems_cache` | InterSystems Caché | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mariadb` | MariaDB (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `memcached` | Memcached | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mongodb` | MongoDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mssql` | Microsoft SQL Server (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `mssqlcompact` | Deprecated, Microsoft SQL Server Compact is discontinued. | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Removed, use `other_sql` instead. | +| `mysql` | MySQL (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `neo4j` | Neo4j | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `netezza` | Netezza | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `opensearch` | OpenSearch | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `oracle` | Oracle Database | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `pervasive` | Pervasive PSQL | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `pointbase` | PointBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `postgresql` | PostgreSQL (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `progress` | Progress Database | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `redis` | Redis | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `spanner` | Cloud Spanner | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sqlite` | SQLite | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sybase` | Sybase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `teradata` | Teradata | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `trino` | Trino | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `vertica` | Vertica | ![Experimental](https://img.shields.io/badge/-experimental-blue) | + ## Deprecated Database Metrics "Describes deprecated db metrics attributes." diff --git a/docs/attributes-registry/elasticsearch.md b/docs/attributes-registry/elasticsearch.md new file mode 100644 index 0000000000..3bcea57d16 --- /dev/null +++ b/docs/attributes-registry/elasticsearch.md @@ -0,0 +1,18 @@ + + + + + +# Elasticsearch + +## Elasticsearch Attributes + +This group defines attributes for Elasticsearch. + +| Attribute | Type | Description | Examples | Stability | +|---|---|---|---|---| +| `elasticsearch.node.name` | string | Represents the human-readable identifier of the node/instance to which a request was routed. | `instance-0000000001` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `elasticsearch.path_parts.` | string | A dynamic value in the url path. [1] | `elasticsearch.path_parts.index=test-index`; `elasticsearch.path_parts.doc_id=123` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | + +**[1] `elasticsearch.path_parts`:** Many Elasticsearch url paths allow dynamic values. These SHOULD be recorded in span attributes in the format `elasticsearch.path_parts.`, where `` is the url path part name. The implementation SHOULD reference the [elasticsearch schema](https://raw.githubusercontent.com/elastic/elasticsearch-specification/main/output/schema/schema.json) in order to map the path part values to their names. diff --git a/docs/database/cassandra.md b/docs/database/cassandra.md index cf3d2b3b68..54d4c4821d 100644 --- a/docs/database/cassandra.md +++ b/docs/database/cassandra.md @@ -8,7 +8,7 @@ linkTitle: Cassandra The Semantic Conventions for [Cassandra](https://cassandra.apache.org/) extend and override the [Database Semantic Conventions](database-spans.md). -`db.system` MUST be set to `"cassandra"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"cassandra"` and SHOULD be provided **at span creation time**. ## Attributes @@ -27,12 +27,12 @@ The Semantic Conventions for [Cassandra](https://cassandra.apache.org/) extend a | [`db.response.status_code`](/docs/attributes-registry/db.md) | string | [Cassandra protocol error code](https://github.com/apache/cassandra/blob/cassandra-5.0/doc/native_protocol_v5.spec) represented as a string. [6] | `102`; `40020` | `Conditionally Required` [7] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`error.type`](/docs/attributes-registry/error.md) | string | Describes a class of error the operation ended with. [8] | `timeout`; `java.net.UnknownHostException`; `server_certificate_invalid`; `500` | `Conditionally Required` If and only if the operation failed. | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`server.port`](/docs/attributes-registry/server.md) | int | Server port number. [9] | `80`; `8080`; `443` | `Conditionally Required` [10] | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | -| [`db.cassandra.consistency_level`](/docs/attributes-registry/db.md) | string | The consistency level of the query. Based on consistency values from [CQL](https://docs.datastax.com/en/cassandra-oss/3.0/cassandra/dml/dmlConfigConsistency.html). | `all`; `each_quorum`; `quorum` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`db.cassandra.coordinator.dc`](/docs/attributes-registry/db.md) | string | The data center of the coordinating node for a query. | `us-west-2` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`db.cassandra.coordinator.id`](/docs/attributes-registry/db.md) | string | The ID of the coordinating node for a query. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`db.cassandra.idempotence`](/docs/attributes-registry/db.md) | boolean | Whether or not the query is idempotent. | | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`db.cassandra.page_size`](/docs/attributes-registry/db.md) | int | The fetch size used for paging, i.e. how many rows will be returned at once. | `5000` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`db.cassandra.speculative_execution_count`](/docs/attributes-registry/db.md) | int | The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. | `0`; `2` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`cassandra.consistency.level`](/docs/attributes-registry/cassandra.md) | string | The consistency level of the query. Based on consistency values from [CQL](https://docs.datastax.com/en/cassandra-oss/3.0/cassandra/dml/dmlConfigConsistency.html). | `all`; `each_quorum`; `quorum` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`cassandra.coordinator.dc`](/docs/attributes-registry/cassandra.md) | string | The data center of the coordinating node for a query. | `us-west-2` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`cassandra.coordinator.id`](/docs/attributes-registry/cassandra.md) | string | The ID of the coordinating node for a query. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`cassandra.idempotence`](/docs/attributes-registry/cassandra.md) | boolean | Whether or not the query is idempotent. | | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`cassandra.page_size`](/docs/attributes-registry/cassandra.md) | int | The fetch size used for paging, i.e. how many rows will be returned at once. | `5000` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`cassandra.speculative_execution_count`](/docs/attributes-registry/cassandra.md) | int | The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. | `0`; `2` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`db.operation.batch.size`](/docs/attributes-registry/db.md) | int | The number of queries included in a batch operation. [11] | `2`; `3`; `4` | `Recommended` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.query.summary`](/docs/attributes-registry/db.md) | string | Low cardinality representation of a database query text. [12] | `SELECT wuser_table`; `INSERT shipping_details SELECT orders`; `get user by id` | `Recommended` [13] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.query.text`](/docs/attributes-registry/db.md) | string | The database query being executed. [14] | `SELECT * FROM wuser_table where username = ?`; `SET mykey ?` | `Recommended` [15] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -115,7 +115,7 @@ and SHOULD be provided **at span creation time** (if provided at all): --- -`db.cassandra.consistency_level` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. +`cassandra.consistency.level` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | Stability | |---|---|---| diff --git a/docs/database/cosmosdb.md b/docs/database/cosmosdb.md index 679e1fde6c..18b8698b50 100644 --- a/docs/database/cosmosdb.md +++ b/docs/database/cosmosdb.md @@ -26,11 +26,11 @@ extend and override the [Database Semantic Conventions](database-spans.md). ## Attributes -`db.system` MUST be set to `"cosmosdb"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"cosmosdb"` and SHOULD be provided **at span creation time**. Cosmos DB instrumentation includes call-level (public API) surface spans and network spans. Depending on the connection mode (Gateway or Direct), network-level spans may also be created. - + @@ -39,21 +39,21 @@ Cosmos DB instrumentation includes call-level (public API) surface spans and net | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| -| [`db.collection.name`](/docs/attributes-registry/db.md) | string | Cosmos DB container name. [1] | `public.users`; `customers` | `Conditionally Required` if available | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| [`db.cosmosdb.connection_mode`](/docs/attributes-registry/db.md) | string | Cosmos client connection mode. | `gateway`; `direct` | `Conditionally Required` [2] | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`db.cosmosdb.consistency_level`](/docs/attributes-registry/db.md) | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`db.cosmosdb.regions_contacted`](/docs/attributes-registry/db.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [3] | `["North Central US", "Australia East", "Australia Southeast"]` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`db.cosmosdb.request_charge`](/docs/attributes-registry/db.md) | double | Request units consumed for the operation. | `46.18`; `1.0` | `Conditionally Required` when available | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`db.cosmosdb.sub_status_code`](/docs/attributes-registry/db.md) | int | Cosmos DB sub status code. | `1000`; `1002` | `Conditionally Required` when response was received and contained sub-code. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`az.cosmosdb.connection.mode`](/docs/attributes-registry/azure.md) | string | Cosmos client connection mode. | `gateway`; `direct` | `Conditionally Required` [1] | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`az.cosmosdb.consistency.level`](/docs/attributes-registry/azure.md) | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`az.cosmosdb.request.charge`](/docs/attributes-registry/azure.md) | double | Request units consumed for the operation. | `46.18`; `1.0` | `Conditionally Required` when available | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`az.cosmosdb.request.regions_contacted`](/docs/attributes-registry/azure.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [2] | `["North Central US", "Australia East", "Australia Southeast"]` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`az.cosmosdb.response.sub_status_code`](/docs/attributes-registry/azure.md) | int | Cosmos DB sub status code. | `1000`; `1002` | `Conditionally Required` when response was received and contained sub-code. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`db.collection.name`](/docs/attributes-registry/db.md) | string | Cosmos DB container name. [3] | `public.users`; `customers` | `Conditionally Required` if available | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the database, fully qualified within the server address and port. | `customers`; `test.users` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.operation.name`](/docs/attributes-registry/db.md) | string | The name of the operation or command being executed. [4] | `create_item`; `query_items`; `read_item` | `Conditionally Required` [5] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.response.returned_rows`](/docs/attributes-registry/db.md) | int | Cosmos DB row count in result set. | `10`; `20` | `Conditionally Required` if response was received and returned any rows | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`db.response.status_code`](/docs/attributes-registry/db.md) | string | Cosmos DB status code. [6] | `200`; `201` | `Conditionally Required` if response was received | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`error.type`](/docs/attributes-registry/error.md) | string | Describes a class of error the operation ended with. [7] | `timeout`; `java.net.UnknownHostException`; `server_certificate_invalid`; `500` | `Conditionally Required` If and only if the operation failed. | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`server.port`](/docs/attributes-registry/server.md) | int | Server port number. [8] | `80`; `8080`; `443` | `Conditionally Required` If not default (443). | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | +| [`az.client.id`](/docs/attributes-registry/azure.md) | string | The unique identifier of the client instance. | `3ba4827d-4422-483f-b59f-85b74211c11d`; `storage-client-1` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`az.cosmosdb.request.content_length`](/docs/attributes-registry/azure.md) | int | Request payload size in bytes. | | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`az.namespace`](/docs/attributes-registry/azure.md) | string | [Azure Resource Provider Namespace](https://learn.microsoft.com/azure/azure-resource-manager/management/azure-services-resource-providers) as recognized by the client. [9] | `Microsoft.DocumentDB` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`db.cosmosdb.client_id`](/docs/attributes-registry/db.md) | string | Unique Cosmos client instance id. | `3ba4827d-4422-483f-b59f-85b74211c11d` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`db.cosmosdb.request_content_length`](/docs/attributes-registry/db.md) | int | Request payload size in bytes. | | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`db.operation.batch.size`](/docs/attributes-registry/db.md) | int | The number of queries included in a batch operation. [10] | `2`; `3`; `4` | `Recommended` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.query.summary`](/docs/attributes-registry/db.md) | string | Low cardinality representation of a database query text. [11] | `SELECT wuser_table`; `INSERT shipping_details SELECT orders`; `get user by id` | `Recommended` [12] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.query.text`](/docs/attributes-registry/db.md) | string | The database query being executed. [13] | `SELECT * FROM wuser_table where username = ?`; `SET mykey ?` | `Recommended` [14] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -61,11 +61,11 @@ Cosmos DB instrumentation includes call-level (public API) surface spans and net | [`user_agent.original`](/docs/attributes-registry/user-agent.md) | string | Full user-agent string is generated by Cosmos DB SDK [16] | `cosmos-netstandard-sdk/3.23.0\|3.23.1\|1\|X64\|Linux 5.4.0-1098-azure 104 18\|.NET Core 3.1.32\|S\|` | `Recommended` | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`db.operation.parameter.`](/docs/attributes-registry/db.md) | string | A database operation parameter, with `` being the parameter name, and the attribute value being a string representation of the parameter value. [17] | `someval`; `55` | `Opt-In` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -**[1] `db.collection.name`:** It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. +**[1] `az.cosmosdb.connection.mode`:** if not `gateway` (the default value is assumed to be `gateway`). -**[2] `db.cosmosdb.connection_mode`:** if not `gateway` (the default value is assumed to be `gateway`). +**[2] `az.cosmosdb.request.regions_contacted`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) -**[3] `db.cosmosdb.regions_contacted`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) +**[3] `db.collection.name`:** It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. **[4] `db.operation.name`:** The `db.operation.name` has the following list of well-known values. If one of them applies, then the respective value MUST be used. @@ -239,7 +239,7 @@ and SHOULD be provided **at span creation time** (if provided at all): --- -`db.cosmosdb.connection_mode` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. +`az.cosmosdb.connection.mode` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | Stability | |---|---|---| @@ -248,7 +248,7 @@ and SHOULD be provided **at span creation time** (if provided at all): --- -`db.cosmosdb.consistency_level` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. +`az.cosmosdb.consistency.level` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | Stability | |---|---|---| @@ -277,7 +277,7 @@ and SHOULD be provided **at span creation time** (if provided at all): |:-------------------------------------| :------------------- | | Span name | `"read_item orders"` | | `az.namespace` | `"Microsoft.DocumentDB"` | -| `db.system` | `"cosmosdb"` | +| `db.system.name` | `"cosmosdb"` | | `db.collection.name` | `"orders"` | | `db.namespace` | `"ShopDb"` | | `db.operation.name` | `"read_item"` | @@ -299,9 +299,9 @@ This metric is [required][MetricRequired]. It captures the total time taken by an Azure Cosmos DB operation. This metric follows the common [db.client.operation.duration](/docs/database/database-metrics.md#metric-dbclientoperationduration) definition. -Refer [db.client.cosmosdb.operation.request_charge](#metric-dbclientcosmosdboperationrequest_charge) metrics for dimensions. +Refer [az.cosmosdb.client.operation.request_charge](#metric-dbclientcosmosdboperationrequest_charge) metrics for dimensions. -### Metric: `db.client.response.returned_rows` +### Metric: `az.cosmosdb.client.response.returned_rows` This metric is [required][MetricRequired]. @@ -309,7 +309,7 @@ It captures the number of items returned by a query or feed operation in Azure C Refer [db.client.cosmosdb.operation.request_charge](#metric-dbclientcosmosdboperationrequest_charge) metrics for dimensions. -### Metric: `db.client.cosmosdb.operation.request_charge` +### Metric: `az.cosmosdb.client.operation.request_charge` This metric is [required][MetricRequired]. @@ -326,7 +326,7 @@ Explaining bucket configuration: 3. 100, 250: Higher Usage Levels, These boundaries represent operations that may require significant resources, such as complex queries or larger transactions. Monitoring RUs in these ranges can help identify performance bottlenecks or costly queries that might lead to throttling. 4. 500, 1000: Very High Usage Levels, These buckets capture operations that consume a substantial number of Request Units, which may indicate potentially expensive queries or batch processes. Understanding the frequency and patterns of such high RU usage can be critical in optimizing performance and ensuring the application remains within provisioned throughput limits. - + @@ -335,19 +335,19 @@ Explaining bucket configuration: | Name | Instrument Type | Unit (UCUM) | Description | Stability | | -------- | --------------- | ----------- | -------------- | --------- | -| `db.client.cosmosdb.operation.request_charge` | Histogram | `{request_unit}` | [Request charge](https://learn.microsoft.com/azure/cosmos-db/request-units) consumed by the operation | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `az.cosmosdb.client.operation.request_charge` | Histogram | `{request_unit}` | [Request charge](https://learn.microsoft.com/azure/cosmos-db/request-units) consumed by the operation | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| +| [`az.cosmosdb.consistency.level`](/docs/attributes-registry/azure.md) | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`az.cosmosdb.response.sub_status_code`](/docs/attributes-registry/azure.md) | int | Cosmos DB sub status code. | `1000`; `1002` | `Conditionally Required` when response was received and contained sub-code. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | Cosmos DB container name. [1] | `public.users`; `customers` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| [`db.cosmosdb.consistency_level`](/docs/attributes-registry/db.md) | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`db.cosmosdb.sub_status_code`](/docs/attributes-registry/db.md) | int | Cosmos DB sub status code. | `1000`; `1002` | `Conditionally Required` when response was received and contained sub-code. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the database, fully qualified within the server address and port. | `customers`; `test.users` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.operation.name`](/docs/attributes-registry/db.md) | string | The name of the operation or command being executed. [2] | `findAndModify`; `HMSET`; `SELECT` | `Conditionally Required` [3] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.response.status_code`](/docs/attributes-registry/db.md) | string | Database response status code. [4] | `102`; `ORA-17002`; `08P01`; `404` | `Conditionally Required` [5] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`error.type`](/docs/attributes-registry/error.md) | string | Describes a class of error the operation ended with. [6] | `timeout`; `java.net.UnknownHostException`; `server_certificate_invalid`; `500` | `Conditionally Required` If and only if the operation failed. | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`server.port`](/docs/attributes-registry/server.md) | int | Server port number. [7] | `80`; `8080`; `443` | `Conditionally Required` [8] | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | -| [`db.cosmosdb.regions_contacted`](/docs/attributes-registry/db.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [9] | `["North Central US", "Australia East", "Australia Southeast"]` | `Recommended` If available | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`az.cosmosdb.request.regions_contacted`](/docs/attributes-registry/azure.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [9] | `["North Central US", "Australia East", "Australia Southeast"]` | `Recommended` If available | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`server.address`](/docs/attributes-registry/server.md) | string | Name of the database host. [10] | `example.com`; `10.1.2.80`; `/tmp/my.sock` | `Recommended` | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | **[1] `db.collection.name`:** It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. @@ -384,13 +384,13 @@ Instrumentations SHOULD document how `error.type` is populated. **[8] `server.port`:** If using a port other than the default port for this DBMS and if `server.address` is set. -**[9] `db.cosmosdb.regions_contacted`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) +**[9] `az.cosmosdb.request.regions_contacted`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) **[10] `server.address`:** When observed from the client side, and when communicating through an intermediary, `server.address` SHOULD represent the server address behind any intermediaries, for example proxies, if it's available. --- -`db.cosmosdb.consistency_level` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. +`az.cosmosdb.consistency.level` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | Stability | |---|---|---| @@ -413,13 +413,13 @@ Instrumentations SHOULD document how `error.type` is populated. -### Metric: `db.client.cosmosdb.active_instance.count` +### Metric: `az.cosmosdb.client.active_instance.count` This metric is [required][MetricRequired]. It captures the number of active instances at any given time. Best practices dictate that there should ideally be only one instance of the SDK client per Azure Cosmos DB account. Having multiple instances of the SDK client for the same account in a single process can lead to CPU or memory-related issues. - + @@ -428,7 +428,7 @@ It captures the number of active instances at any given time. Best practices dic | Name | Instrument Type | Unit (UCUM) | Description | Stability | | -------- | --------------- | ----------- | -------------- | --------- | -| `db.client.cosmosdb.active_instance.count` | UpDownCounter | `{instance}` | Number of active client instances | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `az.cosmosdb.client.active_instance.count` | UpDownCounter | `{instance}` | Number of active client instances | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| diff --git a/docs/database/couchdb.md b/docs/database/couchdb.md index 873bd36565..46f5db3afc 100644 --- a/docs/database/couchdb.md +++ b/docs/database/couchdb.md @@ -8,7 +8,7 @@ linkTitle: CouchDB The Semantic Conventions for [CouchDB](https://couchdb.apache.org/) extend and override the [Database Semantic Conventions](database-spans.md). -`db.system` MUST be set to `"couchdb"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"couchdb"` and SHOULD be provided **at span creation time**. ## Attributes diff --git a/docs/database/database-metrics.md b/docs/database/database-metrics.md index 47412d1ac3..e72ef48de1 100644 --- a/docs/database/database-metrics.md +++ b/docs/database/database-metrics.md @@ -83,7 +83,7 @@ of `[ 0.001, 0.005, 0.01, 0.05, 0.1, 0.5, 1, 5, 10 ]`. | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| -| [`db.system`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `adabas`; `cache` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| [`db.system.name`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `adabas`; `actian.ingres` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | The name of a collection (table, container) within the database. [2] | `public.users`; `customers` | `Conditionally Required` [3] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the database, fully qualified within the server address and port. [4] | `customers`; `test.users` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.operation.name`](/docs/attributes-registry/db.md) | string | The name of the operation or command being executed. [5] | `findAndModify`; `HMSET`; `SELECT` | `Conditionally Required` [6] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -96,7 +96,7 @@ of `[ 0.001, 0.005, 0.01, 0.05, 0.1, 0.5, 1, 5, 10 ]`. | [`server.address`](/docs/attributes-registry/server.md) | string | Name of the database host. [15] | `example.com`; `10.1.2.80`; `/tmp/my.sock` | `Recommended` | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`db.query.text`](/docs/attributes-registry/db.md) | string | The database query being executed. [16] | `SELECT * FROM wuser_table where username = ?`; `SET mykey ?` | `Opt-In` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -**[1] `db.system`:** The actual DBMS may differ from the one identified by the client. For example, when using PostgreSQL client libraries to connect to a CockroachDB, the `db.system` is set to `postgresql` based on the instrumentation's best knowledge. +**[1] `db.system.name`:** The actual DBMS may differ from the one identified by the client. For example, when using PostgreSQL client libraries to connect to a CockroachDB, the `db.system.name` is set to `postgresql` based on the instrumentation's best knowledge. **[2] `db.collection.name`:** It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. @@ -154,58 +154,53 @@ Even though parameterized query text can potentially have sensitive data, by usi --- -`db.system` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. +`db.system.name` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | Stability | |---|---|---| +| `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `cassandra` | Apache Cassandra | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `clickhouse` | ClickHouse | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `cockroachdb` | CockroachDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `cosmosdb` | Microsoft Azure Cosmos DB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `couchbase` | Couchbase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `couchdb` | CouchDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db2` | IBM Db2 | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `derby` | Apache Derby | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `dynamodb` | Amazon DynamoDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `edb` | EnterpriseDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `elasticsearch` | Elasticsearch | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `filemaker` | FileMaker | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `firebird` | Firebird | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `geode` | Apache Geode | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `h2` | H2 | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hanadb` | SAP HANA | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hbase` | Apache HBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hive` | Apache Hive | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hsqldb` | HyperSQL DataBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `influxdb` | InfluxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `informix` | Informix | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `ingres` | Ingres | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `instantdb` | InstantDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `interbase` | InterBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `intersystems_cache` | InterSystems Caché | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mariadb` | MariaDB (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `az.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cassandra` | [Apache Cassandra](https://cassandra.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `clickhouse` | [ClickHouse](https://clickhouse.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cockroachdb` | [CockroachDB](https://www.cockroachlabs.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `couchbase` | [Couchbase](https://www.couchbase.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `couchdb` | [Apache CouchDB](https://couchdb.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `derby` | [Apache Derby](https://db.apache.org/derby/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `edb` | [EnterpriseDB](https://www.enterprisedb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `elasticsearch` | [Elasticsearch](https://www.elastic.co/elasticsearch) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `firebird` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hive` | [Apache Hive](https://hive.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.db2` | [IBM Db2](https://www.ibm.com/db2) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.informix` | [IBM Informix](https://www.ibm.com/products/informix) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.netezza` | IBM Netezza | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `influxdb` | [InfluxDB](https://www.influxdata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `instantdb` | [InstantDB](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mariadb` | MariaDB | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `memcached` | Memcached | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `mongodb` | MongoDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mssql` | Microsoft SQL Server (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `mysql` | MySQL (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `mssql` | Microsoft SQL Server | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `mysql` | MySQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `neo4j` | Neo4j | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `netezza` | Netezza | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `opensearch` | OpenSearch | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `oracle` | Oracle Database | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `oracle` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `pervasive` | Pervasive PSQL | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `pointbase` | PointBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `postgresql` | PostgreSQL (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `progress` | Progress Database | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `postgresql` | PostgreSQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | Redis | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.hanadb` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `spanner` | Cloud Spanner | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | SQLite | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sybase` | Sybase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | Teradata | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `trino` | Trino | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `vertica` | Vertica | ![Experimental](https://img.shields.io/badge/-experimental-blue) | --- @@ -255,7 +250,7 @@ Explaining bucket configuration: | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| -| [`db.system`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `adabas`; `cache` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| [`db.system.name`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `adabas`; `actian.ingres` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | The name of a collection (table, container) within the database. [2] | `public.users`; `customers` | `Conditionally Required` [3] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the database, fully qualified within the server address and port. [4] | `customers`; `test.users` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.operation.name`](/docs/attributes-registry/db.md) | string | The name of the operation or command being executed. [5] | `findAndModify`; `HMSET`; `SELECT` | `Conditionally Required` [6] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -268,7 +263,7 @@ Explaining bucket configuration: | [`server.address`](/docs/attributes-registry/server.md) | string | Name of the database host. [15] | `example.com`; `10.1.2.80`; `/tmp/my.sock` | `Recommended` | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`db.query.text`](/docs/attributes-registry/db.md) | string | The database query being executed. [16] | `SELECT * FROM wuser_table where username = ?`; `SET mykey ?` | `Opt-In` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -**[1] `db.system`:** The actual DBMS may differ from the one identified by the client. For example, when using PostgreSQL client libraries to connect to a CockroachDB, the `db.system` is set to `postgresql` based on the instrumentation's best knowledge. +**[1] `db.system.name`:** The actual DBMS may differ from the one identified by the client. For example, when using PostgreSQL client libraries to connect to a CockroachDB, the `db.system.name` is set to `postgresql` based on the instrumentation's best knowledge. **[2] `db.collection.name`:** It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. @@ -326,58 +321,53 @@ Even though parameterized query text can potentially have sensitive data, by usi --- -`db.system` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. +`db.system.name` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | Stability | |---|---|---| +| `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `cassandra` | Apache Cassandra | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `clickhouse` | ClickHouse | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `cockroachdb` | CockroachDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `cosmosdb` | Microsoft Azure Cosmos DB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `couchbase` | Couchbase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `couchdb` | CouchDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db2` | IBM Db2 | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `derby` | Apache Derby | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `dynamodb` | Amazon DynamoDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `edb` | EnterpriseDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `elasticsearch` | Elasticsearch | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `filemaker` | FileMaker | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `firebird` | Firebird | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `geode` | Apache Geode | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `h2` | H2 | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hanadb` | SAP HANA | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hbase` | Apache HBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hive` | Apache Hive | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hsqldb` | HyperSQL DataBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `influxdb` | InfluxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `informix` | Informix | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `ingres` | Ingres | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `instantdb` | InstantDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `interbase` | InterBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `intersystems_cache` | InterSystems Caché | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mariadb` | MariaDB (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `az.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cassandra` | [Apache Cassandra](https://cassandra.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `clickhouse` | [ClickHouse](https://clickhouse.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cockroachdb` | [CockroachDB](https://www.cockroachlabs.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `couchbase` | [Couchbase](https://www.couchbase.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `couchdb` | [Apache CouchDB](https://couchdb.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `derby` | [Apache Derby](https://db.apache.org/derby/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `edb` | [EnterpriseDB](https://www.enterprisedb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `elasticsearch` | [Elasticsearch](https://www.elastic.co/elasticsearch) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `firebird` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hive` | [Apache Hive](https://hive.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.db2` | [IBM Db2](https://www.ibm.com/db2) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.informix` | [IBM Informix](https://www.ibm.com/products/informix) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.netezza` | IBM Netezza | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `influxdb` | [InfluxDB](https://www.influxdata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `instantdb` | [InstantDB](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mariadb` | MariaDB | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `memcached` | Memcached | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `mongodb` | MongoDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mssql` | Microsoft SQL Server (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `mysql` | MySQL (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `mssql` | Microsoft SQL Server | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `mysql` | MySQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `neo4j` | Neo4j | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `netezza` | Netezza | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `opensearch` | OpenSearch | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `oracle` | Oracle Database | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `oracle` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `pervasive` | Pervasive PSQL | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `pointbase` | PointBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `postgresql` | PostgreSQL (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `progress` | Progress Database | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `postgresql` | PostgreSQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | Redis | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.hanadb` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `spanner` | Cloud Spanner | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | SQLite | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sybase` | Sybase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | Teradata | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `trino` | Trino | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `vertica` | Vertica | ![Experimental](https://img.shields.io/badge/-experimental-blue) | --- diff --git a/docs/database/database-spans.md b/docs/database/database-spans.md index 5e1b17d4a5..23f96747f3 100644 --- a/docs/database/database-spans.md +++ b/docs/database/database-spans.md @@ -13,7 +13,7 @@ linkTitle: Client Calls - [Name](#name) - [Status](#status) - [Common attributes](#common-attributes) - - [Notes and well-known identifiers for `db.system`](#notes-and-well-known-identifiers-for-dbsystem) + - [Notes and well-known identifiers for `db.system.name`](#notes-and-well-known-identifiers-for-dbsystemname) - [Sanitization of `db.query.text`](#sanitization-of-dbquerytext) - [Generating a summary of the query text](#generating-a-summary-of-the-query-text) - [Semantic Conventions for specific database technologies](#semantic-conventions-for-specific-database-technologies) @@ -107,7 +107,7 @@ These attributes will usually be the same for all operations performed over the | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| -| [`db.system`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `adabas`; `cache` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| [`db.system.name`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `adabas`; `actian.ingres` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | The name of a collection (table, container) within the database. [2] | `public.users`; `customers` | `Conditionally Required` [3] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the database, fully qualified within the server address and port. [4] | `customers`; `test.users` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.operation.name`](/docs/attributes-registry/db.md) | string | The name of the operation or command being executed. [5] | `findAndModify`; `HMSET`; `SELECT` | `Conditionally Required` [6] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -123,7 +123,7 @@ These attributes will usually be the same for all operations performed over the | [`server.address`](/docs/attributes-registry/server.md) | string | Name of the database host. [18] | `example.com`; `10.1.2.80`; `/tmp/my.sock` | `Recommended` | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`db.operation.parameter.`](/docs/attributes-registry/db.md) | string | A database operation parameter, with `` being the parameter name, and the attribute value being a string representation of the parameter value. [19] | `someval`; `55` | `Opt-In` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -**[1] `db.system`:** The actual DBMS may differ from the one identified by the client. For example, when using PostgreSQL client libraries to connect to a CockroachDB, the `db.system` is set to `postgresql` based on the instrumentation's best knowledge. +**[1] `db.system.name`:** The actual DBMS may differ from the one identified by the client. For example, when using PostgreSQL client libraries to connect to a CockroachDB, the `db.system.name` is set to `postgresql` based on the instrumentation's best knowledge. **[2] `db.collection.name`:** It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. @@ -195,64 +195,59 @@ and SHOULD be provided **at span creation time** (if provided at all): * [`db.operation.name`](/docs/attributes-registry/db.md) * [`db.query.summary`](/docs/attributes-registry/db.md) * [`db.query.text`](/docs/attributes-registry/db.md) -* [`db.system`](/docs/attributes-registry/db.md) +* [`db.system.name`](/docs/attributes-registry/db.md) * [`server.address`](/docs/attributes-registry/server.md) * [`server.port`](/docs/attributes-registry/server.md) --- -`db.system` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. +`db.system.name` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | Stability | |---|---|---| +| `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `cassandra` | Apache Cassandra | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `clickhouse` | ClickHouse | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `cockroachdb` | CockroachDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `cosmosdb` | Microsoft Azure Cosmos DB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `couchbase` | Couchbase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `couchdb` | CouchDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `db2` | IBM Db2 | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `derby` | Apache Derby | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `dynamodb` | Amazon DynamoDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `edb` | EnterpriseDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `elasticsearch` | Elasticsearch | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `filemaker` | FileMaker | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `firebird` | Firebird | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `geode` | Apache Geode | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `h2` | H2 | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hanadb` | SAP HANA | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hbase` | Apache HBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hive` | Apache Hive | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `hsqldb` | HyperSQL DataBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `influxdb` | InfluxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `informix` | Informix | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `ingres` | Ingres | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `instantdb` | InstantDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `interbase` | InterBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `intersystems_cache` | InterSystems Caché | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mariadb` | MariaDB (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `az.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cassandra` | [Apache Cassandra](https://cassandra.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `clickhouse` | [ClickHouse](https://clickhouse.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cockroachdb` | [CockroachDB](https://www.cockroachlabs.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `couchbase` | [Couchbase](https://www.couchbase.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `couchdb` | [Apache CouchDB](https://couchdb.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `derby` | [Apache Derby](https://db.apache.org/derby/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `edb` | [EnterpriseDB](https://www.enterprisedb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `elasticsearch` | [Elasticsearch](https://www.elastic.co/elasticsearch) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `firebird` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hive` | [Apache Hive](https://hive.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.db2` | [IBM Db2](https://www.ibm.com/db2) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.informix` | [IBM Informix](https://www.ibm.com/products/informix) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.netezza` | IBM Netezza | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `influxdb` | [InfluxDB](https://www.influxdata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `instantdb` | [InstantDB](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mariadb` | MariaDB | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `memcached` | Memcached | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `mongodb` | MongoDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mssql` | Microsoft SQL Server (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `mysql` | MySQL (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `mssql` | Microsoft SQL Server | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `mysql` | MySQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `neo4j` | Neo4j | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `netezza` | Netezza | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `opensearch` | OpenSearch | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `oracle` | Oracle Database | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `oracle` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `pervasive` | Pervasive PSQL | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `pointbase` | PointBase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `postgresql` | PostgreSQL (This value has stability level RELEASE CANDIDATE) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `progress` | Progress Database | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `postgresql` | PostgreSQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | Redis | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.hanadb` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `spanner` | Cloud Spanner | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | SQLite | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sybase` | Sybase | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | Teradata | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `trino` | Trino | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `vertica` | Vertica | ![Experimental](https://img.shields.io/badge/-experimental-blue) | --- @@ -268,9 +263,9 @@ and SHOULD be provided **at span creation time** (if provided at all): -### Notes and well-known identifiers for `db.system` +### Notes and well-known identifiers for `db.system.name` -The list above is a non-exhaustive list of well-known identifiers to be specified for `db.system`. +The list above is a non-exhaustive list of well-known identifiers to be specified for `db.system.name`. If a value defined in this list applies to the DBMS to which the request is sent, this value MUST be used. If no value defined in this list is suitable, a custom value MUST be provided. diff --git a/docs/database/dynamodb.md b/docs/database/dynamodb.md index 6f97387874..3041cf27a5 100644 --- a/docs/database/dynamodb.md +++ b/docs/database/dynamodb.md @@ -9,7 +9,7 @@ linkTitle: AWS DynamoDB The Semantic Conventions for [AWS DynamoDB](https://aws.amazon.com/dynamodb/) extend and override the general [AWS SDK Semantic Conventions](/docs/cloud-providers/aws-sdk.md) and [Database Semantic Conventions](database-spans.md). -`db.system` MUST be set to `"dynamodb"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"dynamodb"` and SHOULD be provided **at span creation time**. ## DynamoDB.BatchGetItem diff --git a/docs/database/elasticsearch.md b/docs/database/elasticsearch.md index da64ed62fa..31ef3cbb4e 100644 --- a/docs/database/elasticsearch.md +++ b/docs/database/elasticsearch.md @@ -8,7 +8,7 @@ linkTitle: Elasticsearch The Semantic Conventions for [Elasticsearch](https://www.elastic.co/) extend and override the [Database Semantic Conventions](database-spans.md). -`db.system` MUST be set to `"elasticsearch"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"elasticsearch"` and SHOULD be provided **at span creation time**. ## Span Name @@ -28,15 +28,15 @@ The **span name** follows the [general database span name guidelines](database-s | [`db.operation.name`](/docs/attributes-registry/db.md) | string | The name of the operation or command being executed. [1] | `search`; `ml.close_job`; `cat.aliases` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`http.request.method`](/docs/attributes-registry/http.md) | string | HTTP request method. [2] | `GET`; `POST`; `HEAD` | `Required` | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`url.full`](/docs/attributes-registry/url.md) | string | Absolute URL describing a network resource according to [RFC3986](https://www.rfc-editor.org/rfc/rfc3986) [3] | `https://localhost:9200/index/_search?q=user.id:kimchy` | `Required` | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | -| [`db.elasticsearch.path_parts.`](/docs/attributes-registry/db.md) | string | A dynamic value in the url path. [4] | `db.elasticsearch.path_parts.index=test-index`; `db.elasticsearch.path_parts.doc_id=123` | `Conditionally Required` when the url has dynamic values | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`db.response.status_code`](/docs/attributes-registry/db.md) | string | The HTTP response code returned by the Elasticsearch cluster. [5] | `200`; `201`; `429` | `Conditionally Required` If response was received. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| [`db.response.status_code`](/docs/attributes-registry/db.md) | string | The HTTP response code returned by the Elasticsearch cluster. [4] | `200`; `201`; `429` | `Conditionally Required` If response was received. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| [`elasticsearch.path_parts.`](/docs/attributes-registry/elasticsearch.md) | string | A dynamic value in the url path. [5] | `elasticsearch.path_parts.index=test-index`; `elasticsearch.path_parts.doc_id=123` | `Conditionally Required` when the url has dynamic values | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`error.type`](/docs/attributes-registry/error.md) | string | Describes a class of error the operation ended with. [6] | `timeout`; `java.net.UnknownHostException`; `server_certificate_invalid`; `500` | `Conditionally Required` If and only if the operation failed. | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`server.port`](/docs/attributes-registry/server.md) | int | Server port number. [7] | `80`; `8080`; `443` | `Conditionally Required` [8] | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | The index or data stream against which the query is executed. [9] | `my_index`; `index1, index2` | `Recommended` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| [`db.elasticsearch.node.name`](/docs/attributes-registry/db.md) | string | Represents the human-readable identifier of the node/instance to which a request was routed. [10] | `instance-0000000001` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the Elasticsearch cluster which the client connects to. [11] | `customers`; `test.users` | `Recommended` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| [`db.operation.batch.size`](/docs/attributes-registry/db.md) | int | The number of queries included in a batch operation. [12] | `2`; `3`; `4` | `Recommended` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| [`db.query.text`](/docs/attributes-registry/db.md) | string | The request body for a [search-type query](https://www.elastic.co/guide/en/elasticsearch/reference/current/search.html), as a json string. [13] | `"{\"query\":{\"term\":{\"user.id\":\"kimchy\"}}}"` | `Recommended` [14] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the Elasticsearch cluster which the client connects to. [10] | `customers`; `test.users` | `Recommended` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| [`db.operation.batch.size`](/docs/attributes-registry/db.md) | int | The number of queries included in a batch operation. [11] | `2`; `3`; `4` | `Recommended` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| [`db.query.text`](/docs/attributes-registry/db.md) | string | The request body for a [search-type query](https://www.elastic.co/guide/en/elasticsearch/reference/current/search.html), as a json string. [12] | `"{\"query\":{\"term\":{\"user.id\":\"kimchy\"}}}"` | `Recommended` [13] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| [`elasticsearch.node.name`](/docs/attributes-registry/elasticsearch.md) | string | Represents the human-readable identifier of the node/instance to which a request was routed. [14] | `instance-0000000001` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`server.address`](/docs/attributes-registry/server.md) | string | Name of the database host. [15] | `example.com`; `10.1.2.80`; `/tmp/my.sock` | `Recommended` | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | **[1] `db.operation.name`:** The `db.operation.name` SHOULD match the endpoint identifier provided in the request (see the [Elasticsearch schema](https://raw.githubusercontent.com/elastic/elasticsearch-specification/main/output/schema/schema.json)). @@ -80,9 +80,9 @@ This list is subject to change over time. When a query string value is redacted, the query string key SHOULD still be preserved, e.g. `https://www.example.com/path?color=blue&sig=REDACTED`. -**[4] `db.elasticsearch.path_parts`:** Many Elasticsearch url paths allow dynamic values. These SHOULD be recorded in span attributes in the format `db.elasticsearch.path_parts.`, where `` is the url path part name. The implementation SHOULD reference the [elasticsearch schema](https://raw.githubusercontent.com/elastic/elasticsearch-specification/main/output/schema/schema.json) in order to map the path part values to their names. +**[4] `db.response.status_code`:** HTTP response codes in the 4xx and 5xx range SHOULD be considered errors. -**[5] `db.response.status_code`:** HTTP response codes in the 4xx and 5xx range SHOULD be considered errors. +**[5] `elasticsearch.path_parts`:** Many Elasticsearch url paths allow dynamic values. These SHOULD be recorded in span attributes in the format `elasticsearch.path_parts.`, where `` is the url path part name. The implementation SHOULD reference the [elasticsearch schema](https://raw.githubusercontent.com/elastic/elasticsearch-specification/main/output/schema/schema.json) in order to map the path part values to their names. **[6] `error.type`:** The `error.type` SHOULD match the `db.response.status_code` returned by the database or the client library, or the canonical name of exception that occurred. When using canonical exception type name, instrumentation SHOULD do the best effort to report the most relevant type. For example, if the original exception is wrapped into a generic one, the original exception SHOULD be preferred. @@ -94,17 +94,17 @@ Instrumentations SHOULD document how `error.type` is populated. **[9] `db.collection.name`:** The query may target multiple indices or data streams, in which case it SHOULD be a comma separated list of those. If the query doesn't target a specific index, this field MUST NOT be set. -**[10] `db.elasticsearch.node.name`:** When communicating with an Elastic Cloud deployment, this should be collected from the "X-Found-Handling-Instance" HTTP response header. +**[10] `db.namespace`:** When communicating with an Elastic Cloud deployment, this should be collected from the "X-Found-Handling-Cluster" HTTP response header. -**[11] `db.namespace`:** When communicating with an Elastic Cloud deployment, this should be collected from the "X-Found-Handling-Cluster" HTTP response header. +**[11] `db.operation.batch.size`:** Operations are only considered batches when they contain two or more operations, and so `db.operation.batch.size` SHOULD never be `1`. -**[12] `db.operation.batch.size`:** Operations are only considered batches when they contain two or more operations, and so `db.operation.batch.size` SHOULD never be `1`. - -**[13] `db.query.text`:** For sanitization see [Sanitization of `db.query.text`](../../docs/database/database-spans.md#sanitization-of-dbquerytext). +**[12] `db.query.text`:** For sanitization see [Sanitization of `db.query.text`](../../docs/database/database-spans.md#sanitization-of-dbquerytext). For batch operations, if the individual operations are known to have the same query text then that query text SHOULD be used, otherwise all of the individual query texts SHOULD be concatenated with separator `; ` or some other database system specific separator if more applicable. Even though parameterized query text can potentially have sensitive data, by using a parameterized query the user is giving a strong signal that any sensitive data will be passed as parameter values, and the benefit to observability of capturing the static part of the query text by default outweighs the risk. -**[14] `db.query.text`:** Should be collected by default for search-type queries and only if there is sanitization that excludes sensitive information. +**[13] `db.query.text`:** Should be collected by default for search-type queries and only if there is sanitization that excludes sensitive information. + +**[14] `elasticsearch.node.name`:** When communicating with an Elastic Cloud deployment, this should be collected from the "X-Found-Handling-Instance" HTTP response header. **[15] `server.address`:** When observed from the client side, and when communicating through an intermediary, `server.address` SHOULD represent the server address behind any intermediaries, for example proxies, if it's available. @@ -155,7 +155,7 @@ and SHOULD be provided **at span creation time** (if provided at all): | Key | Value | |:------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------| | Span name | `"search my-index"` | -| `db.system` | `"elasticsearch"` | +| `db.system.name` | `"elasticsearch"` | | `server.address` | `"elasticsearch.mydomain.com"` | | `server.port` | `9200` | | `http.request.method` | `"GET"` | @@ -163,8 +163,8 @@ and SHOULD be provided **at span creation time** (if provided at all): | `db.operation.name` | `"search"` | | `db.collection.name` | `"my-index"` | | `url.full` | `"https://elasticsearch.mydomain.com:9200/my-index-000001/_search?from=40&size=20"` | -| `db.elasticsearch.path_parts.index` | `"my-index-000001"` | | `db.namespace` | `"my-cluster"` | -| `db.elasticsearch.node.name` | `"instance-0000000001"` | +| `elasticsearch.node.name` | `"instance-0000000001"` | +| `elasticsearch.path_parts.index` | `"my-index-000001"` | [DocumentStatus]: https://opentelemetry.io/docs/specs/otel/document-status diff --git a/docs/database/hbase.md b/docs/database/hbase.md index 37d4d29163..03ec2c67b3 100644 --- a/docs/database/hbase.md +++ b/docs/database/hbase.md @@ -8,7 +8,7 @@ linkTitle: HBase The Semantic Conventions for [HBase](https://hbase.apache.org/) extend and override the [Database Semantic Conventions](database-spans.md). -`db.system` MUST be set to `"hbase"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"hbase"` and SHOULD be provided **at span creation time**. ## Attributes diff --git a/docs/database/mariadb.md b/docs/database/mariadb.md index e34fc231da..6c3fdf351e 100644 --- a/docs/database/mariadb.md +++ b/docs/database/mariadb.md @@ -8,7 +8,7 @@ linkTitle: MariaDB The Semantic Conventions for *MariaDB* extend and override the [Database Semantic Conventions](database-spans.md). -`db.system` MUST be set to `"mariadb"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"mariadb"` and SHOULD be provided **at span creation time**. ## Attributes diff --git a/docs/database/mongodb.md b/docs/database/mongodb.md index 0c8dbe46ba..e298e40537 100644 --- a/docs/database/mongodb.md +++ b/docs/database/mongodb.md @@ -8,7 +8,7 @@ linkTitle: MongoDB The Semantic Conventions for [MongoDB](https://www.mongodb.com/) extend and override the [Database Semantic Conventions](database-spans.md). -`db.system` MUST be set to `"mongodb"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"mongodb"` and SHOULD be provided **at span creation time**. ## Attributes @@ -83,7 +83,7 @@ and SHOULD be provided **at span creation time** (if provided at all): | Key | Value | |:------------------------| :----------------------------------------------------------- | | Span name | `"findAndModify products"` | -| `db.system` | `"mongodb"` | +| `db.system.name` | `"mongodb"` | | `server.address` | `"mongodb0.example.com"` | | `server.port` | `27017` | | `network.peer.address` | `"192.0.2.14"` | diff --git a/docs/database/mssql.md b/docs/database/mssql.md index 5b30b833fb..9d075ca6ea 100644 --- a/docs/database/mssql.md +++ b/docs/database/mssql.md @@ -8,7 +8,7 @@ linkTitle: MSSQL The Semantic Conventions for the *Microsoft SQL Server* extend and override the [Database Semantic Conventions](database-spans.md). -`db.system` MUST be set to `"mssql"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"mssql"` and SHOULD be provided **at span creation time**. ## Attributes diff --git a/docs/database/mysql.md b/docs/database/mysql.md index 19b42520c0..13b44e171f 100644 --- a/docs/database/mysql.md +++ b/docs/database/mysql.md @@ -8,7 +8,7 @@ linkTitle: MySQL The Semantic Conventions for *MySQL* extend and override the [Database Semantic Conventions](database-spans.md). -`db.system` MUST be set to `"mysql"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"mysql"` and SHOULD be provided **at span creation time**. ## Attributes diff --git a/docs/database/postgresql.md b/docs/database/postgresql.md index 27c269ea39..6fd1c14fad 100644 --- a/docs/database/postgresql.md +++ b/docs/database/postgresql.md @@ -8,7 +8,7 @@ linkTitle: PostgreSQL The Semantic Conventions for *PostgreSQL* extend and override the [Database Semantic Conventions](database-spans.md). -`db.system` MUST be set to `"postgresql"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"postgresql"` and SHOULD be provided **at span creation time**. ## Attributes diff --git a/docs/database/redis.md b/docs/database/redis.md index 8ef933e7a4..fc36043e9c 100644 --- a/docs/database/redis.md +++ b/docs/database/redis.md @@ -8,7 +8,7 @@ linkTitle: Redis The Semantic Conventions for [Redis](https://redis.com/) extend and override the [Database Semantic Conventions](database-spans.md). -`db.system` MUST be set to `"redis"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"redis"` and SHOULD be provided **at span creation time**. ## Span name @@ -116,7 +116,7 @@ In this example, Redis is connected using a unix domain socket and therefore the | Key | Value | |:--------------------------| :-------------------------------------------- | | Span name | `"HMSET 15"` | -| `db.system` | `"redis"` | +| `db.system.name` | `"redis"` | | `network.peer.address` | `"/tmp/redis.sock"` | | `network.transport` | `"unix"` | | `db.namespace` | `"15"` | diff --git a/docs/database/sql.md b/docs/database/sql.md index b935d68ee7..b3d58aca85 100644 --- a/docs/database/sql.md +++ b/docs/database/sql.md @@ -8,7 +8,7 @@ linkTitle: SQL The SQL databases Semantic Conventions describes how common [Database Semantic Conventions](database-spans.md) apply to SQL databases. -The following database systems (defined in the [`db.system`](./database-spans.md#notes-and-well-known-identifiers-for-dbsystem) set) are known to use SQL as their primary query language: +The following database systems (defined in the [`db.system.name`](./database-spans.md#notes-and-well-known-identifiers-for-dbsystem) set) are known to use SQL as their primary query language: - `cockroachdb` - `db2` @@ -166,7 +166,7 @@ This is an example of attributes for a MySQL database span: |:-----------------------| :----------------------------------------------------------- | | Span name | `"SELECT orders"` | | `db.namespace` | `"ShopDb"` | -| `db.system` | `"mysql"` | +| `db.system.name` | `"mysql"` | | `server.address` | `"shopdb.example.com"` | | `server.port` | `3306` | | `db.query.text` | `"SELECT * FROM orders WHERE order_id = 'o4711'"` | diff --git a/docs/general/attribute-requirement-level.md b/docs/general/attribute-requirement-level.md index 3a962bef7d..39c96791ee 100644 --- a/docs/general/attribute-requirement-level.md +++ b/docs/general/attribute-requirement-level.md @@ -59,7 +59,7 @@ example of a Required attribute. _Note: Consumers of telemetry can detect if a telemetry item follows a specific semantic convention by checking for the presence of a `Required` attribute -defined by such convention. For example, the presence of the `db.system` +defined by such convention. For example, the presence of the `db.system.name` attribute on a span can be used as an indication that the span follows database semantics._ diff --git a/model/database/cosmosdb-metrics.yaml b/model/azure/cosmosdb-metrics.yaml similarity index 67% rename from model/database/cosmosdb-metrics.yaml rename to model/azure/cosmosdb-metrics.yaml index bd2a548eed..740407004b 100644 --- a/model/database/cosmosdb-metrics.yaml +++ b/model/azure/cosmosdb-metrics.yaml @@ -1,27 +1,27 @@ groups: - - id: metric.db.client.cosmosdb.operation.request_charge + - id: metric.az.cosmosdb.client.operation.request_charge type: metric - metric_name: db.client.cosmosdb.operation.request_charge + metric_name: az.cosmosdb.client.operation.request_charge brief: "[Request charge](https://learn.microsoft.com/azure/cosmos-db/request-units) consumed by the operation" instrument: histogram unit: "{request_unit}" - stability: experimental - extends: attributes.db.cosmosdb.minimal + stability: development + extends: attributes.az.cosmosdb.minimal attributes: - - ref: db.cosmosdb.regions_contacted + - ref: az.cosmosdb.request.regions_contacted requirement_level: recommended: If available - - id: metric.db.client.cosmosdb.active_instance.count + - id: metric.az.cosmosdb.client.active_instance.count type: metric - metric_name: db.client.cosmosdb.active_instance.count + metric_name: az.cosmosdb.client.active_instance.count brief: "Number of active client instances" instrument: updowncounter unit: "{instance}" - stability: experimental + stability: development attributes: # TODO: add db.system once https://github.com/open-telemetry/build-tools/issues/192 is possible - # - ref: db.system + # - ref: db.system.name # requirement_level: # conditionally_required: if available - ref: server.address diff --git a/model/azure/registry.yaml b/model/azure/registry.yaml index dea2e1dd83..53bad79b84 100644 --- a/model/azure/registry.yaml +++ b/model/azure/registry.yaml @@ -7,14 +7,85 @@ groups: attributes: - id: az.service_request_id type: string - stability: experimental + stability: development brief: "The unique identifier of the service request. It's generated by the Azure service and returned with the response." examples: - "00000000-0000-0000-0000-000000000000" - id: az.namespace type: string - stability: experimental + stability: development brief: > [Azure Resource Provider Namespace](https://learn.microsoft.com/azure/azure-resource-manager/management/azure-services-resource-providers) as recognized by the client. examples: ["Microsoft.Storage", "Microsoft.KeyVault", "Microsoft.ServiceBus"] + - id: az.client.id + type: string + stability: development + brief: The unique identifier of the client instance. + examples: ["3ba4827d-4422-483f-b59f-85b74211c11d", "storage-client-1"] + - id: registry.azure.cosmosdb + type: attribute_group + display_name: Azure Cosmos DB Attributes + stability: development + brief: > + This group defines attributes for Azure Cosmos DB. + attributes: + - id: az.cosmosdb.connection.mode + type: + members: + - id: gateway + value: "gateway" + brief: Gateway (HTTP) connection. + stability: development + - id: direct + value: "direct" + brief: Direct connection. + stability: development + stability: development + brief: Cosmos client connection mode. + - id: az.cosmosdb.request.charge + type: double + stability: development + brief: Request units consumed for the operation. + examples: [46.18, 1.0] + - id: az.cosmosdb.request.content_length + type: int + stability: development + brief: Request payload size in bytes. + - id: az.cosmosdb.request.regions_contacted + type: string[] + stability: development + brief: > + List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, + it indicates that the operation was performed on multiple regions i.e. cross-regional call. + note: > + Region name matches the format of `displayName` + in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) + examples: + - ["North Central US", "Australia East", "Australia Southeast"] + - id: az.cosmosdb.response.sub_status_code + type: int + stability: development + brief: Cosmos DB sub status code. + examples: [1000, 1002] + - id: az.cosmosdb.consistency.level + type: + members: + - id: strong + value: "Strong" + stability: development + - id: bounded_staleness + value: "BoundedStaleness" + stability: development + - id: session + value: "Session" + stability: development + - id: eventual + value: "Eventual" + stability: development + - id: consistent_prefix + value: "ConsistentPrefix" + stability: development + stability: development + brief: Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). + examples: ["Eventual", "ConsistentPrefix", "BoundedStaleness", "Strong", "Session"] diff --git a/model/cassandra/registry.yaml b/model/cassandra/registry.yaml new file mode 100644 index 0000000000..bf97c1a8e3 --- /dev/null +++ b/model/cassandra/registry.yaml @@ -0,0 +1,75 @@ +groups: + - id: registry.cassandra + type: attribute_group + display_name: Cassandra Attributes + brief: > + This group defines attributes for Cassandra. + attributes: + - id: cassandra.coordinator.dc + type: string + stability: development + brief: > + The data center of the coordinating node for a query. + examples: "us-west-2" + - id: cassandra.coordinator.id + type: string + stability: development + brief: > + The ID of the coordinating node for a query. + examples: "be13faa2-8574-4d71-926d-27f16cf8a7af" + - id: cassandra.consistency.level + brief: > + The consistency level of the query. Based on consistency values from [CQL](https://docs.datastax.com/en/cassandra-oss/3.0/cassandra/dml/dmlConfigConsistency.html). + type: + members: + - id: all + value: "all" + stability: development + - id: each_quorum + value: "each_quorum" + stability: development + - id: quorum + value: "quorum" + stability: development + - id: local_quorum + value: "local_quorum" + stability: development + - id: one + value: "one" + stability: development + - id: two + value: "two" + stability: development + - id: three + value: "three" + stability: development + - id: local_one + value: "local_one" + stability: development + - id: any + value: "any" + stability: development + - id: serial + value: "serial" + stability: development + - id: local_serial + value: "local_serial" + stability: development + stability: development + - id: cassandra.idempotence + type: boolean + stability: development + brief: > + Whether or not the query is idempotent. + - id: cassandra.page_size + type: int + stability: development + brief: > + The fetch size used for paging, i.e. how many rows will be returned at once. + examples: [5000] + - id: cassandra.speculative_execution_count + type: int + stability: development + brief: > + The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. + examples: [0, 2] diff --git a/model/database/common.yaml b/model/database/common.yaml index 2e8fe7b188..f3714bb06e 100644 --- a/model/database/common.yaml +++ b/model/database/common.yaml @@ -26,14 +26,14 @@ groups: Instrumentations SHOULD document how `error.type` is populated. - - id: attributes.db.cosmosdb.minimal + - id: attributes.az.cosmosdb.minimal type: attribute_group brief: 'Azure Cosmos DB Client attributes' - stability: experimental + stability: development extends: attributes.db.client.minimal attributes: # TODO: add db.system once https://github.com/open-telemetry/build-tools/issues/192 is possible - # - ref: db.system + # - ref: db.system.name # requirement_level: # conditionally_required: if available - ref: db.operation.name @@ -50,10 +50,10 @@ groups: requirement_level: conditionally_required: If available. note: "" # overriding the base note - - ref: db.cosmosdb.sub_status_code + - ref: az.cosmosdb.response.sub_status_code requirement_level: conditionally_required: when response was received and contained sub-code. - - ref: db.cosmosdb.consistency_level + - ref: az.cosmosdb.consistency.level requirement_level: conditionally_required: If available. diff --git a/model/database/deprecated/metrics-deprecated.yaml b/model/database/deprecated/metrics-deprecated.yaml index ebe45355d9..dcff7f74a5 100644 --- a/model/database/deprecated/metrics-deprecated.yaml +++ b/model/database/deprecated/metrics-deprecated.yaml @@ -108,3 +108,53 @@ groups: attributes: - ref: db.client.connections.pool.name requirement_level: required + + - id: metric.db.client.cosmosdb.operation.request_charge + type: metric + metric_name: db.client.cosmosdb.operation.request_charge + brief: "Deprecated, use `az.cosmosdb.client.request.charge` instead." + deprecated: "Replaced by `az.cosmosdb.client.request.charge`." + instrument: histogram + unit: "{request_unit}" + stability: experimental + attributes: + - ref: db.operation.name + requirement_level: + conditionally_required: > + If readily available and if there is a single operation name that describes the + database call. The operation name MAY be parsed from the query text, + in which case it SHOULD be the single operation name found in the query. + - ref: db.collection.name + brief: Cosmos DB container name. + requirement_level: + conditionally_required: If available. + - ref: db.namespace + requirement_level: + conditionally_required: If available. + note: "" + - ref: db.cosmosdb.sub_status_code + requirement_level: + conditionally_required: when response was received and contained sub-code. + - ref: db.cosmosdb.consistency_level + requirement_level: + conditionally_required: If available. + - ref: db.cosmosdb.regions_contacted + requirement_level: + recommended: If available + + - id: metric.db.client.cosmosdb.active_instance.count + type: metric + metric_name: db.client.cosmosdb.active_instance.count + brief: "Deprecated, use `az.cosmosdb.client.active_instance.count` instead." + deprecated: "Replaced by `az.cosmosdb.client.active_instance.count`." + instrument: updowncounter + unit: "{instance}" + stability: experimental + attributes: + - ref: server.address + brief: > + Name of the database host. + - ref: server.port + requirement_level: + conditionally_required: If using a port other than the default port for this DBMS and if `server.address` is set. + diff --git a/model/database/deprecated/registry-deprecated.yaml b/model/database/deprecated/registry-deprecated.yaml index ce41bced8f..6bcfaf2720 100644 --- a/model/database/deprecated/registry-deprecated.yaml +++ b/model/database/deprecated/registry-deprecated.yaml @@ -157,6 +157,386 @@ groups: deprecated: "No replacement at this time." brief: Deprecated, no replacement at this time. + - id: db.cassandra.coordinator.dc + type: string + stability: experimental + brief: "Deprecated, use `cassandra.coordinator.dc` instead." + deprecated: "Replaced by `cassandra.coordinator.dc`." + examples: "us-west-2" + - id: db.cassandra.coordinator.id + type: string + stability: experimental + brief: "Deprecated, use `cassandra.coordinator.id` instead." + deprecated: "Replaced by `cassandra.coordinator.id`." + examples: "be13faa2-8574-4d71-926d-27f16cf8a7af" + - id: db.cassandra.consistency_level + brief: "Deprecated, use `cassandra.consistency.level` instead." + deprecated: "Replaced by `cassandra.consistency.level`." + type: + members: + - id: all + value: "all" + stability: experimental + - id: each_quorum + value: "each_quorum" + stability: experimental + - id: quorum + value: "quorum" + stability: experimental + - id: local_quorum + value: "local_quorum" + stability: experimental + - id: one + value: "one" + stability: experimental + - id: two + value: "two" + stability: experimental + - id: three + value: "three" + stability: experimental + - id: local_one + value: "local_one" + stability: experimental + - id: any + value: "any" + stability: experimental + - id: serial + value: "serial" + stability: experimental + - id: local_serial + value: "local_serial" + stability: experimental + stability: experimental + - id: db.cassandra.idempotence + type: boolean + stability: experimental + brief: "Deprecated, use `cassandra.idempotence` instead." + deprecated: "Replaced by `cassandra.idempotence`." + - id: db.cassandra.page_size + type: int + stability: experimental + brief: "Deprecated, use `cassandra.page_size` instead." + deprecated: "Replaced by `cassandra.page_size`." + examples: [5000] + - id: db.cassandra.speculative_execution_count + type: int + stability: experimental + brief: "Deprecated, use `cassandra.speculative_execution_count` instead." + deprecated: "Replaced by `cassandra.speculative_execution_count`." + examples: [0, 2] + - id: db.cosmosdb.client_id + type: string + stability: experimental + brief: "Deprecated, use `az.client.id` instead." + deprecated: "Replaced by `az.client.id`." + examples: "3ba4827d-4422-483f-b59f-85b74211c11d" + - id: db.cosmosdb.connection_mode + type: + members: + - id: gateway + value: "gateway" + brief: Gateway (HTTP) connection. + stability: experimental + - id: direct + value: "direct" + brief: Direct connection. + stability: experimental + stability: experimental + brief: "Deprecated, use `az.cosmosdb.connection.mode` instead." + deprecated: "Replaced by `az.cosmosdb.connection.mode`." + - id: db.cosmosdb.request_charge + type: double + stability: experimental + brief: "Deprecated, use `az.cosmosdb.request.charge` instead." + deprecated: "Replaced by `az.cosmosdb.request.charge`." + examples: [46.18, 1.0] + - id: db.cosmosdb.request_content_length + type: int + stability: experimental + brief: "Deprecated, use `az.cosmosdb.request.content_length` instead." + deprecated: "Replaced by `az.cosmosdb.request.content_length`." + - id: db.cosmosdb.sub_status_code + type: int + stability: experimental + brief: "Deprecated, use `cosmosdb.response.sub_status_code` instead." + deprecated: "Replaced by `az.cosmosdb.response.sub_status_code`." + examples: [1000, 1002] + - id: db.cosmosdb.consistency_level + type: + members: + - id: strong + value: "Strong" + stability: experimental + - id: bounded_staleness + value: "BoundedStaleness" + stability: experimental + - id: session + value: "Session" + stability: experimental + - id: eventual + value: "Eventual" + stability: experimental + - id: consistent_prefix + value: "ConsistentPrefix" + stability: experimental + stability: experimental + brief: "Deprecated, use `cosmosdb.consistency.level` instead." + deprecated: "Replaced by `az.cosmosdb.consistency.level`." + examples: ["Eventual", "ConsistentPrefix", "BoundedStaleness", "Strong", "Session"] + - id: db.cosmosdb.regions_contacted + type: string[] + stability: experimental + brief: "Deprecated, use `az.cosmosdb.request.regions_contacted` instead." + deprecated: "Replaced by `az.cosmosdb.request.regions_contacted`." + examples: + - ["North Central US", "Australia East", "Australia Southeast"] + - id: db.elasticsearch.node.name + type: string + stability: experimental + brief: > + Deprecated, use `elasticsearch.node.name` instead. + deprecated: "Replaced by `elasticsearch.node.name`." + examples: ["instance-0000000001"] + - id: db.elasticsearch.path_parts + type: template[string] + stability: experimental + brief: > + Deprecated, use `elasticsearch.path_parts` instead. + deprecated: "Replaced by `elasticsearch.path_parts`." + examples: + [ + "db.elasticsearch.path_parts.index=test-index", + "db.elasticsearch.path_parts.doc_id=123", + ] + - id: db.system + brief: "Deprecated, use `db.system.name` instead." + deprecated: "Replaced by `db.system.name`." + type: + members: + - id: other_sql + value: "other_sql" + brief: "Some other SQL database. Fallback only. See notes." + stability: experimental + - id: adabas + value: "adabas" + brief: "Adabas (Adaptable Database System)" + stability: experimental + - id: cache + value: "cache" + deprecated: "Replaced by `intersystems_cache`." + brief: "Deprecated, use `intersystems_cache` instead." + stability: experimental + - id: intersystems_cache + value: "intersystems_cache" + brief: "InterSystems Caché" + stability: experimental + - id: cassandra + value: "cassandra" + brief: "Apache Cassandra" + stability: experimental + - id: clickhouse + value: "clickhouse" + brief: "ClickHouse" + stability: experimental + - id: cloudscape + value: "cloudscape" + deprecated: "Replaced by `other_sql`." + brief: "Deprecated, use `other_sql` instead." + stability: experimental + - id: cockroachdb + value: "cockroachdb" + brief: "CockroachDB" + stability: experimental + - id: coldfusion + value: "coldfusion" + deprecated: "Removed." + brief: "Deprecated, no replacement at this time." + stability: experimental + - id: cosmosdb + value: "cosmosdb" + brief: "Microsoft Azure Cosmos DB" + stability: experimental + - id: couchbase + value: "couchbase" + brief: "Couchbase" + stability: experimental + - id: couchdb + value: "couchdb" + brief: "CouchDB" + stability: experimental + - id: db2 + value: "db2" + brief: "IBM Db2" + stability: experimental + - id: derby + value: "derby" + brief: "Apache Derby" + stability: experimental + - id: dynamodb + value: "dynamodb" + brief: "Amazon DynamoDB" + stability: experimental + - id: edb + value: "edb" + brief: "EnterpriseDB" + stability: experimental + - id: elasticsearch + value: "elasticsearch" + brief: "Elasticsearch" + stability: experimental + - id: filemaker + value: "filemaker" + brief: "FileMaker" + stability: experimental + - id: firebird + value: "firebird" + brief: "Firebird" + stability: experimental + - id: firstsql + value: "firstsql" + deprecated: "Replaced by `other_sql`." + brief: "Deprecated, use `other_sql` instead." + stability: experimental + - id: geode + value: "geode" + brief: "Apache Geode" + stability: experimental + - id: h2 + value: "h2" + brief: "H2" + stability: experimental + - id: hanadb + value: "hanadb" + brief: "SAP HANA" + stability: experimental + - id: hbase + value: "hbase" + brief: "Apache HBase" + stability: experimental + - id: hive + value: "hive" + brief: "Apache Hive" + stability: experimental + - id: hsqldb + value: "hsqldb" + brief: "HyperSQL DataBase" + stability: experimental + - id: influxdb + value: "influxdb" + brief: "InfluxDB" + stability: experimental + - id: informix + value: "informix" + brief: "Informix" + stability: experimental + - id: ingres + value: "ingres" + brief: "Ingres" + stability: experimental + - id: instantdb + value: "instantdb" + brief: "InstantDB" + stability: experimental + - id: interbase + value: "interbase" + brief: "InterBase" + stability: experimental + - id: mariadb + value: "mariadb" + brief: "MariaDB (This value has stability level RELEASE CANDIDATE)" + stability: release_candidate + - id: maxdb + value: "maxdb" + brief: "SAP MaxDB" + stability: experimental + - id: memcached + value: "memcached" + brief: "Memcached" + stability: experimental + - id: mongodb + value: "mongodb" + brief: "MongoDB" + stability: experimental + - id: mssql + value: "mssql" + brief: "Microsoft SQL Server (This value has stability level RELEASE CANDIDATE)" + stability: release_candidate + - id: mssqlcompact + value: "mssqlcompact" + deprecated: "Removed, use `other_sql` instead." + brief: "Deprecated, Microsoft SQL Server Compact is discontinued." + stability: experimental + - id: mysql + value: "mysql" + brief: "MySQL (This value has stability level RELEASE CANDIDATE)" + stability: release_candidate + - id: neo4j + value: "neo4j" + brief: "Neo4j" + stability: experimental + - id: netezza + value: "netezza" + brief: "Netezza" + stability: experimental + - id: opensearch + value: "opensearch" + brief: "OpenSearch" + stability: experimental + - id: oracle + value: "oracle" + brief: "Oracle Database" + stability: experimental + - id: pervasive + value: "pervasive" + brief: "Pervasive PSQL" + stability: experimental + - id: pointbase + value: "pointbase" + brief: "PointBase" + stability: experimental + - id: postgresql + value: "postgresql" + brief: "PostgreSQL (This value has stability level RELEASE CANDIDATE)" + stability: release_candidate + - id: progress + value: "progress" + brief: "Progress Database" + stability: experimental + - id: redis + value: "redis" + brief: "Redis" + stability: experimental + - id: redshift + value: "redshift" + brief: "Amazon Redshift" + stability: experimental + - id: spanner + value: "spanner" + brief: "Cloud Spanner" + stability: experimental + - id: sqlite + value: "sqlite" + brief: "SQLite" + stability: experimental + - id: sybase + value: "sybase" + brief: "Sybase" + stability: experimental + - id: teradata + value: "teradata" + brief: "Teradata" + stability: experimental + - id: trino + value: "trino" + brief: "Trino" + stability: experimental + - id: vertica + value: "vertica" + brief: "Vertica" + stability: experimental + stability: release_candidate + - id: registry.db.metrics.deprecated type: attribute_group display_name: Deprecated Database Metrics diff --git a/model/database/metrics.yaml b/model/database/metrics.yaml index e73476722d..2bcdebf1e8 100644 --- a/model/database/metrics.yaml +++ b/model/database/metrics.yaml @@ -10,7 +10,7 @@ groups: stability: release_candidate extends: attributes.db.client.with_query_and_collection attributes: - - ref: db.system + - ref: db.system.name # TODO: Not adding to the minimal because of https://github.com/open-telemetry/build-tools/issues/192 requirement_level: required - ref: network.peer.address @@ -141,7 +141,7 @@ groups: stability: experimental extends: attributes.db.client.with_query_and_collection attributes: - - ref: db.system + - ref: db.system.name # TODO: Not adding to the minimal because of https://github.com/open-telemetry/build-tools/issues/192 requirement_level: required - ref: network.peer.address diff --git a/model/database/registry.yaml b/model/database/registry.yaml index 77dc009f4c..1cc23bd962 100644 --- a/model/database/registry.yaml +++ b/model/database/registry.yaml @@ -127,238 +127,193 @@ groups: examples: ["102", "ORA-17002", "08P01", "404"] - id: db.response.returned_rows type: int - stability: experimental + stability: development brief: Number of rows returned by the operation. examples: [10, 30, 1000] - - id: db.system + - id: db.system.name brief: The database management system (DBMS) product as identified by the client instrumentation. note: > The actual DBMS may differ from the one identified by the client. - For example, when using PostgreSQL client libraries to connect to a CockroachDB, the `db.system` + For example, when using PostgreSQL client libraries to connect to a CockroachDB, the `db.system.name` is set to `postgresql` based on the instrumentation's best knowledge. type: members: - id: other_sql value: "other_sql" brief: "Some other SQL database. Fallback only. See notes." - stability: experimental + stability: development - id: adabas value: "adabas" brief: "Adabas (Adaptable Database System)" - stability: experimental - - id: cache - value: "cache" - deprecated: "Replaced by `intersystems_cache`." - brief: "Deprecated, use `intersystems_cache` instead." - stability: experimental - - id: intersystems_cache - value: "intersystems_cache" - brief: "InterSystems Caché" - stability: experimental + stability: development # there is a trademark + - id: actian.ingres + value: "actian.ingres" + brief: "[Actian Ingres](https://www.actian.com/databases/ingres/)" + stability: development + - id: aws.dynamodb # there is a trademark + value: "aws.dynamodb" + brief: "[Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/)" + stability: development + - id: aws.redshift + value: "aws.redshift" + brief: "Amazon Redshift" + stability: development # trademark on amazon redshift + - id: az.cosmosdb + value: "az.cosmosdb" + brief: "[Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db)" + stability: development + - id: intersystems.cache + value: "intersystems.cache" + brief: "[InterSystems Caché](https://www.intersystems.com/products/cache/)" + stability: development - id: cassandra value: "cassandra" - brief: "Apache Cassandra" - stability: experimental + brief: "[Apache Cassandra](https://cassandra.apache.org/)" + stability: development # there is a trademark - id: clickhouse value: "clickhouse" - brief: "ClickHouse" - stability: experimental - - id: cloudscape - value: "cloudscape" - deprecated: "Replaced by `other_sql`." - brief: "Deprecated, use `other_sql` instead." - stability: experimental + brief: "[ClickHouse](https://clickhouse.com/)" + stability: development # not a wordmark - id: cockroachdb value: "cockroachdb" - brief: "CockroachDB" - stability: experimental - - id: coldfusion - value: "coldfusion" - deprecated: "Removed." - brief: "Deprecated, no replacement at this time." - stability: experimental - - id: cosmosdb - value: "cosmosdb" - brief: "Microsoft Azure Cosmos DB" - stability: experimental + brief: "[CockroachDB](https://www.cockroachlabs.com/)" + stability: development # there is a trademark - id: couchbase value: "couchbase" - brief: "Couchbase" - stability: experimental + brief: "[Couchbase](https://www.couchbase.com/)" + stability: development # there is a trademark - id: couchdb value: "couchdb" - brief: "CouchDB" - stability: experimental - - id: db2 - value: "db2" - brief: "IBM Db2" - stability: experimental + brief: "[Apache CouchDB](https://couchdb.apache.org/)" + stability: development # there is a trademark - id: derby value: "derby" - brief: "Apache Derby" - stability: experimental - - id: dynamodb - value: "dynamodb" - brief: "Amazon DynamoDB" - stability: experimental + brief: "[Apache Derby](https://db.apache.org/derby/)" # there is a trademark + stability: development - id: edb value: "edb" - brief: "EnterpriseDB" - stability: experimental + brief: "[EnterpriseDB](https://www.enterprisedb.com/)" # there is a trademark + stability: development - id: elasticsearch value: "elasticsearch" - brief: "Elasticsearch" - stability: experimental - - id: filemaker - value: "filemaker" - brief: "FileMaker" - stability: experimental + brief: "[Elasticsearch](https://www.elastic.co/elasticsearch)" # there is a trademark + stability: development - id: firebird value: "firebird" - brief: "Firebird" - stability: experimental - - id: firstsql - value: "firstsql" - deprecated: "Replaced by `other_sql`." - brief: "Deprecated, use `other_sql` instead." - stability: experimental + brief: "[Firebird](https://www.firebirdsql.org/)" + stability: development # no trademark + - id: gcp.spanner + value: "spanner" + brief: "Cloud Spanner" + stability: development - id: geode value: "geode" - brief: "Apache Geode" - stability: experimental + brief: "[Apache Geode](https://geode.apache.org/)" + stability: development # there is a trademark - id: h2 value: "h2" - brief: "H2" - stability: experimental - - id: hanadb - value: "hanadb" - brief: "SAP HANA" - stability: experimental + brief: "[H2 Database](https://h2database.com/)" + stability: development - id: hbase value: "hbase" - brief: "Apache HBase" - stability: experimental + brief: "[Apache HBase](https://hbase.apache.org/)" + stability: development # there is a trademark - id: hive value: "hive" - brief: "Apache Hive" - stability: experimental + brief: "[Apache Hive](https://hive.apache.org/)" + stability: development # there is a trademark - id: hsqldb value: "hsqldb" - brief: "HyperSQL DataBase" - stability: experimental + brief: "[HyperSQL Database](https://hsqldb.org/)" + stability: development # no trademark + - id: ibm.db2 + value: "ibm.db2" + brief: "[IBM Db2](https://www.ibm.com/db2)" + stability: development # there is a trademark on db2 + - id: ibm.informix + value: "ibm.informix" + brief: "[IBM Informix](https://www.ibm.com/products/informix)" + stability: development # there is a trademark on informix + - id: ibm.netezza + value: "ibm.netezza" + brief: "IBM Netezza" + stability: development # there is a trademark on netezza - id: influxdb value: "influxdb" - brief: "InfluxDB" - stability: experimental - - id: informix - value: "informix" - brief: "Informix" - stability: experimental - - id: ingres - value: "ingres" - brief: "Ingres" - stability: experimental + brief: "[InfluxDB](https://www.influxdata.com/)" # there is a trademark + stability: development - id: instantdb value: "instantdb" - brief: "InstantDB" - stability: experimental - - id: interbase - value: "interbase" - brief: "InterBase" - stability: experimental + brief: "[InstantDB](https://www.instantdb.com/)" # no trademark + stability: development - id: mariadb value: "mariadb" - brief: "MariaDB (This value has stability level RELEASE CANDIDATE)" + brief: "MariaDB" # there is a trademark stability: release_candidate - - id: maxdb - value: "maxdb" - brief: "SAP MaxDB" - stability: experimental - id: memcached value: "memcached" brief: "Memcached" - stability: experimental + stability: development # no trademark - id: mongodb value: "mongodb" - brief: "MongoDB" - stability: experimental + brief: "MongoDB" # there is a trademark + stability: development - id: mssql value: "mssql" - brief: "Microsoft SQL Server (This value has stability level RELEASE CANDIDATE)" + brief: "Microsoft SQL Server" stability: release_candidate - - id: mssqlcompact - value: "mssqlcompact" - deprecated: "Removed, use `other_sql` instead." - brief: "Deprecated, Microsoft SQL Server Compact is discontinued." - stability: experimental - id: mysql value: "mysql" - brief: "MySQL (This value has stability level RELEASE CANDIDATE)" + brief: "MySQL" # there is a trademark stability: release_candidate - id: neo4j value: "neo4j" - brief: "Neo4j" - stability: experimental - - id: netezza - value: "netezza" - brief: "Netezza" - stability: experimental + brief: "Neo4j" # there is a trademark + stability: development - id: opensearch value: "opensearch" - brief: "OpenSearch" - stability: experimental + brief: "[OpenSearch](https://opensearch.org/)" + stability: development # there is a trademark - id: oracle value: "oracle" - brief: "Oracle Database" - stability: experimental + brief: "[Oracle Database](https://www.oracle.com/database/)" + stability: development - id: pervasive value: "pervasive" - brief: "Pervasive PSQL" - stability: experimental - - id: pointbase - value: "pointbase" - brief: "PointBase" - stability: experimental + brief: "Pervasive PSQL" # there is a trademark + stability: development - id: postgresql value: "postgresql" - brief: "PostgreSQL (This value has stability level RELEASE CANDIDATE)" - stability: release_candidate - - id: progress - value: "progress" - brief: "Progress Database" - stability: experimental + brief: "PostgreSQL" + stability: release_candidate # there is a trademark - id: redis value: "redis" brief: "Redis" - stability: experimental - - id: redshift - value: "redshift" - brief: "Amazon Redshift" - stability: experimental - - id: spanner - value: "spanner" - brief: "Cloud Spanner" - stability: experimental + stability: development # there is a trademark + - id: sap.hanadb + value: "sap.hanadb" + brief: "[SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html)" + stability: development + - id: sap.maxdb + value: "sap.maxdb" + brief: "SAP MaxDB" + stability: development # no trademark - id: sqlite value: "sqlite" brief: "SQLite" - stability: experimental - - id: sybase - value: "sybase" - brief: "Sybase" - stability: experimental + stability: development # there is a trademark - id: teradata value: "teradata" brief: "Teradata" - stability: experimental + stability: development # there is a trademark - id: trino value: "trino" - brief: "Trino" - stability: experimental + brief: "[Trino](https://trino.io/)" + stability: development # no trademark - id: vertica value: "vertica" brief: "Vertica" - stability: experimental + stability: development # there is a trademark stability: release_candidate - id: db.client.connection.state stability: experimental @@ -384,175 +339,4 @@ groups: Instrumentations that generate connection pool name following different patterns SHOULD document it. examples: ["myDataSource"] - - id: registry.db.cassandra - type: attribute_group - display_name: Cassandra Attributes - brief: > - This group defines attributes for Cassandra. - attributes: - - id: db.cassandra.coordinator.dc - type: string - stability: experimental - brief: > - The data center of the coordinating node for a query. - examples: "us-west-2" - - id: db.cassandra.coordinator.id - type: string - stability: experimental - brief: > - The ID of the coordinating node for a query. - examples: "be13faa2-8574-4d71-926d-27f16cf8a7af" - - id: db.cassandra.consistency_level - brief: > - The consistency level of the query. Based on consistency values from [CQL](https://docs.datastax.com/en/cassandra-oss/3.0/cassandra/dml/dmlConfigConsistency.html). - type: - members: - - id: all - value: "all" - stability: experimental - - id: each_quorum - value: "each_quorum" - stability: experimental - - id: quorum - value: "quorum" - stability: experimental - - id: local_quorum - value: "local_quorum" - stability: experimental - - id: one - value: "one" - stability: experimental - - id: two - value: "two" - stability: experimental - - id: three - value: "three" - stability: experimental - - id: local_one - value: "local_one" - stability: experimental - - id: any - value: "any" - stability: experimental - - id: serial - value: "serial" - stability: experimental - - id: local_serial - value: "local_serial" - stability: experimental - stability: experimental - - id: db.cassandra.idempotence - type: boolean - stability: experimental - brief: > - Whether or not the query is idempotent. - - id: db.cassandra.page_size - type: int - stability: experimental - brief: > - The fetch size used for paging, i.e. how many rows will be returned at once. - examples: [5000] - - id: db.cassandra.speculative_execution_count - type: int - stability: experimental - brief: > - The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. - examples: [0, 2] - - id: registry.db.cosmosdb - type: attribute_group - display_name: Azure Cosmos DB Attributes - stability: experimental - brief: > - This group defines attributes for Azure Cosmos DB. - attributes: - - id: db.cosmosdb.client_id - type: string - stability: experimental - brief: Unique Cosmos client instance id. - examples: "3ba4827d-4422-483f-b59f-85b74211c11d" - - id: db.cosmosdb.connection_mode - type: - members: - - id: gateway - value: "gateway" - brief: Gateway (HTTP) connection. - stability: experimental - - id: direct - value: "direct" - brief: Direct connection. - stability: experimental - stability: experimental - brief: Cosmos client connection mode. - - id: db.cosmosdb.request_charge - type: double - stability: experimental - brief: Request units consumed for the operation. - examples: [46.18, 1.0] - - id: db.cosmosdb.request_content_length - type: int - stability: experimental - brief: Request payload size in bytes. - - id: db.cosmosdb.sub_status_code - type: int - stability: experimental - brief: Cosmos DB sub status code. - examples: [1000, 1002] - - id: db.cosmosdb.consistency_level - type: - members: - - id: strong - value: "Strong" - stability: experimental - - id: bounded_staleness - value: "BoundedStaleness" - stability: experimental - - id: session - value: "Session" - stability: experimental - - id: eventual - value: "Eventual" - stability: experimental - - id: consistent_prefix - value: "ConsistentPrefix" - stability: experimental - stability: experimental - brief: Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). - examples: ["Eventual", "ConsistentPrefix", "BoundedStaleness", "Strong", "Session"] - - id: db.cosmosdb.regions_contacted - type: string[] - stability: experimental - brief: > - List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, - it indicates that the operation was performed on multiple regions i.e. cross-regional call. - note: > - Region name matches the format of `displayName` - in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) - examples: - - ["North Central US", "Australia East", "Australia Southeast"] - - id: registry.db.elasticsearch - type: attribute_group - display_name: Elasticsearch Attributes - brief: > - This group defines attributes for Elasticsearch. - attributes: - - id: db.elasticsearch.node.name - type: string - stability: experimental - brief: > - Represents the human-readable identifier of the node/instance to which a request was routed. - examples: ["instance-0000000001"] - - id: db.elasticsearch.path_parts - type: template[string] - stability: experimental - brief: > - A dynamic value in the url path. - note: > - Many Elasticsearch url paths allow dynamic values. These SHOULD be recorded in span attributes in the format - `db.elasticsearch.path_parts.`, where `` is the url path part name. The implementation SHOULD - reference the [elasticsearch schema](https://raw.githubusercontent.com/elastic/elasticsearch-specification/main/output/schema/schema.json) - in order to map the path part values to their names. - examples: - [ - "db.elasticsearch.path_parts.index=test-index", - "db.elasticsearch.path_parts.doc_id=123", - ] + diff --git a/model/database/spans.yaml b/model/database/spans.yaml index b03a9cf9a1..a525df7f28 100644 --- a/model/database/spans.yaml +++ b/model/database/spans.yaml @@ -6,7 +6,7 @@ groups: brief: This group defines the attributes used to perform database client calls. attributes: # TODO: add db.system once https://github.com/open-telemetry/build-tools/issues/192 is possible - # - ref: db.system + # - ref: db.system.name # sampling_relevant: true - ref: db.operation.name sampling_relevant: true @@ -99,7 +99,7 @@ groups: - ref: network.peer.port requirement_level: recommended: if and only if `network.peer.address` is set. - - ref: db.system + - ref: db.system.name sampling_relevant: true # TODO: Not adding to the minimal because of https://github.com/open-telemetry/build-tools/issues/192 requirement_level: required @@ -272,14 +272,14 @@ groups: examples: ["mykeyspace"] requirement_level: conditionally_required: If available. - - ref: db.cassandra.page_size - - ref: db.cassandra.consistency_level + - ref: cassandra.page_size + - ref: cassandra.consistency.level - ref: db.collection.name brief: The name of the Cassandra table that the operation is acting upon. - - ref: db.cassandra.idempotence - - ref: db.cassandra.speculative_execution_count - - ref: db.cassandra.coordinator.id - - ref: db.cassandra.coordinator.dc + - ref: cassandra.idempotence + - ref: cassandra.speculative_execution_count + - ref: cassandra.coordinator.id + - ref: cassandra.coordinator.dc - ref: network.peer.address brief: Peer address of the database node where the operation was performed. requirement_level: @@ -507,11 +507,11 @@ groups: When communicating with an Elastic Cloud deployment, this should be collected from the "X-Found-Handling-Cluster" HTTP response header. brief: The name of the Elasticsearch cluster which the client connects to. requirement_level: recommended - - ref: db.elasticsearch.node.name + - ref: elasticsearch.node.name note: > When communicating with an Elastic Cloud deployment, this should be collected from the "X-Found-Handling-Instance" HTTP response header. requirement_level: recommended - - ref: db.elasticsearch.path_parts + - ref: elasticsearch.path_parts requirement_level: conditionally_required: when the url has dynamic values - ref: db.response.status_code @@ -597,15 +597,15 @@ groups: examples: ["ORA-17027", "1052", "2201B"] requirement_level: conditionally_required: If response has ended with warning or an error. - - id: span.db.cosmosdb.client + - id: span.az.cosmosdb.client type: span - stability: experimental + stability: development span_kind: client extends: trace.db.common.query_and_collection brief: > Attributes for Cosmos DB. attributes: - - ref: db.cosmosdb.client_id + - ref: az.client.id - ref: user_agent.original brief: 'Full user-agent string is generated by Cosmos DB SDK' note: > @@ -620,7 +620,7 @@ groups: Format Reg-{D (Disabled discovery)}-S(application region)|L(List of preferred regions)|N(None, user did not configure it). Default value is "NS". examples: ['cosmos-netstandard-sdk/3.23.0\|3.23.1\|1\|X64\|Linux 5.4.0-1098-azure 104 18\|.NET Core 3.1.32\|S\|'] - - ref: db.cosmosdb.connection_mode + - ref: az.cosmosdb.connection.mode requirement_level: conditionally_required: if not `gateway` (the default value is assumed to be `gateway`). - ref: db.collection.name @@ -630,7 +630,7 @@ groups: It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. requirement_level: conditionally_required: if available - - ref: db.cosmosdb.request_content_length + - ref: az.cosmosdb.request.content_length - ref: db.response.status_code brief: > Cosmos DB status code. @@ -645,10 +645,10 @@ groups: examples: [10, 20] requirement_level: conditionally_required: if response was received and returned any rows - - ref: db.cosmosdb.sub_status_code + - ref: az.cosmosdb.response.sub_status_code requirement_level: conditionally_required: when response was received and contained sub-code. - - ref: db.cosmosdb.request_charge + - ref: az.cosmosdb.request.charge requirement_level: conditionally_required: when available - ref: db.namespace @@ -791,9 +791,9 @@ groups: - ref: server.port requirement_level: conditionally_required: If not default (443). - - ref: db.cosmosdb.consistency_level + - ref: az.cosmosdb.consistency.level requirement_level: conditionally_required: If available. - - ref: db.cosmosdb.regions_contacted + - ref: az.cosmosdb.request.regions_contacted requirement_level: conditionally_required: If available. diff --git a/model/elasticsearch/registry.yaml b/model/elasticsearch/registry.yaml new file mode 100644 index 0000000000..a76c98983a --- /dev/null +++ b/model/elasticsearch/registry.yaml @@ -0,0 +1,28 @@ +groups: + - id: registry.elasticsearch + type: attribute_group + display_name: Elasticsearch Attributes + brief: > + This group defines attributes for Elasticsearch. + attributes: + - id: elasticsearch.node.name + type: string + stability: development + brief: > + Represents the human-readable identifier of the node/instance to which a request was routed. + examples: ["instance-0000000001"] + - id: elasticsearch.path_parts + type: template[string] + stability: development + brief: > + A dynamic value in the url path. + note: > + Many Elasticsearch url paths allow dynamic values. These SHOULD be recorded in span attributes in the format + `elasticsearch.path_parts.`, where `` is the url path part name. The implementation SHOULD + reference the [elasticsearch schema](https://raw.githubusercontent.com/elastic/elasticsearch-specification/main/output/schema/schema.json) + in order to map the path part values to their names. + examples: + [ + "elasticsearch.path_parts.index=test-index", + "elasticsearch.path_parts.doc_id=123", + ] diff --git a/schema-next.yaml b/schema-next.yaml index 8ebce284ac..0d63e0e91c 100644 --- a/schema-next.yaml +++ b/schema-next.yaml @@ -16,6 +16,25 @@ versions: code.filepath: code.file.path code.lineno: code.line.number code.column: code.column.number + # https://github.com/open-telemetry/semantic-conventions/pull/TODO + - rename_attributes: + attribute_map: + db.system: db.system.name + db.cassandra.coordinator.dc: cassandra.coordinator.dc + db.cassandra.coordinator.id: cassandra.coordinator.id + db.cassandra.consistency_level: cassandra.consistency.level + db.cassandra.idempotence: cassandra.idempotence + db.cassandra.page_size: cassandra.page_size + db.cassandra.speculative_execution_count: cassandra.speculative_execution.count + db.cosmosdb.client_id: az.client.id + db.cosmosdb.connection_mode: az.cosmosdb.connection.mode + db.cosmosdb.consistency_level: az.cosmosdb.consistency.level + db.cosmosdb.request_charge: az.cosmosdb.request.charge + db.cosmosdb.request_content_length: az.cosmosdb.request.content_length + db.cosmosdb.regions_contacted: az.cosmosdb.request.regions_contacted + db.cosmosdb.sub_status_code: az.cosmosdb.response.sub_status_code + db.elasticsearch.node.name: elasticsearch.node.name + # db.elasticsearch.path_parts. -> elasticsearch.path_parts. 1.29.0: all: changes: From e31cef6d4783d57fa254cb28755e092f401e4aa1 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 9 Jan 2025 16:49:04 -0800 Subject: [PATCH 02/24] up --- docs/attributes-registry/azure.md | 22 +++++++++++----------- model/azure/registry.yaml | 6 +++--- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/docs/attributes-registry/azure.md b/docs/attributes-registry/azure.md index aed4a71e0f..f3b6319e0f 100644 --- a/docs/attributes-registry/azure.md +++ b/docs/attributes-registry/azure.md @@ -6,8 +6,18 @@ # Azure +- [Azure Client Library Attributes](#azure-client-library-attributes) - [Azure Cosmos DB Attributes](#azure-cosmos-db-attributes) -- [Azure SDK Attributes](#azure-sdk-attributes) + +## Azure Client Library Attributes + +This document defines generic attributes used by Azure Client Libraries. + +| Attribute | Type | Description | Examples | Stability | +|---|---|---|---|---| +| `az.client.id` | string | The unique identifier of the client instance. | `3ba4827d-4422-483f-b59f-85b74211c11d`; `storage-client-1` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `az.namespace` | string | [Azure Resource Provider Namespace](https://learn.microsoft.com/azure/azure-resource-manager/management/azure-services-resource-providers) as recognized by the client. | `Microsoft.Storage`; `Microsoft.KeyVault`; `Microsoft.ServiceBus` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `az.service_request_id` | string | The unique identifier of the service request. It's generated by the Azure service and returned with the response. | `00000000-0000-0000-0000-000000000000` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | ## Azure Cosmos DB Attributes @@ -44,13 +54,3 @@ This group defines attributes for Azure Cosmos DB. | `Eventual` | eventual | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `Session` | session | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `Strong` | strong | ![Experimental](https://img.shields.io/badge/-experimental-blue) | - -## Azure SDK Attributes - -This document defines generic attributes for Azure SDK. - -| Attribute | Type | Description | Examples | Stability | -|---|---|---|---|---| -| `az.client.id` | string | The unique identifier of the client instance. | `3ba4827d-4422-483f-b59f-85b74211c11d`; `storage-client-1` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `az.namespace` | string | [Azure Resource Provider Namespace](https://learn.microsoft.com/azure/azure-resource-manager/management/azure-services-resource-providers) as recognized by the client. | `Microsoft.Storage`; `Microsoft.KeyVault`; `Microsoft.ServiceBus` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `az.service_request_id` | string | The unique identifier of the service request. It's generated by the Azure service and returned with the response. | `00000000-0000-0000-0000-000000000000` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/model/azure/registry.yaml b/model/azure/registry.yaml index 53bad79b84..e81ce1f4b5 100644 --- a/model/azure/registry.yaml +++ b/model/azure/registry.yaml @@ -1,9 +1,9 @@ groups: - - id: registry.azure.sdk + - id: registry.azure.client.sdk type: attribute_group - display_name: Azure SDK Attributes + display_name: Azure Client Library Attributes brief: > - This document defines generic attributes for Azure SDK. + This document defines generic attributes used by Azure Client Libraries. attributes: - id: az.service_request_id type: string From b0827f4cf3ea66d7a64e05dfc6e21e6e9213056b Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 9 Jan 2025 16:52:09 -0800 Subject: [PATCH 03/24] up --- docs/attributes-registry/db.md | 2 +- docs/database/cosmosdb.md | 2 +- docs/database/dynamodb.md | 2 +- model/database/deprecated/registry-deprecated.yaml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/attributes-registry/db.md b/docs/attributes-registry/db.md index c70277dbcb..d1249483d4 100644 --- a/docs/attributes-registry/db.md +++ b/docs/attributes-registry/db.md @@ -131,7 +131,7 @@ Semantic conventions for individual database systems SHOULD document what `db.re ## Deprecated Database Attributes -"Describes deprecated db attributes." +Describes deprecated database attributes. | Attribute | Type | Description | Examples | Stability | |---|---|---|---|---| diff --git a/docs/database/cosmosdb.md b/docs/database/cosmosdb.md index 18b8698b50..128bde6a4f 100644 --- a/docs/database/cosmosdb.md +++ b/docs/database/cosmosdb.md @@ -26,7 +26,7 @@ extend and override the [Database Semantic Conventions](database-spans.md). ## Attributes -`db.system.name` MUST be set to `"cosmosdb"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"az.cosmosdb"` and SHOULD be provided **at span creation time**. Cosmos DB instrumentation includes call-level (public API) surface spans and network spans. Depending on the connection mode (Gateway or Direct), network-level spans may also be created. diff --git a/docs/database/dynamodb.md b/docs/database/dynamodb.md index 3041cf27a5..d1c60e86c6 100644 --- a/docs/database/dynamodb.md +++ b/docs/database/dynamodb.md @@ -9,7 +9,7 @@ linkTitle: AWS DynamoDB The Semantic Conventions for [AWS DynamoDB](https://aws.amazon.com/dynamodb/) extend and override the general [AWS SDK Semantic Conventions](/docs/cloud-providers/aws-sdk.md) and [Database Semantic Conventions](database-spans.md). -`db.system.name` MUST be set to `"dynamodb"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"aws.dynamodb"` and SHOULD be provided **at span creation time**. ## DynamoDB.BatchGetItem diff --git a/model/database/deprecated/registry-deprecated.yaml b/model/database/deprecated/registry-deprecated.yaml index 6bcfaf2720..15f88e04dd 100644 --- a/model/database/deprecated/registry-deprecated.yaml +++ b/model/database/deprecated/registry-deprecated.yaml @@ -3,7 +3,7 @@ groups: type: attribute_group display_name: Deprecated Database Attributes brief: > - "Describes deprecated db attributes." + Describes deprecated database attributes. stability: experimental attributes: - id: db.connection_string From b6ee8f8cf8c2240410eb9535b97c2b39931253cb Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 9 Jan 2025 17:08:17 -0800 Subject: [PATCH 04/24] lint --- .github/ISSUE_TEMPLATE/bug_report.yaml | 2 ++ .github/ISSUE_TEMPLATE/change_proposal.yaml | 2 ++ .github/ISSUE_TEMPLATE/new-conventions.yaml | 2 ++ docs/database/cosmosdb.md | 6 +++--- 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.yaml b/.github/ISSUE_TEMPLATE/bug_report.yaml index 43a6c3c748..b57068f8a5 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yaml +++ b/.github/ISSUE_TEMPLATE/bug_report.yaml @@ -26,6 +26,7 @@ body: - area:aws - area:azure - area:browser + - area:cassandra - area:cicd - area:client - area:cloud @@ -41,6 +42,7 @@ body: - area:disk - area:dns - area:dotnet + - area:elasticsearch - area:error - area:exception - area:faas diff --git a/.github/ISSUE_TEMPLATE/change_proposal.yaml b/.github/ISSUE_TEMPLATE/change_proposal.yaml index bb0d28736a..f8d9cbf28b 100644 --- a/.github/ISSUE_TEMPLATE/change_proposal.yaml +++ b/.github/ISSUE_TEMPLATE/change_proposal.yaml @@ -18,6 +18,7 @@ body: - area:aws - area:azure - area:browser + - area:cassandra - area:cicd - area:client - area:cloud @@ -33,6 +34,7 @@ body: - area:disk - area:dns - area:dotnet + - area:elasticsearch - area:error - area:exception - area:faas diff --git a/.github/ISSUE_TEMPLATE/new-conventions.yaml b/.github/ISSUE_TEMPLATE/new-conventions.yaml index eb43279195..45c3348118 100644 --- a/.github/ISSUE_TEMPLATE/new-conventions.yaml +++ b/.github/ISSUE_TEMPLATE/new-conventions.yaml @@ -27,6 +27,7 @@ body: - area:aws - area:azure - area:browser + - area:cassandra - area:cicd - area:client - area:cloud @@ -42,6 +43,7 @@ body: - area:disk - area:dns - area:dotnet + - area:elasticsearch - area:error - area:exception - area:faas diff --git a/docs/database/cosmosdb.md b/docs/database/cosmosdb.md index 128bde6a4f..5dcb312001 100644 --- a/docs/database/cosmosdb.md +++ b/docs/database/cosmosdb.md @@ -11,9 +11,9 @@ linkTitle: Cosmos DB - [Example](#example) - [Operation Level Metrics](#operation-level-metrics) - [Metric: `db.client.operation.duration`](#metric-dbclientoperationduration) - - [Metric: `db.client.response.returned_rows`](#metric-dbclientresponsereturned_rows) - - [Metric: `db.client.cosmosdb.operation.request_charge`](#metric-dbclientcosmosdboperationrequest_charge) - - [Metric: `db.client.cosmosdb.active_instance.count`](#metric-dbclientcosmosdbactive_instancecount) + - [Metric: `az.cosmosdb.client.response.returned_rows`](#metric-azcosmosdbclientresponsereturned_rows) + - [Metric: `az.cosmosdb.client.operation.request_charge`](#metric-azcosmosdbclientoperationrequest_charge) + - [Metric: `az.cosmosdb.client.active_instance.count`](#metric-azcosmosdbclientactive_instancecount) From 015573bccd870b81b833e36de735ceb52d868bf6 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 9 Jan 2025 17:54:55 -0800 Subject: [PATCH 05/24] a few more renames --- docs/attributes-registry/db.md | 4 +- docs/database/database-metrics.md | 8 +- docs/database/database-spans.md | 4 +- model/database/registry.yaml | 150 +++++++++++++++--------------- 4 files changed, 83 insertions(+), 83 deletions(-) diff --git a/docs/attributes-registry/db.md b/docs/attributes-registry/db.md index d1249483d4..8518c87d73 100644 --- a/docs/attributes-registry/db.md +++ b/docs/attributes-registry/db.md @@ -98,6 +98,7 @@ Semantic conventions for individual database systems SHOULD document what `db.re | `edb` | [EnterpriseDB](https://www.enterprisedb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `elasticsearch` | [Elasticsearch](https://www.elastic.co/elasticsearch) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `firebird` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -121,9 +122,8 @@ Semantic conventions for individual database systems SHOULD document what `db.re | `pervasive` | Pervasive PSQL | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `postgresql` | PostgreSQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | Redis | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sap.hanadb` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `spanner` | Cloud Spanner | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | SQLite | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | Teradata | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/database/database-metrics.md b/docs/database/database-metrics.md index e72ef48de1..9b07527919 100644 --- a/docs/database/database-metrics.md +++ b/docs/database/database-metrics.md @@ -172,6 +172,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `edb` | [EnterpriseDB](https://www.enterprisedb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `elasticsearch` | [Elasticsearch](https://www.elastic.co/elasticsearch) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `firebird` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -195,9 +196,8 @@ Even though parameterized query text can potentially have sensitive data, by usi | `pervasive` | Pervasive PSQL | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `postgresql` | PostgreSQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | Redis | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sap.hanadb` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `spanner` | Cloud Spanner | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | SQLite | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | Teradata | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -339,6 +339,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `edb` | [EnterpriseDB](https://www.enterprisedb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `elasticsearch` | [Elasticsearch](https://www.elastic.co/elasticsearch) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `firebird` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -362,9 +363,8 @@ Even though parameterized query text can potentially have sensitive data, by usi | `pervasive` | Pervasive PSQL | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `postgresql` | PostgreSQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | Redis | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sap.hanadb` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `spanner` | Cloud Spanner | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | SQLite | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | Teradata | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/database/database-spans.md b/docs/database/database-spans.md index 23f96747f3..edd34627fa 100644 --- a/docs/database/database-spans.md +++ b/docs/database/database-spans.md @@ -219,6 +219,7 @@ and SHOULD be provided **at span creation time** (if provided at all): | `edb` | [EnterpriseDB](https://www.enterprisedb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `elasticsearch` | [Elasticsearch](https://www.elastic.co/elasticsearch) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `firebird` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -242,9 +243,8 @@ and SHOULD be provided **at span creation time** (if provided at all): | `pervasive` | Pervasive PSQL | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `postgresql` | PostgreSQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | Redis | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sap.hanadb` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `spanner` | Cloud Spanner | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | SQLite | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | Teradata | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/model/database/registry.yaml b/model/database/registry.yaml index 1cc23bd962..6ce67e8987 100644 --- a/model/database/registry.yaml +++ b/model/database/registry.yaml @@ -143,177 +143,177 @@ groups: brief: "Some other SQL database. Fallback only. See notes." stability: development - id: adabas - value: "adabas" + value: "adabas" # trademark on 'adabas' brief: "Adabas (Adaptable Database System)" - stability: development # there is a trademark + stability: development - id: actian.ingres - value: "actian.ingres" + value: "actian.ingres" # trademark on 'ingres' brief: "[Actian Ingres](https://www.actian.com/databases/ingres/)" stability: development - - id: aws.dynamodb # there is a trademark - value: "aws.dynamodb" + - id: aws.dynamodb + value: "aws.dynamodb" # trademark on 'dynamodb' brief: "[Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/)" stability: development - id: aws.redshift value: "aws.redshift" brief: "Amazon Redshift" - stability: development # trademark on amazon redshift + stability: development # trademark on 'amazon redshift' - id: az.cosmosdb - value: "az.cosmosdb" + value: "az.cosmosdb" # trademark on 'azure cosmos db' brief: "[Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db)" stability: development - id: intersystems.cache - value: "intersystems.cache" + value: "intersystems.cache" # trademark on 'INTERSYSTEMS CACHÉ' brief: "[InterSystems Caché](https://www.intersystems.com/products/cache/)" stability: development - id: cassandra - value: "cassandra" + value: "cassandra" # trademark on 'cassandra' brief: "[Apache Cassandra](https://cassandra.apache.org/)" - stability: development # there is a trademark + stability: development - id: clickhouse - value: "clickhouse" + value: "clickhouse" # no wordmark brief: "[ClickHouse](https://clickhouse.com/)" - stability: development # not a wordmark + stability: development - id: cockroachdb - value: "cockroachdb" + value: "cockroachdb" # trademark on 'cockroachdb' brief: "[CockroachDB](https://www.cockroachlabs.com/)" - stability: development # there is a trademark + stability: development - id: couchbase - value: "couchbase" + value: "couchbase" # trademark on 'couchbase' brief: "[Couchbase](https://www.couchbase.com/)" - stability: development # there is a trademark + stability: development - id: couchdb - value: "couchdb" + value: "couchdb" # trademark on 'couchdb' brief: "[Apache CouchDB](https://couchdb.apache.org/)" - stability: development # there is a trademark + stability: development - id: derby - value: "derby" - brief: "[Apache Derby](https://db.apache.org/derby/)" # there is a trademark + value: "derby" # trademark on 'derby' + brief: "[Apache Derby](https://db.apache.org/derby/)" stability: development - id: edb - value: "edb" + value: "edb" # trademark on 'enterprisedb' and 'edb' brief: "[EnterpriseDB](https://www.enterprisedb.com/)" # there is a trademark stability: development - id: elasticsearch - value: "elasticsearch" + value: "elasticsearch" # trademark on 'elasticsearch' brief: "[Elasticsearch](https://www.elastic.co/elasticsearch)" # there is a trademark stability: development - id: firebird - value: "firebird" + value: "firebird" # no trademark? brief: "[Firebird](https://www.firebirdsql.org/)" - stability: development # no trademark + stability: development - id: gcp.spanner - value: "spanner" - brief: "Cloud Spanner" + value: "gcp.spanner" # trademark on 'cloud spanner' + brief: "[Google Cloud Spanner](https://cloud.google.com/spanner)" stability: development - id: geode - value: "geode" + value: "geode" # trademark on 'geode' brief: "[Apache Geode](https://geode.apache.org/)" - stability: development # there is a trademark + stability: development - id: h2 - value: "h2" + value: "h2" # no trademark brief: "[H2 Database](https://h2database.com/)" stability: development - id: hbase - value: "hbase" + value: "hbase" # trademark on 'hbase' brief: "[Apache HBase](https://hbase.apache.org/)" - stability: development # there is a trademark + stability: development - id: hive - value: "hive" + value: "hive" # trademark on 'hive' brief: "[Apache Hive](https://hive.apache.org/)" - stability: development # there is a trademark + stability: development - id: hsqldb - value: "hsqldb" + value: "hsqldb" # no trademark brief: "[HyperSQL Database](https://hsqldb.org/)" - stability: development # no trademark + stability: development - id: ibm.db2 - value: "ibm.db2" + value: "ibm.db2" # trademark on 'db2' brief: "[IBM Db2](https://www.ibm.com/db2)" - stability: development # there is a trademark on db2 + stability: development - id: ibm.informix - value: "ibm.informix" + value: "ibm.informix" # trademark on 'informix' brief: "[IBM Informix](https://www.ibm.com/products/informix)" - stability: development # there is a trademark on informix + stability: development - id: ibm.netezza value: "ibm.netezza" - brief: "IBM Netezza" - stability: development # there is a trademark on netezza + brief: "IBM Netezza" # trademark on 'netezza' + stability: development - id: influxdb - value: "influxdb" - brief: "[InfluxDB](https://www.influxdata.com/)" # there is a trademark + value: "influxdb" # trademark on 'influxdb' + brief: "[InfluxDB](https://www.influxdata.com/)" stability: development - id: instantdb - value: "instantdb" - brief: "[InstantDB](https://www.instantdb.com/)" # no trademark + value: "instantdb" # no trademark + brief: "[InstantDB](https://www.instantdb.com/)" stability: development - id: mariadb - value: "mariadb" - brief: "MariaDB" # there is a trademark + value: "mariadb" # trademark on 'mariadb' + brief: "MariaDB" stability: release_candidate - id: memcached - value: "memcached" + value: "memcached" # no trademark brief: "Memcached" - stability: development # no trademark + stability: development - id: mongodb - value: "mongodb" - brief: "MongoDB" # there is a trademark + value: "mongodb" # trademark on 'mongodb' + brief: "MongoDB" stability: development - id: mssql - value: "mssql" + value: "mssql" # trademark on 'SQL Server' brief: "Microsoft SQL Server" stability: release_candidate - id: mysql - value: "mysql" - brief: "MySQL" # there is a trademark + value: "mysql" # trademark on 'mysql' + brief: "MySQL" stability: release_candidate - id: neo4j - value: "neo4j" - brief: "Neo4j" # there is a trademark + value: "neo4j" # trademark on 'neo4j' + brief: "Neo4j" stability: development - id: opensearch - value: "opensearch" + value: "opensearch" # trademark on 'opensearch' brief: "[OpenSearch](https://opensearch.org/)" - stability: development # there is a trademark + stability: development - id: oracle value: "oracle" brief: "[Oracle Database](https://www.oracle.com/database/)" stability: development - id: pervasive - value: "pervasive" - brief: "Pervasive PSQL" # there is a trademark + value: "pervasive" # trademark on 'pervasive' + brief: "Pervasive PSQL" stability: development - id: postgresql - value: "postgresql" + value: "postgresql" # trademark on 'postgresql' brief: "PostgreSQL" - stability: release_candidate # there is a trademark + stability: release_candidate - id: redis - value: "redis" + value: "redis" # trademark on 'redis' brief: "Redis" - stability: development # there is a trademark - - id: sap.hanadb - value: "sap.hanadb" + stability: development + - id: sap.hana + value: "sap.hana" # trademark on 'sap hana' brief: "[SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html)" stability: development - id: sap.maxdb - value: "sap.maxdb" + value: "sap.maxdb" # trademark on 'maxdb' brief: "SAP MaxDB" stability: development # no trademark - id: sqlite - value: "sqlite" + value: "sqlite" # trademark on 'sqlite' brief: "SQLite" - stability: development # there is a trademark + stability: development - id: teradata - value: "teradata" + value: "teradata" # trademark on 'teradata' brief: "Teradata" - stability: development # there is a trademark + stability: development - id: trino - value: "trino" + value: "trino" # no trademark brief: "[Trino](https://trino.io/)" - stability: development # no trademark + stability: development - id: vertica - value: "vertica" + value: "vertica" # trademark on 'vertica' brief: "Vertica" - stability: development # there is a trademark + stability: development stability: release_candidate - id: db.client.connection.state stability: experimental From 821838a47aecca3ce30e82ebb88d60950c2c4137 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 9 Jan 2025 18:20:44 -0800 Subject: [PATCH 06/24] remove constants --- docs/attributes-registry/db.md | 26 +++++++--------- docs/database/cosmosdb.md | 4 +-- docs/database/database-metrics.md | 52 ++++++++++++++----------------- docs/database/database-spans.md | 26 +++++++--------- model/database/registry.yaml | 36 +++++++++------------ 5 files changed, 64 insertions(+), 80 deletions(-) diff --git a/docs/attributes-registry/db.md b/docs/attributes-registry/db.md index 8518c87d73..77c8949a0a 100644 --- a/docs/attributes-registry/db.md +++ b/docs/attributes-registry/db.md @@ -106,28 +106,26 @@ Semantic conventions for individual database systems SHOULD document what `db.re | `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `ibm.db2` | [IBM Db2](https://www.ibm.com/db2) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `ibm.informix` | [IBM Informix](https://www.ibm.com/products/informix) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `ibm.netezza` | IBM Netezza | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.netezza` | [IBM Netezza](https://www.ibm.com/products/netezza) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `influxdb` | [InfluxDB](https://www.influxdata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `instantdb` | [InstantDB](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mariadb` | MariaDB | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `memcached` | Memcached | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mongodb` | MongoDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mssql` | Microsoft SQL Server | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `mysql` | MySQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `neo4j` | Neo4j | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mariadb` | [MariaDB](https://mariadb.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `memcached` | [Memcached](https://memcached.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mongodb` | [MongoDB](https://www.mongodb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mssql` | [Microsoft SQL Server](https://www.microsoft.com/sql-server) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `mysql` | [MySQL](https://www.mysql.com/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `oracle` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `pervasive` | Pervasive PSQL | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `postgresql` | PostgreSQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `redis` | Redis | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `postgresql` | [PostgreSQL](https://www.postgresql.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sap.maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sqlite` | SQLite | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `teradata` | Teradata | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `vertica` | Vertica | ![Experimental](https://img.shields.io/badge/-experimental-blue) | ## Deprecated Database Attributes diff --git a/docs/database/cosmosdb.md b/docs/database/cosmosdb.md index 5dcb312001..8b0bd59819 100644 --- a/docs/database/cosmosdb.md +++ b/docs/database/cosmosdb.md @@ -299,7 +299,7 @@ This metric is [required][MetricRequired]. It captures the total time taken by an Azure Cosmos DB operation. This metric follows the common [db.client.operation.duration](/docs/database/database-metrics.md#metric-dbclientoperationduration) definition. -Refer [az.cosmosdb.client.operation.request_charge](#metric-dbclientcosmosdboperationrequest_charge) metrics for dimensions. +Refer [az.cosmosdb.client.operation.request_charge](#metric-azcosmosdbclientoperationrequest_charge) metrics for dimensions. ### Metric: `az.cosmosdb.client.response.returned_rows` @@ -307,7 +307,7 @@ This metric is [required][MetricRequired]. It captures the number of items returned by a query or feed operation in Azure Cosmos DB. It helps identify response sizes that may contribute to high latency, increased memory/CPU usage, or network call failures. This metric follows the common [db.client.response.returned_rows](/docs/database/database-metrics.md#metric-dbclientresponsereturned_rows) definition. -Refer [db.client.cosmosdb.operation.request_charge](#metric-dbclientcosmosdboperationrequest_charge) metrics for dimensions. +Refer [az.cosmosdb.client.operation.request_charge](#metric-azcosmosdbclientoperationrequest_charge) metrics for dimensions. ### Metric: `az.cosmosdb.client.operation.request_charge` diff --git a/docs/database/database-metrics.md b/docs/database/database-metrics.md index 9b07527919..6ad4aa9e5b 100644 --- a/docs/database/database-metrics.md +++ b/docs/database/database-metrics.md @@ -180,28 +180,26 @@ Even though parameterized query text can potentially have sensitive data, by usi | `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `ibm.db2` | [IBM Db2](https://www.ibm.com/db2) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `ibm.informix` | [IBM Informix](https://www.ibm.com/products/informix) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `ibm.netezza` | IBM Netezza | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.netezza` | [IBM Netezza](https://www.ibm.com/products/netezza) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `influxdb` | [InfluxDB](https://www.influxdata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `instantdb` | [InstantDB](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mariadb` | MariaDB | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `memcached` | Memcached | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mongodb` | MongoDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mssql` | Microsoft SQL Server | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `mysql` | MySQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `neo4j` | Neo4j | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mariadb` | [MariaDB](https://mariadb.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `memcached` | [Memcached](https://memcached.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mongodb` | [MongoDB](https://www.mongodb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mssql` | [Microsoft SQL Server](https://www.microsoft.com/sql-server) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `mysql` | [MySQL](https://www.mysql.com/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `oracle` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `pervasive` | Pervasive PSQL | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `postgresql` | PostgreSQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `redis` | Redis | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `postgresql` | [PostgreSQL](https://www.postgresql.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sap.maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sqlite` | SQLite | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `teradata` | Teradata | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `vertica` | Vertica | ![Experimental](https://img.shields.io/badge/-experimental-blue) | --- @@ -347,28 +345,26 @@ Even though parameterized query text can potentially have sensitive data, by usi | `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `ibm.db2` | [IBM Db2](https://www.ibm.com/db2) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `ibm.informix` | [IBM Informix](https://www.ibm.com/products/informix) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `ibm.netezza` | IBM Netezza | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.netezza` | [IBM Netezza](https://www.ibm.com/products/netezza) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `influxdb` | [InfluxDB](https://www.influxdata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `instantdb` | [InstantDB](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mariadb` | MariaDB | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `memcached` | Memcached | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mongodb` | MongoDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mssql` | Microsoft SQL Server | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `mysql` | MySQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `neo4j` | Neo4j | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mariadb` | [MariaDB](https://mariadb.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `memcached` | [Memcached](https://memcached.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mongodb` | [MongoDB](https://www.mongodb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mssql` | [Microsoft SQL Server](https://www.microsoft.com/sql-server) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `mysql` | [MySQL](https://www.mysql.com/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `oracle` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `pervasive` | Pervasive PSQL | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `postgresql` | PostgreSQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `redis` | Redis | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `postgresql` | [PostgreSQL](https://www.postgresql.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sap.maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sqlite` | SQLite | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `teradata` | Teradata | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `vertica` | Vertica | ![Experimental](https://img.shields.io/badge/-experimental-blue) | --- diff --git a/docs/database/database-spans.md b/docs/database/database-spans.md index edd34627fa..54da00c781 100644 --- a/docs/database/database-spans.md +++ b/docs/database/database-spans.md @@ -227,28 +227,26 @@ and SHOULD be provided **at span creation time** (if provided at all): | `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `ibm.db2` | [IBM Db2](https://www.ibm.com/db2) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `ibm.informix` | [IBM Informix](https://www.ibm.com/products/informix) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `ibm.netezza` | IBM Netezza | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `ibm.netezza` | [IBM Netezza](https://www.ibm.com/products/netezza) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `influxdb` | [InfluxDB](https://www.influxdata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `instantdb` | [InstantDB](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mariadb` | MariaDB | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `memcached` | Memcached | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mongodb` | MongoDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mssql` | Microsoft SQL Server | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `mysql` | MySQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `neo4j` | Neo4j | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mariadb` | [MariaDB](https://mariadb.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `memcached` | [Memcached](https://memcached.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mongodb` | [MongoDB](https://www.mongodb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `mssql` | [Microsoft SQL Server](https://www.microsoft.com/sql-server) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `mysql` | [MySQL](https://www.mysql.com/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `oracle` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `pervasive` | Pervasive PSQL | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `postgresql` | PostgreSQL | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `redis` | Redis | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `postgresql` | [PostgreSQL](https://www.postgresql.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sap.maxdb` | SAP MaxDB | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `sqlite` | SQLite | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `teradata` | Teradata | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `vertica` | Vertica | ![Experimental](https://img.shields.io/badge/-experimental-blue) | --- diff --git a/model/database/registry.yaml b/model/database/registry.yaml index 6ce67e8987..fd71fb6dbd 100644 --- a/model/database/registry.yaml +++ b/model/database/registry.yaml @@ -192,11 +192,11 @@ groups: stability: development - id: edb value: "edb" # trademark on 'enterprisedb' and 'edb' - brief: "[EnterpriseDB](https://www.enterprisedb.com/)" # there is a trademark + brief: "[EnterpriseDB](https://www.enterprisedb.com/)" stability: development - id: elasticsearch value: "elasticsearch" # trademark on 'elasticsearch' - brief: "[Elasticsearch](https://www.elastic.co/elasticsearch)" # there is a trademark + brief: "[Elasticsearch](https://www.elastic.co/elasticsearch)" stability: development - id: firebird value: "firebird" # no trademark? @@ -236,7 +236,7 @@ groups: stability: development - id: ibm.netezza value: "ibm.netezza" - brief: "IBM Netezza" # trademark on 'netezza' + brief: "[IBM Netezza](https://www.ibm.com/products/netezza)" # trademark on 'netezza' stability: development - id: influxdb value: "influxdb" # trademark on 'influxdb' @@ -248,27 +248,27 @@ groups: stability: development - id: mariadb value: "mariadb" # trademark on 'mariadb' - brief: "MariaDB" + brief: "[MariaDB](https://mariadb.org/)" stability: release_candidate - id: memcached value: "memcached" # no trademark - brief: "Memcached" + brief: "[Memcached](https://memcached.org/)" stability: development - id: mongodb value: "mongodb" # trademark on 'mongodb' - brief: "MongoDB" + brief: "[MongoDB](https://www.mongodb.com/)" stability: development - id: mssql value: "mssql" # trademark on 'SQL Server' - brief: "Microsoft SQL Server" + brief: "[Microsoft SQL Server](https://www.microsoft.com/sql-server)" stability: release_candidate - id: mysql value: "mysql" # trademark on 'mysql' - brief: "MySQL" + brief: "[MySQL](https://www.mysql.com/)" stability: release_candidate - id: neo4j value: "neo4j" # trademark on 'neo4j' - brief: "Neo4j" + brief: "[Neo4j](https://neo4j.com/)" stability: development - id: opensearch value: "opensearch" # trademark on 'opensearch' @@ -278,17 +278,13 @@ groups: value: "oracle" brief: "[Oracle Database](https://www.oracle.com/database/)" stability: development - - id: pervasive - value: "pervasive" # trademark on 'pervasive' - brief: "Pervasive PSQL" - stability: development - id: postgresql value: "postgresql" # trademark on 'postgresql' - brief: "PostgreSQL" + brief: "[PostgreSQL](https://www.postgresql.org/)" stability: release_candidate - id: redis value: "redis" # trademark on 'redis' - brief: "Redis" + brief: "[Redis](https://redis.io/)" stability: development - id: sap.hana value: "sap.hana" # trademark on 'sap hana' @@ -296,24 +292,20 @@ groups: stability: development - id: sap.maxdb value: "sap.maxdb" # trademark on 'maxdb' - brief: "SAP MaxDB" + brief: "[SAP MaxDB](https://maxdb.sap.com/)" stability: development # no trademark - id: sqlite value: "sqlite" # trademark on 'sqlite' - brief: "SQLite" + brief: "[SQLite](https://www.sqlite.org/)" stability: development - id: teradata value: "teradata" # trademark on 'teradata' - brief: "Teradata" + brief: "[Teradata](https://www.teradata.com/)" stability: development - id: trino value: "trino" # no trademark brief: "[Trino](https://trino.io/)" stability: development - - id: vertica - value: "vertica" # trademark on 'vertica' - brief: "Vertica" - stability: development stability: release_candidate - id: db.client.connection.state stability: experimental From 709a4d97bf67316d1dd9fa264211cc3afa3ecc22 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 9 Jan 2025 18:32:30 -0800 Subject: [PATCH 07/24] lint --- model/database/deprecated/metrics-deprecated.yaml | 1 - model/database/registry.yaml | 1 - 2 files changed, 2 deletions(-) diff --git a/model/database/deprecated/metrics-deprecated.yaml b/model/database/deprecated/metrics-deprecated.yaml index dcff7f74a5..4d32e87984 100644 --- a/model/database/deprecated/metrics-deprecated.yaml +++ b/model/database/deprecated/metrics-deprecated.yaml @@ -157,4 +157,3 @@ groups: - ref: server.port requirement_level: conditionally_required: If using a port other than the default port for this DBMS and if `server.address` is set. - diff --git a/model/database/registry.yaml b/model/database/registry.yaml index fd71fb6dbd..10ce2f560d 100644 --- a/model/database/registry.yaml +++ b/model/database/registry.yaml @@ -331,4 +331,3 @@ groups: Instrumentations that generate connection pool name following different patterns SHOULD document it. examples: ["myDataSource"] - From 4c362b7275bb65a8d163966d4b34dcb7db1174fd Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 9 Jan 2025 18:37:37 -0800 Subject: [PATCH 08/24] changelog --- .chloggen/1734.yaml | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 .chloggen/1734.yaml diff --git a/.chloggen/1734.yaml b/.chloggen/1734.yaml new file mode 100644 index 0000000000..2f760e006b --- /dev/null +++ b/.chloggen/1734.yaml @@ -0,0 +1,12 @@ +change_type: breaking + +component: db + +note: | + Rename `db.system` to `db.system.name` and clean up its values. + Rename `db.elasticsearch.*`, `db.cassandra.*`, `db.cosmosdb.*` attributes to `elasticsearch.*`, `cassandra.*`, and `az.cosmosdb.*` respectively. + Rename Cosmos DB `db.client.cosmosdb.*` metrics to use `az.cosmosdb.client.*`. + +issues: [1581, 608] + +subtext: From 373a227a958e0ee15a1186753e3dc7bb39f86491 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 9 Jan 2025 19:50:01 -0800 Subject: [PATCH 09/24] up --- .chloggen/1734.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.chloggen/1734.yaml b/.chloggen/1734.yaml index 2f760e006b..078e42833a 100644 --- a/.chloggen/1734.yaml +++ b/.chloggen/1734.yaml @@ -5,7 +5,7 @@ component: db note: | Rename `db.system` to `db.system.name` and clean up its values. Rename `db.elasticsearch.*`, `db.cassandra.*`, `db.cosmosdb.*` attributes to `elasticsearch.*`, `cassandra.*`, and `az.cosmosdb.*` respectively. - Rename Cosmos DB `db.client.cosmosdb.*` metrics to use `az.cosmosdb.client.*`. + Rename `db.client.cosmosdb.*` metrics to `az.cosmosdb.client.*`. issues: [1581, 608] From 29679f03d1862064ee6bfd87db17fe3165b2256e Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 9 Jan 2025 21:01:54 -0800 Subject: [PATCH 10/24] remove edb, firebird -> firebirdsql, oracle -> oracle.db --- docs/attributes-registry/db.md | 5 ++--- docs/database/database-metrics.md | 10 ++++------ docs/database/database-spans.md | 5 ++--- model/database/registry.yaml | 14 +++++--------- 4 files changed, 13 insertions(+), 21 deletions(-) diff --git a/docs/attributes-registry/db.md b/docs/attributes-registry/db.md index 77c8949a0a..8549a81a5e 100644 --- a/docs/attributes-registry/db.md +++ b/docs/attributes-registry/db.md @@ -95,9 +95,8 @@ Semantic conventions for individual database systems SHOULD document what `db.re | `couchbase` | [Couchbase](https://www.couchbase.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `couchdb` | [Apache CouchDB](https://couchdb.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `derby` | [Apache Derby](https://db.apache.org/derby/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `edb` | [EnterpriseDB](https://www.enterprisedb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `elasticsearch` | [Elasticsearch](https://www.elastic.co/elasticsearch) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `firebird` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `firebirdsql` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -117,7 +116,7 @@ Semantic conventions for individual database systems SHOULD document what `db.re | `mysql` | [MySQL](https://www.mysql.com/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `oracle` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `oracle.db` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `postgresql` | [PostgreSQL](https://www.postgresql.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/database/database-metrics.md b/docs/database/database-metrics.md index 6ad4aa9e5b..48d665100b 100644 --- a/docs/database/database-metrics.md +++ b/docs/database/database-metrics.md @@ -169,9 +169,8 @@ Even though parameterized query text can potentially have sensitive data, by usi | `couchbase` | [Couchbase](https://www.couchbase.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `couchdb` | [Apache CouchDB](https://couchdb.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `derby` | [Apache Derby](https://db.apache.org/derby/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `edb` | [EnterpriseDB](https://www.enterprisedb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `elasticsearch` | [Elasticsearch](https://www.elastic.co/elasticsearch) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `firebird` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `firebirdsql` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -191,7 +190,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `mysql` | [MySQL](https://www.mysql.com/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `oracle` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `oracle.db` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `postgresql` | [PostgreSQL](https://www.postgresql.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -334,9 +333,8 @@ Even though parameterized query text can potentially have sensitive data, by usi | `couchbase` | [Couchbase](https://www.couchbase.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `couchdb` | [Apache CouchDB](https://couchdb.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `derby` | [Apache Derby](https://db.apache.org/derby/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `edb` | [EnterpriseDB](https://www.enterprisedb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `elasticsearch` | [Elasticsearch](https://www.elastic.co/elasticsearch) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `firebird` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `firebirdsql` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -356,7 +354,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `mysql` | [MySQL](https://www.mysql.com/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `oracle` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `oracle.db` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `postgresql` | [PostgreSQL](https://www.postgresql.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/database/database-spans.md b/docs/database/database-spans.md index 54da00c781..09515d6640 100644 --- a/docs/database/database-spans.md +++ b/docs/database/database-spans.md @@ -216,9 +216,8 @@ and SHOULD be provided **at span creation time** (if provided at all): | `couchbase` | [Couchbase](https://www.couchbase.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `couchdb` | [Apache CouchDB](https://couchdb.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `derby` | [Apache Derby](https://db.apache.org/derby/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `edb` | [EnterpriseDB](https://www.enterprisedb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `elasticsearch` | [Elasticsearch](https://www.elastic.co/elasticsearch) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `firebird` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `firebirdsql` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -238,7 +237,7 @@ and SHOULD be provided **at span creation time** (if provided at all): | `mysql` | [MySQL](https://www.mysql.com/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `oracle` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `oracle.db` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `postgresql` | [PostgreSQL](https://www.postgresql.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/model/database/registry.yaml b/model/database/registry.yaml index 10ce2f560d..1205a016ce 100644 --- a/model/database/registry.yaml +++ b/model/database/registry.yaml @@ -190,16 +190,12 @@ groups: value: "derby" # trademark on 'derby' brief: "[Apache Derby](https://db.apache.org/derby/)" stability: development - - id: edb - value: "edb" # trademark on 'enterprisedb' and 'edb' - brief: "[EnterpriseDB](https://www.enterprisedb.com/)" - stability: development - id: elasticsearch value: "elasticsearch" # trademark on 'elasticsearch' brief: "[Elasticsearch](https://www.elastic.co/elasticsearch)" stability: development - - id: firebird - value: "firebird" # no trademark? + - id: firebirdsql + value: "firebirdsql" # no trademark brief: "[Firebird](https://www.firebirdsql.org/)" stability: development - id: gcp.spanner @@ -226,7 +222,7 @@ groups: value: "hsqldb" # no trademark brief: "[HyperSQL Database](https://hsqldb.org/)" stability: development - - id: ibm.db2 + - id: db2 value: "ibm.db2" # trademark on 'db2' brief: "[IBM Db2](https://www.ibm.com/db2)" stability: development @@ -274,8 +270,8 @@ groups: value: "opensearch" # trademark on 'opensearch' brief: "[OpenSearch](https://opensearch.org/)" stability: development - - id: oracle - value: "oracle" + - id: oracle.db + value: "oracle.db" brief: "[Oracle Database](https://www.oracle.com/database/)" stability: development - id: postgresql From ca032a001af534f2ae518940ef1c992d0b6bb532 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Sun, 12 Jan 2025 10:58:28 -0800 Subject: [PATCH 11/24] h2database --- docs/attributes-registry/db.md | 2 +- docs/database/database-metrics.md | 4 ++-- docs/database/database-spans.md | 2 +- model/database/registry.yaml | 6 +++--- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/docs/attributes-registry/db.md b/docs/attributes-registry/db.md index 8549a81a5e..96859552e4 100644 --- a/docs/attributes-registry/db.md +++ b/docs/attributes-registry/db.md @@ -99,7 +99,7 @@ Semantic conventions for individual database systems SHOULD document what `db.re | `firebirdsql` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `h2database ` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hive` | [Apache Hive](https://hive.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/database/database-metrics.md b/docs/database/database-metrics.md index 48d665100b..a6da376521 100644 --- a/docs/database/database-metrics.md +++ b/docs/database/database-metrics.md @@ -173,7 +173,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `firebirdsql` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `h2database ` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hive` | [Apache Hive](https://hive.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -337,7 +337,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `firebirdsql` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `h2database ` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hive` | [Apache Hive](https://hive.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/database/database-spans.md b/docs/database/database-spans.md index 09515d6640..ffc56930e0 100644 --- a/docs/database/database-spans.md +++ b/docs/database/database-spans.md @@ -220,7 +220,7 @@ and SHOULD be provided **at span creation time** (if provided at all): | `firebirdsql` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `h2` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `h2database ` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hive` | [Apache Hive](https://hive.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/model/database/registry.yaml b/model/database/registry.yaml index 1205a016ce..ee39a8237e 100644 --- a/model/database/registry.yaml +++ b/model/database/registry.yaml @@ -206,8 +206,8 @@ groups: value: "geode" # trademark on 'geode' brief: "[Apache Geode](https://geode.apache.org/)" stability: development - - id: h2 - value: "h2" # no trademark + - id: h2database + value: "h2database " # no trademark brief: "[H2 Database](https://h2database.com/)" stability: development - id: hbase @@ -222,7 +222,7 @@ groups: value: "hsqldb" # no trademark brief: "[HyperSQL Database](https://hsqldb.org/)" stability: development - - id: db2 + - id: ibm.db2 value: "ibm.db2" # trademark on 'db2' brief: "[IBM Db2](https://www.ibm.com/db2)" stability: development From 7316d5ccf16c174cb47b6a4943e0237ce1d37ed8 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Wed, 15 Jan 2025 22:01:06 -0800 Subject: [PATCH 12/24] more renames --- docs/attributes-registry/azure.md | 2 +- docs/attributes-registry/cassandra.md | 2 +- docs/attributes-registry/db.md | 10 +++++----- docs/database/cassandra.md | 2 +- docs/database/cosmosdb.md | 2 +- docs/database/database-metrics.md | 12 ++++++------ docs/database/database-spans.md | 6 +++--- model/azure/registry.yaml | 2 +- model/cassandra/registry.yaml | 2 +- model/database/deprecated/registry-deprecated.yaml | 8 ++++---- model/database/registry.yaml | 6 +++--- model/database/spans.yaml | 4 ++-- schema-next.yaml | 8 +++++--- 13 files changed, 34 insertions(+), 32 deletions(-) diff --git a/docs/attributes-registry/azure.md b/docs/attributes-registry/azure.md index f3b6319e0f..8c93eea089 100644 --- a/docs/attributes-registry/azure.md +++ b/docs/attributes-registry/azure.md @@ -27,8 +27,8 @@ This group defines attributes for Azure Cosmos DB. |---|---|---|---|---| | `az.cosmosdb.connection.mode` | string | Cosmos client connection mode. | `gateway`; `direct` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `az.cosmosdb.consistency.level` | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `az.cosmosdb.request.body.size` | int | Request payload size in bytes. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `az.cosmosdb.request.charge` | double | Request units consumed for the operation. | `46.18`; `1.0` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `az.cosmosdb.request.content_length` | int | Request payload size in bytes. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `az.cosmosdb.request.regions_contacted` | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [1] | `["North Central US", "Australia East", "Australia Southeast"]` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `az.cosmosdb.response.sub_status_code` | int | Cosmos DB sub status code. | `1000`; `1002` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/attributes-registry/cassandra.md b/docs/attributes-registry/cassandra.md index 7a6d952724..8192749ff1 100644 --- a/docs/attributes-registry/cassandra.md +++ b/docs/attributes-registry/cassandra.md @@ -16,7 +16,7 @@ This group defines attributes for Cassandra. | `cassandra.coordinator.dc` | string | The data center of the coordinating node for a query. | `us-west-2` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra.coordinator.id` | string | The ID of the coordinating node for a query. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra.idempotence` | boolean | Whether or not the query is idempotent. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `cassandra.page_size` | int | The fetch size used for paging, i.e. how many rows will be returned at once. | `5000` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cassandra.page.size` | int | The fetch size used for paging, i.e. how many rows will be returned at once. | `5000` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra.speculative_execution_count` | int | The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. | `0`; `2` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | --- diff --git a/docs/attributes-registry/db.md b/docs/attributes-registry/db.md index 96859552e4..b77f1f6551 100644 --- a/docs/attributes-registry/db.md +++ b/docs/attributes-registry/db.md @@ -27,7 +27,7 @@ This group defines the attributes used to describe telemetry in the context of d | `db.query.text` | string | The database query being executed. [7] | `SELECT * FROM wuser_table where username = ?`; `SET mykey ?` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `db.response.returned_rows` | int | Number of rows returned by the operation. | `10`; `30`; `1000` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `db.response.status_code` | string | Database response status code. [8] | `102`; `ORA-17002`; `08P01`; `404` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `db.system.name` | string | The database management system (DBMS) product as identified by the client instrumentation. [9] | `other_sql`; `adabas`; `actian.ingres` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `db.system.name` | string | The database management system (DBMS) product as identified by the client instrumentation. [9] | `other_sql`; `software_ag.adabas`; `actian.ingres` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | **[1] `db.collection.name`:** It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. @@ -85,7 +85,6 @@ Semantic conventions for individual database systems SHOULD document what `db.re | Value | Description | Stability | |---|---|---| | `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `az.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -107,7 +106,7 @@ Semantic conventions for individual database systems SHOULD document what `db.re | `ibm.informix` | [IBM Informix](https://www.ibm.com/products/informix) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `ibm.netezza` | [IBM Netezza](https://www.ibm.com/products/netezza) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `influxdb` | [InfluxDB](https://www.influxdata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `instantdb` | [InstantDB](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `instantdb` | [Instant](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `mariadb` | [MariaDB](https://mariadb.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `memcached` | [Memcached](https://memcached.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -122,6 +121,7 @@ Semantic conventions for individual database systems SHOULD document what `db.re | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `software_ag.adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -136,7 +136,7 @@ Describes deprecated database attributes. | `db.cassandra.coordinator.dc` | string | Deprecated, use `cassandra.coordinator.dc` instead. | `us-west-2` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.coordinator.dc`. | | `db.cassandra.coordinator.id` | string | Deprecated, use `cassandra.coordinator.id` instead. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.coordinator.id`. | | `db.cassandra.idempotence` | boolean | Deprecated, use `cassandra.idempotence` instead. | | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.idempotence`. | -| `db.cassandra.page_size` | int | Deprecated, use `cassandra.page_size` instead. | `5000` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.page_size`. | +| `db.cassandra.page_size` | int | Deprecated, use `cassandra.page.size` instead. | `5000` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.page.size`. | | `db.cassandra.speculative_execution_count` | int | Deprecated, use `cassandra.speculative_execution_count` instead. | `0`; `2` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.speculative_execution_count`. | | `db.cassandra.table` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | | `db.connection_string` | string | Deprecated, use `server.address`, `server.port` attributes instead. | `Server=(localdb)\v11.0;Integrated Security=true;` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `server.address` and `server.port`. | @@ -147,7 +147,7 @@ Describes deprecated database attributes. | `db.cosmosdb.operation_type` | string | Deprecated, no replacement at this time. | `batch`; `create`; `delete` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
No replacement at this time. | | `db.cosmosdb.regions_contacted` | string[] | Deprecated, use `az.cosmosdb.request.regions_contacted` instead. | `["North Central US", "Australia East", "Australia Southeast"]` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.request.regions_contacted`. | | `db.cosmosdb.request_charge` | double | Deprecated, use `az.cosmosdb.request.charge` instead. | `46.18`; `1.0` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.request.charge`. | -| `db.cosmosdb.request_content_length` | int | Deprecated, use `az.cosmosdb.request.content_length` instead. | | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.request.content_length`. | +| `db.cosmosdb.request_content_length` | int | Deprecated, use `az.cosmosdb.request.body.size` instead. | | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.request.body.size`. | | `db.cosmosdb.status_code` | int | Deprecated, use `db.response.status_code` instead. | `200`; `201` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.response.status_code`. | | `db.cosmosdb.sub_status_code` | int | Deprecated, use `cosmosdb.response.sub_status_code` instead. | `1000`; `1002` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.response.sub_status_code`. | | `db.elasticsearch.cluster.name` | string | Deprecated, use `db.namespace` instead. | `e9106fc68e3044f0b1475b04bf4ffd5f` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.namespace`. | diff --git a/docs/database/cassandra.md b/docs/database/cassandra.md index 54d4c4821d..751c344d46 100644 --- a/docs/database/cassandra.md +++ b/docs/database/cassandra.md @@ -31,7 +31,7 @@ The Semantic Conventions for [Cassandra](https://cassandra.apache.org/) extend a | [`cassandra.coordinator.dc`](/docs/attributes-registry/cassandra.md) | string | The data center of the coordinating node for a query. | `us-west-2` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`cassandra.coordinator.id`](/docs/attributes-registry/cassandra.md) | string | The ID of the coordinating node for a query. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`cassandra.idempotence`](/docs/attributes-registry/cassandra.md) | boolean | Whether or not the query is idempotent. | | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`cassandra.page_size`](/docs/attributes-registry/cassandra.md) | int | The fetch size used for paging, i.e. how many rows will be returned at once. | `5000` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`cassandra.page.size`](/docs/attributes-registry/cassandra.md) | int | The fetch size used for paging, i.e. how many rows will be returned at once. | `5000` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`cassandra.speculative_execution_count`](/docs/attributes-registry/cassandra.md) | int | The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. | `0`; `2` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`db.operation.batch.size`](/docs/attributes-registry/db.md) | int | The number of queries included in a batch operation. [11] | `2`; `3`; `4` | `Recommended` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.query.summary`](/docs/attributes-registry/db.md) | string | Low cardinality representation of a database query text. [12] | `SELECT wuser_table`; `INSERT shipping_details SELECT orders`; `get user by id` | `Recommended` [13] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | diff --git a/docs/database/cosmosdb.md b/docs/database/cosmosdb.md index 8b0bd59819..82c0bb47c3 100644 --- a/docs/database/cosmosdb.md +++ b/docs/database/cosmosdb.md @@ -52,7 +52,7 @@ Cosmos DB instrumentation includes call-level (public API) surface spans and net | [`error.type`](/docs/attributes-registry/error.md) | string | Describes a class of error the operation ended with. [7] | `timeout`; `java.net.UnknownHostException`; `server_certificate_invalid`; `500` | `Conditionally Required` If and only if the operation failed. | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`server.port`](/docs/attributes-registry/server.md) | int | Server port number. [8] | `80`; `8080`; `443` | `Conditionally Required` If not default (443). | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`az.client.id`](/docs/attributes-registry/azure.md) | string | The unique identifier of the client instance. | `3ba4827d-4422-483f-b59f-85b74211c11d`; `storage-client-1` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`az.cosmosdb.request.content_length`](/docs/attributes-registry/azure.md) | int | Request payload size in bytes. | | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`az.cosmosdb.request.body.size`](/docs/attributes-registry/azure.md) | int | Request payload size in bytes. | | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`az.namespace`](/docs/attributes-registry/azure.md) | string | [Azure Resource Provider Namespace](https://learn.microsoft.com/azure/azure-resource-manager/management/azure-services-resource-providers) as recognized by the client. [9] | `Microsoft.DocumentDB` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`db.operation.batch.size`](/docs/attributes-registry/db.md) | int | The number of queries included in a batch operation. [10] | `2`; `3`; `4` | `Recommended` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.query.summary`](/docs/attributes-registry/db.md) | string | Low cardinality representation of a database query text. [11] | `SELECT wuser_table`; `INSERT shipping_details SELECT orders`; `get user by id` | `Recommended` [12] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | diff --git a/docs/database/database-metrics.md b/docs/database/database-metrics.md index a6da376521..6b63097d46 100644 --- a/docs/database/database-metrics.md +++ b/docs/database/database-metrics.md @@ -83,7 +83,7 @@ of `[ 0.001, 0.005, 0.01, 0.05, 0.1, 0.5, 1, 5, 10 ]`. | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| -| [`db.system.name`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `adabas`; `actian.ingres` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| [`db.system.name`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `software_ag.adabas`; `actian.ingres` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | The name of a collection (table, container) within the database. [2] | `public.users`; `customers` | `Conditionally Required` [3] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the database, fully qualified within the server address and port. [4] | `customers`; `test.users` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.operation.name`](/docs/attributes-registry/db.md) | string | The name of the operation or command being executed. [5] | `findAndModify`; `HMSET`; `SELECT` | `Conditionally Required` [6] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -159,7 +159,6 @@ Even though parameterized query text can potentially have sensitive data, by usi | Value | Description | Stability | |---|---|---| | `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `az.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -181,7 +180,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `ibm.informix` | [IBM Informix](https://www.ibm.com/products/informix) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `ibm.netezza` | [IBM Netezza](https://www.ibm.com/products/netezza) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `influxdb` | [InfluxDB](https://www.influxdata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `instantdb` | [InstantDB](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `instantdb` | [Instant](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `mariadb` | [MariaDB](https://mariadb.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `memcached` | [Memcached](https://memcached.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -196,6 +195,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `software_ag.adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -247,7 +247,7 @@ Explaining bucket configuration: | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| -| [`db.system.name`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `adabas`; `actian.ingres` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| [`db.system.name`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `software_ag.adabas`; `actian.ingres` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | The name of a collection (table, container) within the database. [2] | `public.users`; `customers` | `Conditionally Required` [3] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the database, fully qualified within the server address and port. [4] | `customers`; `test.users` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.operation.name`](/docs/attributes-registry/db.md) | string | The name of the operation or command being executed. [5] | `findAndModify`; `HMSET`; `SELECT` | `Conditionally Required` [6] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -323,7 +323,6 @@ Even though parameterized query text can potentially have sensitive data, by usi | Value | Description | Stability | |---|---|---| | `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `az.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -345,7 +344,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `ibm.informix` | [IBM Informix](https://www.ibm.com/products/informix) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `ibm.netezza` | [IBM Netezza](https://www.ibm.com/products/netezza) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `influxdb` | [InfluxDB](https://www.influxdata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `instantdb` | [InstantDB](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `instantdb` | [Instant](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `mariadb` | [MariaDB](https://mariadb.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `memcached` | [Memcached](https://memcached.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -360,6 +359,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `software_ag.adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/database/database-spans.md b/docs/database/database-spans.md index ffc56930e0..445e6c5bf4 100644 --- a/docs/database/database-spans.md +++ b/docs/database/database-spans.md @@ -107,7 +107,7 @@ These attributes will usually be the same for all operations performed over the | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| -| [`db.system.name`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `adabas`; `actian.ingres` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| [`db.system.name`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `software_ag.adabas`; `actian.ingres` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | The name of a collection (table, container) within the database. [2] | `public.users`; `customers` | `Conditionally Required` [3] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the database, fully qualified within the server address and port. [4] | `customers`; `test.users` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.operation.name`](/docs/attributes-registry/db.md) | string | The name of the operation or command being executed. [5] | `findAndModify`; `HMSET`; `SELECT` | `Conditionally Required` [6] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -206,7 +206,6 @@ and SHOULD be provided **at span creation time** (if provided at all): | Value | Description | Stability | |---|---|---| | `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `az.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -228,7 +227,7 @@ and SHOULD be provided **at span creation time** (if provided at all): | `ibm.informix` | [IBM Informix](https://www.ibm.com/products/informix) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `ibm.netezza` | [IBM Netezza](https://www.ibm.com/products/netezza) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `influxdb` | [InfluxDB](https://www.influxdata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `instantdb` | [InstantDB](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `instantdb` | [Instant](https://www.instantdb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `mariadb` | [MariaDB](https://mariadb.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `memcached` | [Memcached](https://memcached.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -243,6 +242,7 @@ and SHOULD be provided **at span creation time** (if provided at all): | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `software_ag.adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/model/azure/registry.yaml b/model/azure/registry.yaml index e81ce1f4b5..7307024d70 100644 --- a/model/azure/registry.yaml +++ b/model/azure/registry.yaml @@ -48,7 +48,7 @@ groups: stability: development brief: Request units consumed for the operation. examples: [46.18, 1.0] - - id: az.cosmosdb.request.content_length + - id: az.cosmosdb.request.body.size type: int stability: development brief: Request payload size in bytes. diff --git a/model/cassandra/registry.yaml b/model/cassandra/registry.yaml index bf97c1a8e3..5c6acb71eb 100644 --- a/model/cassandra/registry.yaml +++ b/model/cassandra/registry.yaml @@ -61,7 +61,7 @@ groups: stability: development brief: > Whether or not the query is idempotent. - - id: cassandra.page_size + - id: cassandra.page.size type: int stability: development brief: > diff --git a/model/database/deprecated/registry-deprecated.yaml b/model/database/deprecated/registry-deprecated.yaml index 15f88e04dd..ad3dafcd3c 100644 --- a/model/database/deprecated/registry-deprecated.yaml +++ b/model/database/deprecated/registry-deprecated.yaml @@ -216,8 +216,8 @@ groups: - id: db.cassandra.page_size type: int stability: experimental - brief: "Deprecated, use `cassandra.page_size` instead." - deprecated: "Replaced by `cassandra.page_size`." + brief: "Deprecated, use `cassandra.page.size` instead." + deprecated: "Replaced by `cassandra.page.size`." examples: [5000] - id: db.cassandra.speculative_execution_count type: int @@ -254,8 +254,8 @@ groups: - id: db.cosmosdb.request_content_length type: int stability: experimental - brief: "Deprecated, use `az.cosmosdb.request.content_length` instead." - deprecated: "Replaced by `az.cosmosdb.request.content_length`." + brief: "Deprecated, use `az.cosmosdb.request.body.size` instead." + deprecated: "Replaced by `az.cosmosdb.request.body.size`." - id: db.cosmosdb.sub_status_code type: int stability: experimental diff --git a/model/database/registry.yaml b/model/database/registry.yaml index ee39a8237e..5becae487b 100644 --- a/model/database/registry.yaml +++ b/model/database/registry.yaml @@ -142,8 +142,8 @@ groups: value: "other_sql" brief: "Some other SQL database. Fallback only. See notes." stability: development - - id: adabas - value: "adabas" # trademark on 'adabas' + - id: software_ag.adabas + value: "software_ag.adabas" # trademark on 'adabas' brief: "Adabas (Adaptable Database System)" stability: development - id: actian.ingres @@ -240,7 +240,7 @@ groups: stability: development - id: instantdb value: "instantdb" # no trademark - brief: "[InstantDB](https://www.instantdb.com/)" + brief: "[Instant](https://www.instantdb.com/)" stability: development - id: mariadb value: "mariadb" # trademark on 'mariadb' diff --git a/model/database/spans.yaml b/model/database/spans.yaml index a525df7f28..2a28538356 100644 --- a/model/database/spans.yaml +++ b/model/database/spans.yaml @@ -272,7 +272,7 @@ groups: examples: ["mykeyspace"] requirement_level: conditionally_required: If available. - - ref: cassandra.page_size + - ref: cassandra.page.size - ref: cassandra.consistency.level - ref: db.collection.name brief: The name of the Cassandra table that the operation is acting upon. @@ -630,7 +630,7 @@ groups: It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. requirement_level: conditionally_required: if available - - ref: az.cosmosdb.request.content_length + - ref: az.cosmosdb.request.body.size - ref: db.response.status_code brief: > Cosmos DB status code. diff --git a/schema-next.yaml b/schema-next.yaml index 0d63e0e91c..7b3af52416 100644 --- a/schema-next.yaml +++ b/schema-next.yaml @@ -24,16 +24,18 @@ versions: db.cassandra.coordinator.id: cassandra.coordinator.id db.cassandra.consistency_level: cassandra.consistency.level db.cassandra.idempotence: cassandra.idempotence - db.cassandra.page_size: cassandra.page_size - db.cassandra.speculative_execution_count: cassandra.speculative_execution.count + db.cassandra.page_size: cassandra.page.size + db.cassandra.speculative_execution_count: cassandra.speculative_execution_count db.cosmosdb.client_id: az.client.id db.cosmosdb.connection_mode: az.cosmosdb.connection.mode db.cosmosdb.consistency_level: az.cosmosdb.consistency.level db.cosmosdb.request_charge: az.cosmosdb.request.charge - db.cosmosdb.request_content_length: az.cosmosdb.request.content_length + db.cosmosdb.request_content_length: az.cosmosdb.request.body.size db.cosmosdb.regions_contacted: az.cosmosdb.request.regions_contacted db.cosmosdb.sub_status_code: az.cosmosdb.response.sub_status_code db.elasticsearch.node.name: elasticsearch.node.name + # db.elasticsearch.path_parts is a template attribute, schema transformation + # does not support it, adding as a comment for consistency # db.elasticsearch.path_parts. -> elasticsearch.path_parts. 1.29.0: all: From d220ce3d152ae7382d7e1ca60e1241604933e565 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Wed, 15 Jan 2025 22:25:39 -0800 Subject: [PATCH 13/24] mssql -> microsoft.sql_server --- docs/attributes-registry/db.md | 2 +- docs/database/database-metrics.md | 4 ++-- docs/database/database-spans.md | 2 +- model/database/registry.yaml | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/attributes-registry/db.md b/docs/attributes-registry/db.md index b77f1f6551..60f80e49a7 100644 --- a/docs/attributes-registry/db.md +++ b/docs/attributes-registry/db.md @@ -110,8 +110,8 @@ Semantic conventions for individual database systems SHOULD document what `db.re | `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `mariadb` | [MariaDB](https://mariadb.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `memcached` | [Memcached](https://memcached.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `microsoft.sql_server` | [Microsoft SQL Server](https://www.microsoft.com/sql-server) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `mongodb` | [MongoDB](https://www.mongodb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mssql` | [Microsoft SQL Server](https://www.microsoft.com/sql-server) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `mysql` | [MySQL](https://www.mysql.com/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/database/database-metrics.md b/docs/database/database-metrics.md index 6b63097d46..a63c357c40 100644 --- a/docs/database/database-metrics.md +++ b/docs/database/database-metrics.md @@ -184,8 +184,8 @@ Even though parameterized query text can potentially have sensitive data, by usi | `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `mariadb` | [MariaDB](https://mariadb.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `memcached` | [Memcached](https://memcached.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `microsoft.sql_server` | [Microsoft SQL Server](https://www.microsoft.com/sql-server) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `mongodb` | [MongoDB](https://www.mongodb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mssql` | [Microsoft SQL Server](https://www.microsoft.com/sql-server) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `mysql` | [MySQL](https://www.mysql.com/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -348,8 +348,8 @@ Even though parameterized query text can potentially have sensitive data, by usi | `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `mariadb` | [MariaDB](https://mariadb.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `memcached` | [Memcached](https://memcached.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `microsoft.sql_server` | [Microsoft SQL Server](https://www.microsoft.com/sql-server) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `mongodb` | [MongoDB](https://www.mongodb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mssql` | [Microsoft SQL Server](https://www.microsoft.com/sql-server) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `mysql` | [MySQL](https://www.mysql.com/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/database/database-spans.md b/docs/database/database-spans.md index 445e6c5bf4..b759c203b4 100644 --- a/docs/database/database-spans.md +++ b/docs/database/database-spans.md @@ -231,8 +231,8 @@ and SHOULD be provided **at span creation time** (if provided at all): | `intersystems.cache` | [InterSystems Caché](https://www.intersystems.com/products/cache/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `mariadb` | [MariaDB](https://mariadb.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `memcached` | [Memcached](https://memcached.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `microsoft.sql_server` | [Microsoft SQL Server](https://www.microsoft.com/sql-server) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `mongodb` | [MongoDB](https://www.mongodb.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `mssql` | [Microsoft SQL Server](https://www.microsoft.com/sql-server) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `mysql` | [MySQL](https://www.mysql.com/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/model/database/registry.yaml b/model/database/registry.yaml index 5becae487b..f24e79087c 100644 --- a/model/database/registry.yaml +++ b/model/database/registry.yaml @@ -254,8 +254,8 @@ groups: value: "mongodb" # trademark on 'mongodb' brief: "[MongoDB](https://www.mongodb.com/)" stability: development - - id: mssql - value: "mssql" # trademark on 'SQL Server' + - id: microsoft.sql_server + value: "microsoft.sql_server" # trademark on 'SQL Server' brief: "[Microsoft SQL Server](https://www.microsoft.com/sql-server)" stability: release_candidate - id: mysql From 310d80f092378b2b32ab8d862c8b63e91e3779a4 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 16 Jan 2025 15:52:28 -0800 Subject: [PATCH 14/24] az.cosmos -> azure.cosmos --- .chloggen/1734.yaml | 4 +- docs/attributes-registry/azure.md | 20 ++++---- docs/attributes-registry/db.md | 16 +++---- docs/database/cosmosdb.md | 48 +++++++++---------- docs/database/database-metrics.md | 4 +- docs/database/database-spans.md | 2 +- model/azure/cosmosdb-metrics.yaml | 12 ++--- model/azure/registry.yaml | 14 +++--- model/database/common.yaml | 6 +-- .../deprecated/registry-deprecated.yaml | 26 +++++----- model/database/registry.yaml | 4 +- model/database/spans.yaml | 16 +++---- schema-next.yaml | 14 +++--- 13 files changed, 93 insertions(+), 93 deletions(-) diff --git a/.chloggen/1734.yaml b/.chloggen/1734.yaml index 078e42833a..5e9cb2eaa1 100644 --- a/.chloggen/1734.yaml +++ b/.chloggen/1734.yaml @@ -4,8 +4,8 @@ component: db note: | Rename `db.system` to `db.system.name` and clean up its values. - Rename `db.elasticsearch.*`, `db.cassandra.*`, `db.cosmosdb.*` attributes to `elasticsearch.*`, `cassandra.*`, and `az.cosmosdb.*` respectively. - Rename `db.client.cosmosdb.*` metrics to `az.cosmosdb.client.*`. + Rename `db.elasticsearch.*`, `db.cassandra.*`, `db.cosmosdb.*` attributes to `elasticsearch.*`, `cassandra.*`, and `azure.cosmosdb.*` respectively. + Rename `db.client.cosmosdb.*` metrics to `azure.cosmosdb.client.*`. issues: [1581, 608] diff --git a/docs/attributes-registry/azure.md b/docs/attributes-registry/azure.md index 8c93eea089..da4930bfb6 100644 --- a/docs/attributes-registry/azure.md +++ b/docs/attributes-registry/azure.md @@ -15,9 +15,9 @@ This document defines generic attributes used by Azure Client Libraries. | Attribute | Type | Description | Examples | Stability | |---|---|---|---|---| -| `az.client.id` | string | The unique identifier of the client instance. | `3ba4827d-4422-483f-b59f-85b74211c11d`; `storage-client-1` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `az.namespace` | string | [Azure Resource Provider Namespace](https://learn.microsoft.com/azure/azure-resource-manager/management/azure-services-resource-providers) as recognized by the client. | `Microsoft.Storage`; `Microsoft.KeyVault`; `Microsoft.ServiceBus` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `az.service_request_id` | string | The unique identifier of the service request. It's generated by the Azure service and returned with the response. | `00000000-0000-0000-0000-000000000000` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.client.id` | string | The unique identifier of the client instance. | `3ba4827d-4422-483f-b59f-85b74211c11d`; `storage-client-1` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | ## Azure Cosmos DB Attributes @@ -25,18 +25,18 @@ This group defines attributes for Azure Cosmos DB. | Attribute | Type | Description | Examples | Stability | |---|---|---|---|---| -| `az.cosmosdb.connection.mode` | string | Cosmos client connection mode. | `gateway`; `direct` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `az.cosmosdb.consistency.level` | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `az.cosmosdb.request.body.size` | int | Request payload size in bytes. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `az.cosmosdb.request.charge` | double | Request units consumed for the operation. | `46.18`; `1.0` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `az.cosmosdb.request.regions_contacted` | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [1] | `["North Central US", "Australia East", "Australia Southeast"]` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `az.cosmosdb.response.sub_status_code` | int | Cosmos DB sub status code. | `1000`; `1002` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb.connection.mode` | string | Cosmos client connection mode. | `gateway`; `direct` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb.consistency.level` | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb.request.body.size` | int | Request payload size in bytes. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb.request.charge` | double | Request units consumed for the operation. | `46.18`; `1.0` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb.request.regions_contacted` | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [1] | `["North Central US", "Australia East", "Australia Southeast"]` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb.response.sub_status_code` | int | Cosmos DB sub status code. | `1000`; `1002` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -**[1] `az.cosmosdb.request.regions_contacted`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) +**[1] `azure.cosmosdb.request.regions_contacted`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) --- -`az.cosmosdb.connection.mode` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. +`azure.cosmosdb.connection.mode` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | Stability | |---|---|---| @@ -45,7 +45,7 @@ This group defines attributes for Azure Cosmos DB. --- -`az.cosmosdb.consistency.level` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. +`azure.cosmosdb.consistency.level` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | Stability | |---|---|---| diff --git a/docs/attributes-registry/db.md b/docs/attributes-registry/db.md index 60f80e49a7..6baacbf88e 100644 --- a/docs/attributes-registry/db.md +++ b/docs/attributes-registry/db.md @@ -87,7 +87,7 @@ Semantic conventions for individual database systems SHOULD document what `db.re | `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `az.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra` | [Apache Cassandra](https://cassandra.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `clickhouse` | [ClickHouse](https://clickhouse.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cockroachdb` | [CockroachDB](https://www.cockroachlabs.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -140,16 +140,16 @@ Describes deprecated database attributes. | `db.cassandra.speculative_execution_count` | int | Deprecated, use `cassandra.speculative_execution_count` instead. | `0`; `2` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.speculative_execution_count`. | | `db.cassandra.table` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | | `db.connection_string` | string | Deprecated, use `server.address`, `server.port` attributes instead. | `Server=(localdb)\v11.0;Integrated Security=true;` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `server.address` and `server.port`. | -| `db.cosmosdb.client_id` | string | Deprecated, use `az.client.id` instead. | `3ba4827d-4422-483f-b59f-85b74211c11d` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.client.id`. | -| `db.cosmosdb.connection_mode` | string | Deprecated, use `az.cosmosdb.connection.mode` instead. | `gateway`; `direct` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.connection.mode`. | -| `db.cosmosdb.consistency_level` | string | Deprecated, use `cosmosdb.consistency.level` instead. | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.consistency.level`. | +| `db.cosmosdb.client_id` | string | Deprecated, use `azure.client.id` instead. | `3ba4827d-4422-483f-b59f-85b74211c11d` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.client.id`. | +| `db.cosmosdb.connection_mode` | string | Deprecated, use `azure.cosmosdb.connection.mode` instead. | `gateway`; `direct` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.connection.mode`. | +| `db.cosmosdb.consistency_level` | string | Deprecated, use `cosmosdb.consistency.level` instead. | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.consistency.level`. | | `db.cosmosdb.container` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | | `db.cosmosdb.operation_type` | string | Deprecated, no replacement at this time. | `batch`; `create`; `delete` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
No replacement at this time. | -| `db.cosmosdb.regions_contacted` | string[] | Deprecated, use `az.cosmosdb.request.regions_contacted` instead. | `["North Central US", "Australia East", "Australia Southeast"]` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.request.regions_contacted`. | -| `db.cosmosdb.request_charge` | double | Deprecated, use `az.cosmosdb.request.charge` instead. | `46.18`; `1.0` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.request.charge`. | -| `db.cosmosdb.request_content_length` | int | Deprecated, use `az.cosmosdb.request.body.size` instead. | | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.request.body.size`. | +| `db.cosmosdb.regions_contacted` | string[] | Deprecated, use `azure.cosmosdb.request.regions_contacted` instead. | `["North Central US", "Australia East", "Australia Southeast"]` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.request.regions_contacted`. | +| `db.cosmosdb.request_charge` | double | Deprecated, use `azure.cosmosdb.request.charge` instead. | `46.18`; `1.0` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.request.charge`. | +| `db.cosmosdb.request_content_length` | int | Deprecated, use `azure.cosmosdb.request.body.size` instead. | | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.request.body.size`. | | `db.cosmosdb.status_code` | int | Deprecated, use `db.response.status_code` instead. | `200`; `201` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.response.status_code`. | -| `db.cosmosdb.sub_status_code` | int | Deprecated, use `cosmosdb.response.sub_status_code` instead. | `1000`; `1002` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `az.cosmosdb.response.sub_status_code`. | +| `db.cosmosdb.sub_status_code` | int | Deprecated, use `azure.cosmosdb.response.sub_status_code` instead. | `1000`; `1002` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.response.sub_status_code`. | | `db.elasticsearch.cluster.name` | string | Deprecated, use `db.namespace` instead. | `e9106fc68e3044f0b1475b04bf4ffd5f` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.namespace`. | | `db.elasticsearch.node.name` | string | Deprecated, use `elasticsearch.node.name` instead. | `instance-0000000001` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `elasticsearch.node.name`. | | `db.elasticsearch.path_parts.` | string | Deprecated, use `elasticsearch.path_parts` instead. | `db.elasticsearch.path_parts.index=test-index`; `db.elasticsearch.path_parts.doc_id=123` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `elasticsearch.path_parts`. | diff --git a/docs/database/cosmosdb.md b/docs/database/cosmosdb.md index 82c0bb47c3..8cd49719ca 100644 --- a/docs/database/cosmosdb.md +++ b/docs/database/cosmosdb.md @@ -11,9 +11,9 @@ linkTitle: Cosmos DB - [Example](#example) - [Operation Level Metrics](#operation-level-metrics) - [Metric: `db.client.operation.duration`](#metric-dbclientoperationduration) - - [Metric: `az.cosmosdb.client.response.returned_rows`](#metric-azcosmosdbclientresponsereturned_rows) - - [Metric: `az.cosmosdb.client.operation.request_charge`](#metric-azcosmosdbclientoperationrequest_charge) - - [Metric: `az.cosmosdb.client.active_instance.count`](#metric-azcosmosdbclientactive_instancecount) + - [Metric: `azure.cosmosdb.client.response.returned_rows`](#metric-azurecosmosdbclientresponsereturned_rows) + - [Metric: `azure.cosmosdb.client.operation.request_charge`](#metric-azurecosmosdbclientoperationrequest_charge) + - [Metric: `azure.cosmosdb.client.active_instance.count`](#metric-azurecosmosdbclientactive_instancecount) @@ -30,7 +30,7 @@ extend and override the [Database Semantic Conventions](database-spans.md). Cosmos DB instrumentation includes call-level (public API) surface spans and network spans. Depending on the connection mode (Gateway or Direct), network-level spans may also be created. - + @@ -39,11 +39,11 @@ Cosmos DB instrumentation includes call-level (public API) surface spans and net | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| -| [`az.cosmosdb.connection.mode`](/docs/attributes-registry/azure.md) | string | Cosmos client connection mode. | `gateway`; `direct` | `Conditionally Required` [1] | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`az.cosmosdb.consistency.level`](/docs/attributes-registry/azure.md) | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`az.cosmosdb.request.charge`](/docs/attributes-registry/azure.md) | double | Request units consumed for the operation. | `46.18`; `1.0` | `Conditionally Required` when available | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`az.cosmosdb.request.regions_contacted`](/docs/attributes-registry/azure.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [2] | `["North Central US", "Australia East", "Australia Southeast"]` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`az.cosmosdb.response.sub_status_code`](/docs/attributes-registry/azure.md) | int | Cosmos DB sub status code. | `1000`; `1002` | `Conditionally Required` when response was received and contained sub-code. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`azure.cosmosdb.connection.mode`](/docs/attributes-registry/azure.md) | string | Cosmos client connection mode. | `gateway`; `direct` | `Conditionally Required` [1] | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`azure.cosmosdb.consistency.level`](/docs/attributes-registry/azure.md) | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`azure.cosmosdb.request.charge`](/docs/attributes-registry/azure.md) | double | Request units consumed for the operation. | `46.18`; `1.0` | `Conditionally Required` when available | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`azure.cosmosdb.request.regions_contacted`](/docs/attributes-registry/azure.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [2] | `["North Central US", "Australia East", "Australia Southeast"]` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`azure.cosmosdb.response.sub_status_code`](/docs/attributes-registry/azure.md) | int | Cosmos DB sub status code. | `1000`; `1002` | `Conditionally Required` when response was received and contained sub-code. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | Cosmos DB container name. [3] | `public.users`; `customers` | `Conditionally Required` if available | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the database, fully qualified within the server address and port. | `customers`; `test.users` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.operation.name`](/docs/attributes-registry/db.md) | string | The name of the operation or command being executed. [4] | `create_item`; `query_items`; `read_item` | `Conditionally Required` [5] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -51,9 +51,9 @@ Cosmos DB instrumentation includes call-level (public API) surface spans and net | [`db.response.status_code`](/docs/attributes-registry/db.md) | string | Cosmos DB status code. [6] | `200`; `201` | `Conditionally Required` if response was received | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`error.type`](/docs/attributes-registry/error.md) | string | Describes a class of error the operation ended with. [7] | `timeout`; `java.net.UnknownHostException`; `server_certificate_invalid`; `500` | `Conditionally Required` If and only if the operation failed. | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`server.port`](/docs/attributes-registry/server.md) | int | Server port number. [8] | `80`; `8080`; `443` | `Conditionally Required` If not default (443). | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | -| [`az.client.id`](/docs/attributes-registry/azure.md) | string | The unique identifier of the client instance. | `3ba4827d-4422-483f-b59f-85b74211c11d`; `storage-client-1` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`az.cosmosdb.request.body.size`](/docs/attributes-registry/azure.md) | int | Request payload size in bytes. | | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`az.namespace`](/docs/attributes-registry/azure.md) | string | [Azure Resource Provider Namespace](https://learn.microsoft.com/azure/azure-resource-manager/management/azure-services-resource-providers) as recognized by the client. [9] | `Microsoft.DocumentDB` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`azure.client.id`](/docs/attributes-registry/azure.md) | string | The unique identifier of the client instance. | `3ba4827d-4422-483f-b59f-85b74211c11d`; `storage-client-1` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`azure.cosmosdb.request.body.size`](/docs/attributes-registry/azure.md) | int | Request payload size in bytes. | | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`db.operation.batch.size`](/docs/attributes-registry/db.md) | int | The number of queries included in a batch operation. [10] | `2`; `3`; `4` | `Recommended` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.query.summary`](/docs/attributes-registry/db.md) | string | Low cardinality representation of a database query text. [11] | `SELECT wuser_table`; `INSERT shipping_details SELECT orders`; `get user by id` | `Recommended` [12] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.query.text`](/docs/attributes-registry/db.md) | string | The database query being executed. [13] | `SELECT * FROM wuser_table where username = ?`; `SET mykey ?` | `Recommended` [14] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -61,9 +61,9 @@ Cosmos DB instrumentation includes call-level (public API) surface spans and net | [`user_agent.original`](/docs/attributes-registry/user-agent.md) | string | Full user-agent string is generated by Cosmos DB SDK [16] | `cosmos-netstandard-sdk/3.23.0\|3.23.1\|1\|X64\|Linux 5.4.0-1098-azure 104 18\|.NET Core 3.1.32\|S\|` | `Recommended` | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`db.operation.parameter.`](/docs/attributes-registry/db.md) | string | A database operation parameter, with `` being the parameter name, and the attribute value being a string representation of the parameter value. [17] | `someval`; `55` | `Opt-In` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -**[1] `az.cosmosdb.connection.mode`:** if not `gateway` (the default value is assumed to be `gateway`). +**[1] `azure.cosmosdb.connection.mode`:** if not `gateway` (the default value is assumed to be `gateway`). -**[2] `az.cosmosdb.request.regions_contacted`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) +**[2] `azure.cosmosdb.request.regions_contacted`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) **[3] `db.collection.name`:** It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. @@ -239,7 +239,7 @@ and SHOULD be provided **at span creation time** (if provided at all): --- -`az.cosmosdb.connection.mode` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. +`azure.cosmosdb.connection.mode` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | Stability | |---|---|---| @@ -248,7 +248,7 @@ and SHOULD be provided **at span creation time** (if provided at all): --- -`az.cosmosdb.consistency.level` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. +`azure.cosmosdb.consistency.level` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | Stability | |---|---|---| @@ -326,7 +326,7 @@ Explaining bucket configuration: 3. 100, 250: Higher Usage Levels, These boundaries represent operations that may require significant resources, such as complex queries or larger transactions. Monitoring RUs in these ranges can help identify performance bottlenecks or costly queries that might lead to throttling. 4. 500, 1000: Very High Usage Levels, These buckets capture operations that consume a substantial number of Request Units, which may indicate potentially expensive queries or batch processes. Understanding the frequency and patterns of such high RU usage can be critical in optimizing performance and ensuring the application remains within provisioned throughput limits. - + @@ -335,19 +335,19 @@ Explaining bucket configuration: | Name | Instrument Type | Unit (UCUM) | Description | Stability | | -------- | --------------- | ----------- | -------------- | --------- | -| `az.cosmosdb.client.operation.request_charge` | Histogram | `{request_unit}` | [Request charge](https://learn.microsoft.com/azure/cosmos-db/request-units) consumed by the operation | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb.client.operation.request_charge` | Histogram | `{request_unit}` | [Request charge](https://learn.microsoft.com/azure/cosmos-db/request-units) consumed by the operation | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| -| [`az.cosmosdb.consistency.level`](/docs/attributes-registry/azure.md) | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`az.cosmosdb.response.sub_status_code`](/docs/attributes-registry/azure.md) | int | Cosmos DB sub status code. | `1000`; `1002` | `Conditionally Required` when response was received and contained sub-code. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`azure.cosmosdb.consistency.level`](/docs/attributes-registry/azure.md) | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`azure.cosmosdb.response.sub_status_code`](/docs/attributes-registry/azure.md) | int | Cosmos DB sub status code. | `1000`; `1002` | `Conditionally Required` when response was received and contained sub-code. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | Cosmos DB container name. [1] | `public.users`; `customers` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the database, fully qualified within the server address and port. | `customers`; `test.users` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.operation.name`](/docs/attributes-registry/db.md) | string | The name of the operation or command being executed. [2] | `findAndModify`; `HMSET`; `SELECT` | `Conditionally Required` [3] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.response.status_code`](/docs/attributes-registry/db.md) | string | Database response status code. [4] | `102`; `ORA-17002`; `08P01`; `404` | `Conditionally Required` [5] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`error.type`](/docs/attributes-registry/error.md) | string | Describes a class of error the operation ended with. [6] | `timeout`; `java.net.UnknownHostException`; `server_certificate_invalid`; `500` | `Conditionally Required` If and only if the operation failed. | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`server.port`](/docs/attributes-registry/server.md) | int | Server port number. [7] | `80`; `8080`; `443` | `Conditionally Required` [8] | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | -| [`az.cosmosdb.request.regions_contacted`](/docs/attributes-registry/azure.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [9] | `["North Central US", "Australia East", "Australia Southeast"]` | `Recommended` If available | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`azure.cosmosdb.request.regions_contacted`](/docs/attributes-registry/azure.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [9] | `["North Central US", "Australia East", "Australia Southeast"]` | `Recommended` If available | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`server.address`](/docs/attributes-registry/server.md) | string | Name of the database host. [10] | `example.com`; `10.1.2.80`; `/tmp/my.sock` | `Recommended` | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | **[1] `db.collection.name`:** It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. @@ -384,13 +384,13 @@ Instrumentations SHOULD document how `error.type` is populated. **[8] `server.port`:** If using a port other than the default port for this DBMS and if `server.address` is set. -**[9] `az.cosmosdb.request.regions_contacted`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) +**[9] `azure.cosmosdb.request.regions_contacted`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) **[10] `server.address`:** When observed from the client side, and when communicating through an intermediary, `server.address` SHOULD represent the server address behind any intermediaries, for example proxies, if it's available. --- -`az.cosmosdb.consistency.level` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. +`azure.cosmosdb.consistency.level` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used. | Value | Description | Stability | |---|---|---| @@ -419,7 +419,7 @@ This metric is [required][MetricRequired]. It captures the number of active instances at any given time. Best practices dictate that there should ideally be only one instance of the SDK client per Azure Cosmos DB account. Having multiple instances of the SDK client for the same account in a single process can lead to CPU or memory-related issues. - + @@ -428,7 +428,7 @@ It captures the number of active instances at any given time. Best practices dic | Name | Instrument Type | Unit (UCUM) | Description | Stability | | -------- | --------------- | ----------- | -------------- | --------- | -| `az.cosmosdb.client.active_instance.count` | UpDownCounter | `{instance}` | Number of active client instances | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb.client.active_instance.count` | UpDownCounter | `{instance}` | Number of active client instances | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| diff --git a/docs/database/database-metrics.md b/docs/database/database-metrics.md index a63c357c40..a7262b63ba 100644 --- a/docs/database/database-metrics.md +++ b/docs/database/database-metrics.md @@ -161,7 +161,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `az.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra` | [Apache Cassandra](https://cassandra.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `clickhouse` | [ClickHouse](https://clickhouse.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cockroachdb` | [CockroachDB](https://www.cockroachlabs.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -325,7 +325,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `az.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra` | [Apache Cassandra](https://cassandra.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `clickhouse` | [ClickHouse](https://clickhouse.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cockroachdb` | [CockroachDB](https://www.cockroachlabs.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/database/database-spans.md b/docs/database/database-spans.md index b759c203b4..13ce9f2e66 100644 --- a/docs/database/database-spans.md +++ b/docs/database/database-spans.md @@ -208,7 +208,7 @@ and SHOULD be provided **at span creation time** (if provided at all): | `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `az.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra` | [Apache Cassandra](https://cassandra.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `clickhouse` | [ClickHouse](https://clickhouse.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cockroachdb` | [CockroachDB](https://www.cockroachlabs.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/model/azure/cosmosdb-metrics.yaml b/model/azure/cosmosdb-metrics.yaml index 740407004b..87b728876b 100644 --- a/model/azure/cosmosdb-metrics.yaml +++ b/model/azure/cosmosdb-metrics.yaml @@ -1,20 +1,20 @@ groups: - - id: metric.az.cosmosdb.client.operation.request_charge + - id: metric.azure.cosmosdb.client.operation.request_charge type: metric - metric_name: az.cosmosdb.client.operation.request_charge + metric_name: azure.cosmosdb.client.operation.request_charge brief: "[Request charge](https://learn.microsoft.com/azure/cosmos-db/request-units) consumed by the operation" instrument: histogram unit: "{request_unit}" stability: development - extends: attributes.az.cosmosdb.minimal + extends: attributes.azure.cosmosdb.minimal attributes: - - ref: az.cosmosdb.request.regions_contacted + - ref: azure.cosmosdb.request.regions_contacted requirement_level: recommended: If available - - id: metric.az.cosmosdb.client.active_instance.count + - id: metric.azure.cosmosdb.client.active_instance.count type: metric - metric_name: az.cosmosdb.client.active_instance.count + metric_name: azure.cosmosdb.client.active_instance.count brief: "Number of active client instances" instrument: updowncounter unit: "{instance}" diff --git a/model/azure/registry.yaml b/model/azure/registry.yaml index 7307024d70..50198287b8 100644 --- a/model/azure/registry.yaml +++ b/model/azure/registry.yaml @@ -18,7 +18,7 @@ groups: [Azure Resource Provider Namespace](https://learn.microsoft.com/azure/azure-resource-manager/management/azure-services-resource-providers) as recognized by the client. examples: ["Microsoft.Storage", "Microsoft.KeyVault", "Microsoft.ServiceBus"] - - id: az.client.id + - id: azure.client.id type: string stability: development brief: The unique identifier of the client instance. @@ -30,7 +30,7 @@ groups: brief: > This group defines attributes for Azure Cosmos DB. attributes: - - id: az.cosmosdb.connection.mode + - id: azure.cosmosdb.connection.mode type: members: - id: gateway @@ -43,16 +43,16 @@ groups: stability: development stability: development brief: Cosmos client connection mode. - - id: az.cosmosdb.request.charge + - id: azure.cosmosdb.request.charge type: double stability: development brief: Request units consumed for the operation. examples: [46.18, 1.0] - - id: az.cosmosdb.request.body.size + - id: azure.cosmosdb.request.body.size type: int stability: development brief: Request payload size in bytes. - - id: az.cosmosdb.request.regions_contacted + - id: azure.cosmosdb.request.regions_contacted type: string[] stability: development brief: > @@ -63,12 +63,12 @@ groups: in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) examples: - ["North Central US", "Australia East", "Australia Southeast"] - - id: az.cosmosdb.response.sub_status_code + - id: azure.cosmosdb.response.sub_status_code type: int stability: development brief: Cosmos DB sub status code. examples: [1000, 1002] - - id: az.cosmosdb.consistency.level + - id: azure.cosmosdb.consistency.level type: members: - id: strong diff --git a/model/database/common.yaml b/model/database/common.yaml index f3714bb06e..4aebe26a68 100644 --- a/model/database/common.yaml +++ b/model/database/common.yaml @@ -26,7 +26,7 @@ groups: Instrumentations SHOULD document how `error.type` is populated. - - id: attributes.az.cosmosdb.minimal + - id: attributes.azure.cosmosdb.minimal type: attribute_group brief: 'Azure Cosmos DB Client attributes' stability: development @@ -50,10 +50,10 @@ groups: requirement_level: conditionally_required: If available. note: "" # overriding the base note - - ref: az.cosmosdb.response.sub_status_code + - ref: azure.cosmosdb.response.sub_status_code requirement_level: conditionally_required: when response was received and contained sub-code. - - ref: az.cosmosdb.consistency.level + - ref: azure.cosmosdb.consistency.level requirement_level: conditionally_required: If available. diff --git a/model/database/deprecated/registry-deprecated.yaml b/model/database/deprecated/registry-deprecated.yaml index ad3dafcd3c..24013d8f2a 100644 --- a/model/database/deprecated/registry-deprecated.yaml +++ b/model/database/deprecated/registry-deprecated.yaml @@ -228,8 +228,8 @@ groups: - id: db.cosmosdb.client_id type: string stability: experimental - brief: "Deprecated, use `az.client.id` instead." - deprecated: "Replaced by `az.client.id`." + brief: "Deprecated, use `azure.client.id` instead." + deprecated: "Replaced by `azure.client.id`." examples: "3ba4827d-4422-483f-b59f-85b74211c11d" - id: db.cosmosdb.connection_mode type: @@ -243,24 +243,24 @@ groups: brief: Direct connection. stability: experimental stability: experimental - brief: "Deprecated, use `az.cosmosdb.connection.mode` instead." - deprecated: "Replaced by `az.cosmosdb.connection.mode`." + brief: "Deprecated, use `azure.cosmosdb.connection.mode` instead." + deprecated: "Replaced by `azure.cosmosdb.connection.mode`." - id: db.cosmosdb.request_charge type: double stability: experimental - brief: "Deprecated, use `az.cosmosdb.request.charge` instead." - deprecated: "Replaced by `az.cosmosdb.request.charge`." + brief: "Deprecated, use `azure.cosmosdb.request.charge` instead." + deprecated: "Replaced by `azure.cosmosdb.request.charge`." examples: [46.18, 1.0] - id: db.cosmosdb.request_content_length type: int stability: experimental - brief: "Deprecated, use `az.cosmosdb.request.body.size` instead." - deprecated: "Replaced by `az.cosmosdb.request.body.size`." + brief: "Deprecated, use `azure.cosmosdb.request.body.size` instead." + deprecated: "Replaced by `azure.cosmosdb.request.body.size`." - id: db.cosmosdb.sub_status_code type: int stability: experimental - brief: "Deprecated, use `cosmosdb.response.sub_status_code` instead." - deprecated: "Replaced by `az.cosmosdb.response.sub_status_code`." + brief: "Deprecated, use `azure.cosmosdb.response.sub_status_code` instead." + deprecated: "Replaced by `azure.cosmosdb.response.sub_status_code`." examples: [1000, 1002] - id: db.cosmosdb.consistency_level type: @@ -282,13 +282,13 @@ groups: stability: experimental stability: experimental brief: "Deprecated, use `cosmosdb.consistency.level` instead." - deprecated: "Replaced by `az.cosmosdb.consistency.level`." + deprecated: "Replaced by `azure.cosmosdb.consistency.level`." examples: ["Eventual", "ConsistentPrefix", "BoundedStaleness", "Strong", "Session"] - id: db.cosmosdb.regions_contacted type: string[] stability: experimental - brief: "Deprecated, use `az.cosmosdb.request.regions_contacted` instead." - deprecated: "Replaced by `az.cosmosdb.request.regions_contacted`." + brief: "Deprecated, use `azure.cosmosdb.request.regions_contacted` instead." + deprecated: "Replaced by `azure.cosmosdb.request.regions_contacted`." examples: - ["North Central US", "Australia East", "Australia Southeast"] - id: db.elasticsearch.node.name diff --git a/model/database/registry.yaml b/model/database/registry.yaml index f24e79087c..5907dd1a44 100644 --- a/model/database/registry.yaml +++ b/model/database/registry.yaml @@ -158,8 +158,8 @@ groups: value: "aws.redshift" brief: "Amazon Redshift" stability: development # trademark on 'amazon redshift' - - id: az.cosmosdb - value: "az.cosmosdb" # trademark on 'azure cosmos db' + - id: azure.cosmosdb + value: "azure.cosmosdb" # trademark on 'azure cosmos db' brief: "[Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db)" stability: development - id: intersystems.cache diff --git a/model/database/spans.yaml b/model/database/spans.yaml index 2a28538356..d0dda1b08c 100644 --- a/model/database/spans.yaml +++ b/model/database/spans.yaml @@ -597,7 +597,7 @@ groups: examples: ["ORA-17027", "1052", "2201B"] requirement_level: conditionally_required: If response has ended with warning or an error. - - id: span.az.cosmosdb.client + - id: span.azure.cosmosdb.client type: span stability: development span_kind: client @@ -605,7 +605,7 @@ groups: brief: > Attributes for Cosmos DB. attributes: - - ref: az.client.id + - ref: azure.client.id - ref: user_agent.original brief: 'Full user-agent string is generated by Cosmos DB SDK' note: > @@ -620,7 +620,7 @@ groups: Format Reg-{D (Disabled discovery)}-S(application region)|L(List of preferred regions)|N(None, user did not configure it). Default value is "NS". examples: ['cosmos-netstandard-sdk/3.23.0\|3.23.1\|1\|X64\|Linux 5.4.0-1098-azure 104 18\|.NET Core 3.1.32\|S\|'] - - ref: az.cosmosdb.connection.mode + - ref: azure.cosmosdb.connection.mode requirement_level: conditionally_required: if not `gateway` (the default value is assumed to be `gateway`). - ref: db.collection.name @@ -630,7 +630,7 @@ groups: It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. requirement_level: conditionally_required: if available - - ref: az.cosmosdb.request.body.size + - ref: azure.cosmosdb.request.body.size - ref: db.response.status_code brief: > Cosmos DB status code. @@ -645,10 +645,10 @@ groups: examples: [10, 20] requirement_level: conditionally_required: if response was received and returned any rows - - ref: az.cosmosdb.response.sub_status_code + - ref: azure.cosmosdb.response.sub_status_code requirement_level: conditionally_required: when response was received and contained sub-code. - - ref: az.cosmosdb.request.charge + - ref: azure.cosmosdb.request.charge requirement_level: conditionally_required: when available - ref: db.namespace @@ -791,9 +791,9 @@ groups: - ref: server.port requirement_level: conditionally_required: If not default (443). - - ref: az.cosmosdb.consistency.level + - ref: azure.cosmosdb.consistency.level requirement_level: conditionally_required: If available. - - ref: az.cosmosdb.request.regions_contacted + - ref: azure.cosmosdb.request.regions_contacted requirement_level: conditionally_required: If available. diff --git a/schema-next.yaml b/schema-next.yaml index 7b3af52416..ea58ec9c0b 100644 --- a/schema-next.yaml +++ b/schema-next.yaml @@ -26,13 +26,13 @@ versions: db.cassandra.idempotence: cassandra.idempotence db.cassandra.page_size: cassandra.page.size db.cassandra.speculative_execution_count: cassandra.speculative_execution_count - db.cosmosdb.client_id: az.client.id - db.cosmosdb.connection_mode: az.cosmosdb.connection.mode - db.cosmosdb.consistency_level: az.cosmosdb.consistency.level - db.cosmosdb.request_charge: az.cosmosdb.request.charge - db.cosmosdb.request_content_length: az.cosmosdb.request.body.size - db.cosmosdb.regions_contacted: az.cosmosdb.request.regions_contacted - db.cosmosdb.sub_status_code: az.cosmosdb.response.sub_status_code + db.cosmosdb.client_id: azure.client.id + db.cosmosdb.connection_mode: azure.cosmosdb.connection.mode + db.cosmosdb.consistency_level: azure.cosmosdb.consistency.level + db.cosmosdb.request_charge: azure.cosmosdb.request.charge + db.cosmosdb.request_content_length: azure.cosmosdb.request.body.size + db.cosmosdb.regions_contacted: azure.cosmosdb.request.regions_contacted + db.cosmosdb.sub_status_code: azure.cosmosdb.response.sub_status_code db.elasticsearch.node.name: elasticsearch.node.name # db.elasticsearch.path_parts is a template attribute, schema transformation # does not support it, adding as a comment for consistency From 18d42d39f91a23beb7b0849079dd57717d43a00f Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 16 Jan 2025 16:01:13 -0800 Subject: [PATCH 15/24] add links, remove trandemark comments, speculative_execution_count -> speculative_execution.count --- docs/attributes-registry/cassandra.md | 2 +- docs/attributes-registry/db.md | 12 +-- docs/database/cassandra.md | 2 +- docs/database/database-metrics.md | 20 ++--- docs/database/database-spans.md | 10 +-- model/cassandra/registry.yaml | 2 +- .../deprecated/registry-deprecated.yaml | 4 +- model/database/registry.yaml | 86 +++++++++---------- model/database/spans.yaml | 2 +- schema-next.yaml | 2 +- 10 files changed, 71 insertions(+), 71 deletions(-) diff --git a/docs/attributes-registry/cassandra.md b/docs/attributes-registry/cassandra.md index 8192749ff1..58f2b411f4 100644 --- a/docs/attributes-registry/cassandra.md +++ b/docs/attributes-registry/cassandra.md @@ -17,7 +17,7 @@ This group defines attributes for Cassandra. | `cassandra.coordinator.id` | string | The ID of the coordinating node for a query. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra.idempotence` | boolean | Whether or not the query is idempotent. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra.page.size` | int | The fetch size used for paging, i.e. how many rows will be returned at once. | `5000` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `cassandra.speculative_execution_count` | int | The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. | `0`; `2` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cassandra.speculative_execution.count` | int | The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. | `0`; `2` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | --- diff --git a/docs/attributes-registry/db.md b/docs/attributes-registry/db.md index 6baacbf88e..79dd81554b 100644 --- a/docs/attributes-registry/db.md +++ b/docs/attributes-registry/db.md @@ -86,8 +86,8 @@ Semantic conventions for individual database systems SHOULD document what `db.re |---|---|---| | `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `azure.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `aws.redshift` | [Amazon Redshift](https://aws.amazon.com/redshift/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb` | [Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra` | [Apache Cassandra](https://cassandra.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `clickhouse` | [ClickHouse](https://clickhouse.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cockroachdb` | [CockroachDB](https://www.cockroachlabs.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -98,7 +98,7 @@ Semantic conventions for individual database systems SHOULD document what `db.re | `firebirdsql` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `h2database ` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `h2database` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hive` | [Apache Hive](https://hive.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -116,12 +116,12 @@ Semantic conventions for individual database systems SHOULD document what `db.re | `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `oracle.db` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `other_sql` | Some other SQL database. Fallback only. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `postgresql` | [PostgreSQL](https://www.postgresql.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `software_ag.adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `software_ag.adabas` | [Adabas (Adaptable Database System)](https://documentation.softwareag.com/?pf=adabas) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -137,7 +137,7 @@ Describes deprecated database attributes. | `db.cassandra.coordinator.id` | string | Deprecated, use `cassandra.coordinator.id` instead. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.coordinator.id`. | | `db.cassandra.idempotence` | boolean | Deprecated, use `cassandra.idempotence` instead. | | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.idempotence`. | | `db.cassandra.page_size` | int | Deprecated, use `cassandra.page.size` instead. | `5000` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.page.size`. | -| `db.cassandra.speculative_execution_count` | int | Deprecated, use `cassandra.speculative_execution_count` instead. | `0`; `2` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.speculative_execution_count`. | +| `db.cassandra.speculative_execution_count` | int | Deprecated, use `cassandra.speculative_execution.count` instead. | `0`; `2` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.speculative_execution.count`. | | `db.cassandra.table` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | | `db.connection_string` | string | Deprecated, use `server.address`, `server.port` attributes instead. | `Server=(localdb)\v11.0;Integrated Security=true;` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `server.address` and `server.port`. | | `db.cosmosdb.client_id` | string | Deprecated, use `azure.client.id` instead. | `3ba4827d-4422-483f-b59f-85b74211c11d` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.client.id`. | diff --git a/docs/database/cassandra.md b/docs/database/cassandra.md index 751c344d46..280ca594bb 100644 --- a/docs/database/cassandra.md +++ b/docs/database/cassandra.md @@ -32,7 +32,7 @@ The Semantic Conventions for [Cassandra](https://cassandra.apache.org/) extend a | [`cassandra.coordinator.id`](/docs/attributes-registry/cassandra.md) | string | The ID of the coordinating node for a query. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`cassandra.idempotence`](/docs/attributes-registry/cassandra.md) | boolean | Whether or not the query is idempotent. | | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`cassandra.page.size`](/docs/attributes-registry/cassandra.md) | int | The fetch size used for paging, i.e. how many rows will be returned at once. | `5000` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`cassandra.speculative_execution_count`](/docs/attributes-registry/cassandra.md) | int | The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. | `0`; `2` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`cassandra.speculative_execution.count`](/docs/attributes-registry/cassandra.md) | int | The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. | `0`; `2` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`db.operation.batch.size`](/docs/attributes-registry/db.md) | int | The number of queries included in a batch operation. [11] | `2`; `3`; `4` | `Recommended` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.query.summary`](/docs/attributes-registry/db.md) | string | Low cardinality representation of a database query text. [12] | `SELECT wuser_table`; `INSERT shipping_details SELECT orders`; `get user by id` | `Recommended` [13] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.query.text`](/docs/attributes-registry/db.md) | string | The database query being executed. [14] | `SELECT * FROM wuser_table where username = ?`; `SET mykey ?` | `Recommended` [15] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | diff --git a/docs/database/database-metrics.md b/docs/database/database-metrics.md index a7262b63ba..ea6ae26a31 100644 --- a/docs/database/database-metrics.md +++ b/docs/database/database-metrics.md @@ -160,8 +160,8 @@ Even though parameterized query text can potentially have sensitive data, by usi |---|---|---| | `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `azure.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `aws.redshift` | [Amazon Redshift](https://aws.amazon.com/redshift/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb` | [Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra` | [Apache Cassandra](https://cassandra.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `clickhouse` | [ClickHouse](https://clickhouse.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cockroachdb` | [CockroachDB](https://www.cockroachlabs.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -172,7 +172,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `firebirdsql` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `h2database ` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `h2database` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hive` | [Apache Hive](https://hive.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -190,12 +190,12 @@ Even though parameterized query text can potentially have sensitive data, by usi | `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `oracle.db` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `other_sql` | Some other SQL database. Fallback only. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `postgresql` | [PostgreSQL](https://www.postgresql.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `software_ag.adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `software_ag.adabas` | [Adabas (Adaptable Database System)](https://documentation.softwareag.com/?pf=adabas) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -324,8 +324,8 @@ Even though parameterized query text can potentially have sensitive data, by usi |---|---|---| | `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `azure.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `aws.redshift` | [Amazon Redshift](https://aws.amazon.com/redshift/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb` | [Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra` | [Apache Cassandra](https://cassandra.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `clickhouse` | [ClickHouse](https://clickhouse.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cockroachdb` | [CockroachDB](https://www.cockroachlabs.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -336,7 +336,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `firebirdsql` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `h2database ` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `h2database` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hive` | [Apache Hive](https://hive.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -354,12 +354,12 @@ Even though parameterized query text can potentially have sensitive data, by usi | `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `oracle.db` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `other_sql` | Some other SQL database. Fallback only. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `postgresql` | [PostgreSQL](https://www.postgresql.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `software_ag.adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `software_ag.adabas` | [Adabas (Adaptable Database System)](https://documentation.softwareag.com/?pf=adabas) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/database/database-spans.md b/docs/database/database-spans.md index 13ce9f2e66..8e92a4dab5 100644 --- a/docs/database/database-spans.md +++ b/docs/database/database-spans.md @@ -207,8 +207,8 @@ and SHOULD be provided **at span creation time** (if provided at all): |---|---|---| | `actian.ingres` | [Actian Ingres](https://www.actian.com/databases/ingres/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `aws.dynamodb` | [Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `aws.redshift` | Amazon Redshift | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `azure.cosmosdb` | [Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `aws.redshift` | [Amazon Redshift](https://aws.amazon.com/redshift/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb` | [Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra` | [Apache Cassandra](https://cassandra.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `clickhouse` | [ClickHouse](https://clickhouse.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cockroachdb` | [CockroachDB](https://www.cockroachlabs.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -219,7 +219,7 @@ and SHOULD be provided **at span creation time** (if provided at all): | `firebirdsql` | [Firebird](https://www.firebirdsql.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gcp.spanner` | [Google Cloud Spanner](https://cloud.google.com/spanner) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `geode` | [Apache Geode](https://geode.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `h2database ` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `h2database` | [H2 Database](https://h2database.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hbase` | [Apache HBase](https://hbase.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hive` | [Apache Hive](https://hive.apache.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `hsqldb` | [HyperSQL Database](https://hsqldb.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -237,12 +237,12 @@ and SHOULD be provided **at span creation time** (if provided at all): | `neo4j` | [Neo4j](https://neo4j.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `opensearch` | [OpenSearch](https://opensearch.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `oracle.db` | [Oracle Database](https://www.oracle.com/database/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `other_sql` | Some other SQL database. Fallback only. See notes. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `other_sql` | Some other SQL database. Fallback only. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `postgresql` | [PostgreSQL](https://www.postgresql.org/) | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `software_ag.adabas` | Adabas (Adaptable Database System) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `software_ag.adabas` | [Adabas (Adaptable Database System)](https://documentation.softwareag.com/?pf=adabas) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/model/cassandra/registry.yaml b/model/cassandra/registry.yaml index 5c6acb71eb..88116ba7f5 100644 --- a/model/cassandra/registry.yaml +++ b/model/cassandra/registry.yaml @@ -67,7 +67,7 @@ groups: brief: > The fetch size used for paging, i.e. how many rows will be returned at once. examples: [5000] - - id: cassandra.speculative_execution_count + - id: cassandra.speculative_execution.count type: int stability: development brief: > diff --git a/model/database/deprecated/registry-deprecated.yaml b/model/database/deprecated/registry-deprecated.yaml index 24013d8f2a..8f6a94bba1 100644 --- a/model/database/deprecated/registry-deprecated.yaml +++ b/model/database/deprecated/registry-deprecated.yaml @@ -222,8 +222,8 @@ groups: - id: db.cassandra.speculative_execution_count type: int stability: experimental - brief: "Deprecated, use `cassandra.speculative_execution_count` instead." - deprecated: "Replaced by `cassandra.speculative_execution_count`." + brief: "Deprecated, use `cassandra.speculative_execution.count` instead." + deprecated: "Replaced by `cassandra.speculative_execution.count`." examples: [0, 2] - id: db.cosmosdb.client_id type: string diff --git a/model/database/registry.yaml b/model/database/registry.yaml index 5907dd1a44..218c72ef0b 100644 --- a/model/database/registry.yaml +++ b/model/database/registry.yaml @@ -140,94 +140,94 @@ groups: members: - id: other_sql value: "other_sql" - brief: "Some other SQL database. Fallback only. See notes." + brief: "Some other SQL database. Fallback only." stability: development - id: software_ag.adabas - value: "software_ag.adabas" # trademark on 'adabas' - brief: "Adabas (Adaptable Database System)" + value: "software_ag.adabas" + brief: "[Adabas (Adaptable Database System)](https://documentation.softwareag.com/?pf=adabas)" stability: development - id: actian.ingres - value: "actian.ingres" # trademark on 'ingres' + value: "actian.ingres" brief: "[Actian Ingres](https://www.actian.com/databases/ingres/)" stability: development - id: aws.dynamodb - value: "aws.dynamodb" # trademark on 'dynamodb' + value: "aws.dynamodb" brief: "[Amazon DynamoDB](https://aws.amazon.com/pm/dynamodb/)" stability: development - id: aws.redshift value: "aws.redshift" - brief: "Amazon Redshift" - stability: development # trademark on 'amazon redshift' + brief: "[Amazon Redshift](https://aws.amazon.com/redshift/)" + stability: development - id: azure.cosmosdb - value: "azure.cosmosdb" # trademark on 'azure cosmos db' - brief: "[Microsoft Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db)" + value: "azure.cosmosdb" + brief: "[Azure Cosmos DB](https://learn.microsoft.com/azure/cosmos-db)" stability: development - id: intersystems.cache - value: "intersystems.cache" # trademark on 'INTERSYSTEMS CACHÉ' + value: "intersystems.cache" brief: "[InterSystems Caché](https://www.intersystems.com/products/cache/)" stability: development - id: cassandra - value: "cassandra" # trademark on 'cassandra' + value: "cassandra" brief: "[Apache Cassandra](https://cassandra.apache.org/)" stability: development - id: clickhouse - value: "clickhouse" # no wordmark + value: "clickhouse" brief: "[ClickHouse](https://clickhouse.com/)" stability: development - id: cockroachdb - value: "cockroachdb" # trademark on 'cockroachdb' + value: "cockroachdb" brief: "[CockroachDB](https://www.cockroachlabs.com/)" stability: development - id: couchbase - value: "couchbase" # trademark on 'couchbase' + value: "couchbase" brief: "[Couchbase](https://www.couchbase.com/)" stability: development - id: couchdb - value: "couchdb" # trademark on 'couchdb' + value: "couchdb" brief: "[Apache CouchDB](https://couchdb.apache.org/)" stability: development - id: derby - value: "derby" # trademark on 'derby' + value: "derby" brief: "[Apache Derby](https://db.apache.org/derby/)" stability: development - id: elasticsearch - value: "elasticsearch" # trademark on 'elasticsearch' + value: "elasticsearch" brief: "[Elasticsearch](https://www.elastic.co/elasticsearch)" stability: development - id: firebirdsql - value: "firebirdsql" # no trademark + value: "firebirdsql" brief: "[Firebird](https://www.firebirdsql.org/)" stability: development - id: gcp.spanner - value: "gcp.spanner" # trademark on 'cloud spanner' + value: "gcp.spanner" brief: "[Google Cloud Spanner](https://cloud.google.com/spanner)" stability: development - id: geode - value: "geode" # trademark on 'geode' + value: "geode" brief: "[Apache Geode](https://geode.apache.org/)" stability: development - id: h2database - value: "h2database " # no trademark + value: "h2database" brief: "[H2 Database](https://h2database.com/)" stability: development - id: hbase - value: "hbase" # trademark on 'hbase' + value: "hbase" brief: "[Apache HBase](https://hbase.apache.org/)" stability: development - id: hive - value: "hive" # trademark on 'hive' + value: "hive" brief: "[Apache Hive](https://hive.apache.org/)" stability: development - id: hsqldb - value: "hsqldb" # no trademark + value: "hsqldb" brief: "[HyperSQL Database](https://hsqldb.org/)" stability: development - id: ibm.db2 - value: "ibm.db2" # trademark on 'db2' + value: "ibm.db2" brief: "[IBM Db2](https://www.ibm.com/db2)" stability: development - id: ibm.informix - value: "ibm.informix" # trademark on 'informix' + value: "ibm.informix" brief: "[IBM Informix](https://www.ibm.com/products/informix)" stability: development - id: ibm.netezza @@ -235,39 +235,39 @@ groups: brief: "[IBM Netezza](https://www.ibm.com/products/netezza)" # trademark on 'netezza' stability: development - id: influxdb - value: "influxdb" # trademark on 'influxdb' + value: "influxdb" brief: "[InfluxDB](https://www.influxdata.com/)" stability: development - id: instantdb - value: "instantdb" # no trademark + value: "instantdb" brief: "[Instant](https://www.instantdb.com/)" stability: development - id: mariadb - value: "mariadb" # trademark on 'mariadb' + value: "mariadb" brief: "[MariaDB](https://mariadb.org/)" stability: release_candidate - id: memcached - value: "memcached" # no trademark + value: "memcached" brief: "[Memcached](https://memcached.org/)" stability: development - id: mongodb - value: "mongodb" # trademark on 'mongodb' + value: "mongodb" brief: "[MongoDB](https://www.mongodb.com/)" stability: development - id: microsoft.sql_server - value: "microsoft.sql_server" # trademark on 'SQL Server' + value: "microsoft.sql_server" brief: "[Microsoft SQL Server](https://www.microsoft.com/sql-server)" stability: release_candidate - id: mysql - value: "mysql" # trademark on 'mysql' + value: "mysql" brief: "[MySQL](https://www.mysql.com/)" stability: release_candidate - id: neo4j - value: "neo4j" # trademark on 'neo4j' + value: "neo4j" brief: "[Neo4j](https://neo4j.com/)" stability: development - id: opensearch - value: "opensearch" # trademark on 'opensearch' + value: "opensearch" brief: "[OpenSearch](https://opensearch.org/)" stability: development - id: oracle.db @@ -275,31 +275,31 @@ groups: brief: "[Oracle Database](https://www.oracle.com/database/)" stability: development - id: postgresql - value: "postgresql" # trademark on 'postgresql' + value: "postgresql" brief: "[PostgreSQL](https://www.postgresql.org/)" stability: release_candidate - id: redis - value: "redis" # trademark on 'redis' + value: "redis" brief: "[Redis](https://redis.io/)" stability: development - id: sap.hana - value: "sap.hana" # trademark on 'sap hana' + value: "sap.hana" brief: "[SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html)" stability: development - id: sap.maxdb - value: "sap.maxdb" # trademark on 'maxdb' + value: "sap.maxdb" brief: "[SAP MaxDB](https://maxdb.sap.com/)" - stability: development # no trademark + stability: development - id: sqlite - value: "sqlite" # trademark on 'sqlite' + value: "sqlite" brief: "[SQLite](https://www.sqlite.org/)" stability: development - id: teradata - value: "teradata" # trademark on 'teradata' + value: "teradata" brief: "[Teradata](https://www.teradata.com/)" stability: development - id: trino - value: "trino" # no trademark + value: "trino" brief: "[Trino](https://trino.io/)" stability: development stability: release_candidate diff --git a/model/database/spans.yaml b/model/database/spans.yaml index d0dda1b08c..73a8679fcb 100644 --- a/model/database/spans.yaml +++ b/model/database/spans.yaml @@ -277,7 +277,7 @@ groups: - ref: db.collection.name brief: The name of the Cassandra table that the operation is acting upon. - ref: cassandra.idempotence - - ref: cassandra.speculative_execution_count + - ref: cassandra.speculative_execution.count - ref: cassandra.coordinator.id - ref: cassandra.coordinator.dc - ref: network.peer.address diff --git a/schema-next.yaml b/schema-next.yaml index ea58ec9c0b..14914015df 100644 --- a/schema-next.yaml +++ b/schema-next.yaml @@ -25,7 +25,7 @@ versions: db.cassandra.consistency_level: cassandra.consistency.level db.cassandra.idempotence: cassandra.idempotence db.cassandra.page_size: cassandra.page.size - db.cassandra.speculative_execution_count: cassandra.speculative_execution_count + db.cassandra.speculative_execution_count: cassandra.speculative_execution.count db.cosmosdb.client_id: azure.client.id db.cosmosdb.connection_mode: azure.cosmosdb.connection.mode db.cosmosdb.consistency_level: azure.cosmosdb.consistency.level From 4509a9f11cdc2e9ff1e22e43702cea34fe760e68 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 16 Jan 2025 16:14:04 -0800 Subject: [PATCH 16/24] software_ag -> softwareag --- docs/attributes-registry/db.md | 4 ++-- docs/database/database-metrics.md | 8 ++++---- docs/database/database-spans.md | 4 ++-- model/database/registry.yaml | 6 +++--- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/attributes-registry/db.md b/docs/attributes-registry/db.md index 79dd81554b..8ce6573905 100644 --- a/docs/attributes-registry/db.md +++ b/docs/attributes-registry/db.md @@ -27,7 +27,7 @@ This group defines the attributes used to describe telemetry in the context of d | `db.query.text` | string | The database query being executed. [7] | `SELECT * FROM wuser_table where username = ?`; `SET mykey ?` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | `db.response.returned_rows` | int | Number of rows returned by the operation. | `10`; `30`; `1000` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `db.response.status_code` | string | Database response status code. [8] | `102`; `ORA-17002`; `08P01`; `404` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| `db.system.name` | string | The database management system (DBMS) product as identified by the client instrumentation. [9] | `other_sql`; `software_ag.adabas`; `actian.ingres` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| `db.system.name` | string | The database management system (DBMS) product as identified by the client instrumentation. [9] | `other_sql`; `softwareag.adabas`; `actian.ingres` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | **[1] `db.collection.name`:** It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. @@ -121,7 +121,7 @@ Semantic conventions for individual database systems SHOULD document what `db.re | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `software_ag.adabas` | [Adabas (Adaptable Database System)](https://documentation.softwareag.com/?pf=adabas) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `softwareag.adabas` | [Adabas (Adaptable Database System)](https://documentation.softwareag.com/?pf=adabas) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/database/database-metrics.md b/docs/database/database-metrics.md index ea6ae26a31..11ed5f0f87 100644 --- a/docs/database/database-metrics.md +++ b/docs/database/database-metrics.md @@ -83,7 +83,7 @@ of `[ 0.001, 0.005, 0.01, 0.05, 0.1, 0.5, 1, 5, 10 ]`. | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| -| [`db.system.name`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `software_ag.adabas`; `actian.ingres` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| [`db.system.name`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `softwareag.adabas`; `actian.ingres` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | The name of a collection (table, container) within the database. [2] | `public.users`; `customers` | `Conditionally Required` [3] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the database, fully qualified within the server address and port. [4] | `customers`; `test.users` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.operation.name`](/docs/attributes-registry/db.md) | string | The name of the operation or command being executed. [5] | `findAndModify`; `HMSET`; `SELECT` | `Conditionally Required` [6] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -195,7 +195,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `software_ag.adabas` | [Adabas (Adaptable Database System)](https://documentation.softwareag.com/?pf=adabas) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `softwareag.adabas` | [Adabas (Adaptable Database System)](https://documentation.softwareag.com/?pf=adabas) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -247,7 +247,7 @@ Explaining bucket configuration: | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| -| [`db.system.name`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `software_ag.adabas`; `actian.ingres` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| [`db.system.name`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `softwareag.adabas`; `actian.ingres` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | The name of a collection (table, container) within the database. [2] | `public.users`; `customers` | `Conditionally Required` [3] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the database, fully qualified within the server address and port. [4] | `customers`; `test.users` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.operation.name`](/docs/attributes-registry/db.md) | string | The name of the operation or command being executed. [5] | `findAndModify`; `HMSET`; `SELECT` | `Conditionally Required` [6] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -359,7 +359,7 @@ Even though parameterized query text can potentially have sensitive data, by usi | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `software_ag.adabas` | [Adabas (Adaptable Database System)](https://documentation.softwareag.com/?pf=adabas) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `softwareag.adabas` | [Adabas (Adaptable Database System)](https://documentation.softwareag.com/?pf=adabas) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/docs/database/database-spans.md b/docs/database/database-spans.md index 8e92a4dab5..05313490c6 100644 --- a/docs/database/database-spans.md +++ b/docs/database/database-spans.md @@ -107,7 +107,7 @@ These attributes will usually be the same for all operations performed over the | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| -| [`db.system.name`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `software_ag.adabas`; `actian.ingres` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | +| [`db.system.name`](/docs/attributes-registry/db.md) | string | The database management system (DBMS) product as identified by the client instrumentation. [1] | `other_sql`; `softwareag.adabas`; `actian.ingres` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | The name of a collection (table, container) within the database. [2] | `public.users`; `customers` | `Conditionally Required` [3] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the database, fully qualified within the server address and port. [4] | `customers`; `test.users` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.operation.name`](/docs/attributes-registry/db.md) | string | The name of the operation or command being executed. [5] | `findAndModify`; `HMSET`; `SELECT` | `Conditionally Required` [6] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -242,7 +242,7 @@ and SHOULD be provided **at span creation time** (if provided at all): | `redis` | [Redis](https://redis.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.hana` | [SAP HANA](https://www.sap.com/products/technology-platform/hana/what-is-sap-hana.html) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sap.maxdb` | [SAP MaxDB](https://maxdb.sap.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `software_ag.adabas` | [Adabas (Adaptable Database System)](https://documentation.softwareag.com/?pf=adabas) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `softwareag.adabas` | [Adabas (Adaptable Database System)](https://documentation.softwareag.com/?pf=adabas) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `sqlite` | [SQLite](https://www.sqlite.org/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `teradata` | [Teradata](https://www.teradata.com/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `trino` | [Trino](https://trino.io/) | ![Experimental](https://img.shields.io/badge/-experimental-blue) | diff --git a/model/database/registry.yaml b/model/database/registry.yaml index 218c72ef0b..0a8de8c4ee 100644 --- a/model/database/registry.yaml +++ b/model/database/registry.yaml @@ -142,8 +142,8 @@ groups: value: "other_sql" brief: "Some other SQL database. Fallback only." stability: development - - id: software_ag.adabas - value: "software_ag.adabas" + - id: softwareag.adabas + value: "softwareag.adabas" brief: "[Adabas (Adaptable Database System)](https://documentation.softwareag.com/?pf=adabas)" stability: development - id: actian.ingres @@ -232,7 +232,7 @@ groups: stability: development - id: ibm.netezza value: "ibm.netezza" - brief: "[IBM Netezza](https://www.ibm.com/products/netezza)" # trademark on 'netezza' + brief: "[IBM Netezza](https://www.ibm.com/products/netezza)" stability: development - id: influxdb value: "influxdb" From 6d4abcc4881873a5485f758d14a073f1eb884437 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 16 Jan 2025 18:44:59 -0800 Subject: [PATCH 17/24] lint --- docs/database/cosmosdb.md | 10 +++++----- internal/tools/scripts/registry/areas-weaver.yaml | 2 +- model/database/deprecated/metrics-deprecated.yaml | 8 ++++---- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/database/cosmosdb.md b/docs/database/cosmosdb.md index 8cd49719ca..82e5730714 100644 --- a/docs/database/cosmosdb.md +++ b/docs/database/cosmosdb.md @@ -299,17 +299,17 @@ This metric is [required][MetricRequired]. It captures the total time taken by an Azure Cosmos DB operation. This metric follows the common [db.client.operation.duration](/docs/database/database-metrics.md#metric-dbclientoperationduration) definition. -Refer [az.cosmosdb.client.operation.request_charge](#metric-azcosmosdbclientoperationrequest_charge) metrics for dimensions. +Refer [azure.cosmosdb.client.operation.request_charge](#metric-azcosmosdbclientoperationrequest_charge) metrics for dimensions. -### Metric: `az.cosmosdb.client.response.returned_rows` +### Metric: `azure.cosmosdb.client.response.returned_rows` This metric is [required][MetricRequired]. It captures the number of items returned by a query or feed operation in Azure Cosmos DB. It helps identify response sizes that may contribute to high latency, increased memory/CPU usage, or network call failures. This metric follows the common [db.client.response.returned_rows](/docs/database/database-metrics.md#metric-dbclientresponsereturned_rows) definition. -Refer [az.cosmosdb.client.operation.request_charge](#metric-azcosmosdbclientoperationrequest_charge) metrics for dimensions. +Refer [azure.cosmosdb.client.operation.request_charge](#metric-azcosmosdbclientoperationrequest_charge) metrics for dimensions. -### Metric: `az.cosmosdb.client.operation.request_charge` +### Metric: `azure.cosmosdb.client.operation.request_charge` This metric is [required][MetricRequired]. @@ -413,7 +413,7 @@ Instrumentations SHOULD document how `error.type` is populated. -### Metric: `az.cosmosdb.client.active_instance.count` +### Metric: `azure.cosmosdb.client.active_instance.count` This metric is [required][MetricRequired]. diff --git a/internal/tools/scripts/registry/areas-weaver.yaml b/internal/tools/scripts/registry/areas-weaver.yaml index 074629a1cf..fcb39c3806 100644 --- a/internal/tools/scripts/registry/areas-weaver.yaml +++ b/internal/tools/scripts/registry/areas-weaver.yaml @@ -1,7 +1,7 @@ templates: - pattern: areas.md.j2 filter: > - semconv_grouped_attributes({"exclude_deprecated": true}) | .[].root_namespace + semconv_grouped_attributes({"exclude_deprecated": true}) | .[].root_namespace | unique application_mode: single whitespace_control: trim_blocks: true diff --git a/model/database/deprecated/metrics-deprecated.yaml b/model/database/deprecated/metrics-deprecated.yaml index 4d32e87984..41c567cfe3 100644 --- a/model/database/deprecated/metrics-deprecated.yaml +++ b/model/database/deprecated/metrics-deprecated.yaml @@ -112,8 +112,8 @@ groups: - id: metric.db.client.cosmosdb.operation.request_charge type: metric metric_name: db.client.cosmosdb.operation.request_charge - brief: "Deprecated, use `az.cosmosdb.client.request.charge` instead." - deprecated: "Replaced by `az.cosmosdb.client.request.charge`." + brief: "Deprecated, use `azure.cosmosdb.client.request.charge` instead." + deprecated: "Replaced by `azure.cosmosdb.client.request.charge`." instrument: histogram unit: "{request_unit}" stability: experimental @@ -145,8 +145,8 @@ groups: - id: metric.db.client.cosmosdb.active_instance.count type: metric metric_name: db.client.cosmosdb.active_instance.count - brief: "Deprecated, use `az.cosmosdb.client.active_instance.count` instead." - deprecated: "Replaced by `az.cosmosdb.client.active_instance.count`." + brief: "Deprecated, use `azure.cosmosdb.client.active_instance.count` instead." + deprecated: "Replaced by `azureus.cosmosdb.client.active_instance.count`." instrument: updowncounter unit: "{instance}" stability: experimental From d9df67696c9ff59768a2b279c64242855ca7b4e6 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 16 Jan 2025 18:49:07 -0800 Subject: [PATCH 18/24] lint --- docs/database/cosmosdb.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/database/cosmosdb.md b/docs/database/cosmosdb.md index 82e5730714..a62ca8f514 100644 --- a/docs/database/cosmosdb.md +++ b/docs/database/cosmosdb.md @@ -299,7 +299,7 @@ This metric is [required][MetricRequired]. It captures the total time taken by an Azure Cosmos DB operation. This metric follows the common [db.client.operation.duration](/docs/database/database-metrics.md#metric-dbclientoperationduration) definition. -Refer [azure.cosmosdb.client.operation.request_charge](#metric-azcosmosdbclientoperationrequest_charge) metrics for dimensions. +Refer [azure.cosmosdb.client.operation.request_charge](#metric-azurecosmosdbclientoperationrequest_charge) metrics for dimensions. ### Metric: `azure.cosmosdb.client.response.returned_rows` @@ -307,7 +307,7 @@ This metric is [required][MetricRequired]. It captures the number of items returned by a query or feed operation in Azure Cosmos DB. It helps identify response sizes that may contribute to high latency, increased memory/CPU usage, or network call failures. This metric follows the common [db.client.response.returned_rows](/docs/database/database-metrics.md#metric-dbclientresponsereturned_rows) definition. -Refer [azure.cosmosdb.client.operation.request_charge](#metric-azcosmosdbclientoperationrequest_charge) metrics for dimensions. +Refer [azure.cosmosdb.client.operation.request_charge](#metric-azurecosmosdbclientoperationrequest_charge) metrics for dimensions. ### Metric: `azure.cosmosdb.client.operation.request_charge` From e748394c31be5c78351f4946c04a8f091ca0e524 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 16 Jan 2025 19:22:49 -0800 Subject: [PATCH 19/24] feedback --- docs/attributes-registry/aws.md | 2 +- docs/attributes-registry/azure.md | 8 ++++---- docs/attributes-registry/cassandra.md | 4 ++-- docs/attributes-registry/db.md | 4 ++-- docs/attributes-registry/elasticsearch.md | 2 +- docs/database/cassandra.md | 2 +- docs/database/cosmosdb.md | 20 +++++++++---------- docs/database/mssql.md | 2 +- docs/database/sql.md | 2 +- model/aws/registry.yaml | 2 +- model/azure/cosmosdb-metrics.yaml | 6 +++--- model/azure/registry.yaml | 6 +++--- model/cassandra/registry.yaml | 4 ++-- .../deprecated/metrics-deprecated.yaml | 4 ++-- .../deprecated/registry-deprecated.yaml | 8 ++++---- model/database/spans.yaml | 4 ++-- model/elasticsearch/registry.yaml | 2 +- schema-next.yaml | 8 ++++++-- 18 files changed, 47 insertions(+), 43 deletions(-) diff --git a/docs/attributes-registry/aws.md b/docs/attributes-registry/aws.md index 5ccb0e33b6..bfb309ca35 100644 --- a/docs/attributes-registry/aws.md +++ b/docs/attributes-registry/aws.md @@ -16,7 +16,7 @@ ## General AWS Attributes -This document defines generic attributes for AWS services. +This section defines generic attributes for AWS services. | Attribute | Type | Description | Examples | Stability | |---|---|---|---|---| diff --git a/docs/attributes-registry/azure.md b/docs/attributes-registry/azure.md index da4930bfb6..16f0ee7b96 100644 --- a/docs/attributes-registry/azure.md +++ b/docs/attributes-registry/azure.md @@ -11,7 +11,7 @@ ## Azure Client Library Attributes -This document defines generic attributes used by Azure Client Libraries. +This section defines generic attributes used by Azure Client Libraries. | Attribute | Type | Description | Examples | Stability | |---|---|---|---|---| @@ -21,7 +21,7 @@ This document defines generic attributes used by Azure Client Libraries. ## Azure Cosmos DB Attributes -This group defines attributes for Azure Cosmos DB. +This section defines attributes for Azure Cosmos DB. | Attribute | Type | Description | Examples | Stability | |---|---|---|---|---| @@ -29,10 +29,10 @@ This group defines attributes for Azure Cosmos DB. | `azure.cosmosdb.consistency.level` | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `azure.cosmosdb.request.body.size` | int | Request payload size in bytes. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `azure.cosmosdb.request.charge` | double | Request units consumed for the operation. | `46.18`; `1.0` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `azure.cosmosdb.request.regions_contacted` | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [1] | `["North Central US", "Australia East", "Australia Southeast"]` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb.request.contacted_regions` | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [1] | `["North Central US", "Australia East", "Australia Southeast"]` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `azure.cosmosdb.response.sub_status_code` | int | Cosmos DB sub status code. | `1000`; `1002` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -**[1] `azure.cosmosdb.request.regions_contacted`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) +**[1] `azure.cosmosdb.request.contacted_regions`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) --- diff --git a/docs/attributes-registry/cassandra.md b/docs/attributes-registry/cassandra.md index 58f2b411f4..de0be1f279 100644 --- a/docs/attributes-registry/cassandra.md +++ b/docs/attributes-registry/cassandra.md @@ -8,15 +8,15 @@ ## Cassandra Attributes -This group defines attributes for Cassandra. +This section defines attributes for Cassandra. | Attribute | Type | Description | Examples | Stability | |---|---|---|---|---| | `cassandra.consistency.level` | string | The consistency level of the query. Based on consistency values from [CQL](https://docs.datastax.com/en/cassandra-oss/3.0/cassandra/dml/dmlConfigConsistency.html). | `all`; `each_quorum`; `quorum` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra.coordinator.dc` | string | The data center of the coordinating node for a query. | `us-west-2` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra.coordinator.id` | string | The ID of the coordinating node for a query. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `cassandra.idempotence` | boolean | Whether or not the query is idempotent. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra.page.size` | int | The fetch size used for paging, i.e. how many rows will be returned at once. | `5000` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cassandra.query.is_idempotent` | boolean | Whether or not the query is idempotent. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra.speculative_execution.count` | int | The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. | `0`; `2` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | --- diff --git a/docs/attributes-registry/db.md b/docs/attributes-registry/db.md index 8ce6573905..bcb23ff76a 100644 --- a/docs/attributes-registry/db.md +++ b/docs/attributes-registry/db.md @@ -135,7 +135,7 @@ Describes deprecated database attributes. | `db.cassandra.consistency_level` | string | Deprecated, use `cassandra.consistency.level` instead. | `all`; `each_quorum`; `quorum` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.consistency.level`. | | `db.cassandra.coordinator.dc` | string | Deprecated, use `cassandra.coordinator.dc` instead. | `us-west-2` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.coordinator.dc`. | | `db.cassandra.coordinator.id` | string | Deprecated, use `cassandra.coordinator.id` instead. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.coordinator.id`. | -| `db.cassandra.idempotence` | boolean | Deprecated, use `cassandra.idempotence` instead. | | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.idempotence`. | +| `db.cassandra.idempotence` | boolean | Deprecated, use `cassandra.query.is_idempotent` instead. | | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.query.is_idempotent`. | | `db.cassandra.page_size` | int | Deprecated, use `cassandra.page.size` instead. | `5000` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.page.size`. | | `db.cassandra.speculative_execution_count` | int | Deprecated, use `cassandra.speculative_execution.count` instead. | `0`; `2` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.speculative_execution.count`. | | `db.cassandra.table` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | @@ -145,7 +145,7 @@ Describes deprecated database attributes. | `db.cosmosdb.consistency_level` | string | Deprecated, use `cosmosdb.consistency.level` instead. | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.consistency.level`. | | `db.cosmosdb.container` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | | `db.cosmosdb.operation_type` | string | Deprecated, no replacement at this time. | `batch`; `create`; `delete` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
No replacement at this time. | -| `db.cosmosdb.regions_contacted` | string[] | Deprecated, use `azure.cosmosdb.request.regions_contacted` instead. | `["North Central US", "Australia East", "Australia Southeast"]` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.request.regions_contacted`. | +| `db.cosmosdb.regions_contacted` | string[] | Deprecated, use `azure.cosmosdb.request.contacted_regions` instead. | `["North Central US", "Australia East", "Australia Southeast"]` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.request.contacted_regions`. | | `db.cosmosdb.request_charge` | double | Deprecated, use `azure.cosmosdb.request.charge` instead. | `46.18`; `1.0` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.request.charge`. | | `db.cosmosdb.request_content_length` | int | Deprecated, use `azure.cosmosdb.request.body.size` instead. | | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.request.body.size`. | | `db.cosmosdb.status_code` | int | Deprecated, use `db.response.status_code` instead. | `200`; `201` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.response.status_code`. | diff --git a/docs/attributes-registry/elasticsearch.md b/docs/attributes-registry/elasticsearch.md index 3bcea57d16..998077b256 100644 --- a/docs/attributes-registry/elasticsearch.md +++ b/docs/attributes-registry/elasticsearch.md @@ -8,7 +8,7 @@ ## Elasticsearch Attributes -This group defines attributes for Elasticsearch. +This section defines attributes for Elasticsearch. | Attribute | Type | Description | Examples | Stability | |---|---|---|---|---| diff --git a/docs/database/cassandra.md b/docs/database/cassandra.md index 280ca594bb..e37382970e 100644 --- a/docs/database/cassandra.md +++ b/docs/database/cassandra.md @@ -30,8 +30,8 @@ The Semantic Conventions for [Cassandra](https://cassandra.apache.org/) extend a | [`cassandra.consistency.level`](/docs/attributes-registry/cassandra.md) | string | The consistency level of the query. Based on consistency values from [CQL](https://docs.datastax.com/en/cassandra-oss/3.0/cassandra/dml/dmlConfigConsistency.html). | `all`; `each_quorum`; `quorum` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`cassandra.coordinator.dc`](/docs/attributes-registry/cassandra.md) | string | The data center of the coordinating node for a query. | `us-west-2` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`cassandra.coordinator.id`](/docs/attributes-registry/cassandra.md) | string | The ID of the coordinating node for a query. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`cassandra.idempotence`](/docs/attributes-registry/cassandra.md) | boolean | Whether or not the query is idempotent. | | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`cassandra.page.size`](/docs/attributes-registry/cassandra.md) | int | The fetch size used for paging, i.e. how many rows will be returned at once. | `5000` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`cassandra.query.is_idempotent`](/docs/attributes-registry/cassandra.md) | boolean | Whether or not the query is idempotent. | | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`cassandra.speculative_execution.count`](/docs/attributes-registry/cassandra.md) | int | The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. | `0`; `2` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`db.operation.batch.size`](/docs/attributes-registry/db.md) | int | The number of queries included in a batch operation. [11] | `2`; `3`; `4` | `Recommended` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.query.summary`](/docs/attributes-registry/db.md) | string | Low cardinality representation of a database query text. [12] | `SELECT wuser_table`; `INSERT shipping_details SELECT orders`; `get user by id` | `Recommended` [13] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | diff --git a/docs/database/cosmosdb.md b/docs/database/cosmosdb.md index a62ca8f514..9433852030 100644 --- a/docs/database/cosmosdb.md +++ b/docs/database/cosmosdb.md @@ -26,7 +26,7 @@ extend and override the [Database Semantic Conventions](database-spans.md). ## Attributes -`db.system.name` MUST be set to `"az.cosmosdb"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"azure.cosmosdb"` and SHOULD be provided **at span creation time**. Cosmos DB instrumentation includes call-level (public API) surface spans and network spans. Depending on the connection mode (Gateway or Direct), network-level spans may also be created. @@ -42,7 +42,7 @@ Cosmos DB instrumentation includes call-level (public API) surface spans and net | [`azure.cosmosdb.connection.mode`](/docs/attributes-registry/azure.md) | string | Cosmos client connection mode. | `gateway`; `direct` | `Conditionally Required` [1] | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`azure.cosmosdb.consistency.level`](/docs/attributes-registry/azure.md) | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`azure.cosmosdb.request.charge`](/docs/attributes-registry/azure.md) | double | Request units consumed for the operation. | `46.18`; `1.0` | `Conditionally Required` when available | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`azure.cosmosdb.request.regions_contacted`](/docs/attributes-registry/azure.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [2] | `["North Central US", "Australia East", "Australia Southeast"]` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`azure.cosmosdb.request.contacted_regions`](/docs/attributes-registry/azure.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [2] | `["North Central US", "Australia East", "Australia Southeast"]` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`azure.cosmosdb.response.sub_status_code`](/docs/attributes-registry/azure.md) | int | Cosmos DB sub status code. | `1000`; `1002` | `Conditionally Required` when response was received and contained sub-code. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | Cosmos DB container name. [3] | `public.users`; `customers` | `Conditionally Required` if available | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the database, fully qualified within the server address and port. | `customers`; `test.users` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -63,7 +63,7 @@ Cosmos DB instrumentation includes call-level (public API) surface spans and net **[1] `azure.cosmosdb.connection.mode`:** if not `gateway` (the default value is assumed to be `gateway`). -**[2] `azure.cosmosdb.request.regions_contacted`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) +**[2] `azure.cosmosdb.request.contacted_regions`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) **[3] `db.collection.name`:** It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. @@ -282,7 +282,7 @@ and SHOULD be provided **at span creation time** (if provided at all): | `db.namespace` | `"ShopDb"` | | `db.operation.name` | `"read_item"` | | `server.address` | `"account.documents.azure.com"` | -| `db.cosmosdb.client_id` | `"3ba4827d-4422-483f-b59f-85b74211c11d"` | +| `azure.client.id` | `"3ba4827d-4422-483f-b59f-85b74211c11d"` | | `user_agent.original` | `"cosmos-netstandard-sdk/3.23.0\|3.23.1\|1\|X64\|Linux 5.4.0-1098-azure 104 18\|.NET Core 3.1.32\|S\|"` | | `db.cosmosdb.request_content_length` | `20` | | `db.response.status_code` | `201` | @@ -301,11 +301,11 @@ It captures the total time taken by an Azure Cosmos DB operation. This metric fo Refer [azure.cosmosdb.client.operation.request_charge](#metric-azurecosmosdbclientoperationrequest_charge) metrics for dimensions. -### Metric: `azure.cosmosdb.client.response.returned_rows` +### Metric: `db.client.response.returned_rows` This metric is [required][MetricRequired]. -It captures the number of items returned by a query or feed operation in Azure Cosmos DB. It helps identify response sizes that may contribute to high latency, increased memory/CPU usage, or network call failures. This metric follows the common [db.client.response.returned_rows](/docs/database/database-metrics.md#metric-dbclientresponsereturned_rows) definition. +It captures the number of items returned by a query or feed operation in Azure Cosmos DB. It helps identify response sizes that may contribute to high latency, increased memory/CPU usage, or network call failures. This metric follows the common [`db.client.response.returned_rows`](/docs/database/database-metrics.md#metric-dbclientresponsereturned_rows) definition. Refer [azure.cosmosdb.client.operation.request_charge](#metric-azurecosmosdbclientoperationrequest_charge) metrics for dimensions. @@ -326,7 +326,7 @@ Explaining bucket configuration: 3. 100, 250: Higher Usage Levels, These boundaries represent operations that may require significant resources, such as complex queries or larger transactions. Monitoring RUs in these ranges can help identify performance bottlenecks or costly queries that might lead to throttling. 4. 500, 1000: Very High Usage Levels, These buckets capture operations that consume a substantial number of Request Units, which may indicate potentially expensive queries or batch processes. Understanding the frequency and patterns of such high RU usage can be critical in optimizing performance and ensuring the application remains within provisioned throughput limits. - + @@ -335,7 +335,7 @@ Explaining bucket configuration: | Name | Instrument Type | Unit (UCUM) | Description | Stability | | -------- | --------------- | ----------- | -------------- | --------- | -| `azure.cosmosdb.client.operation.request_charge` | Histogram | `{request_unit}` | [Request charge](https://learn.microsoft.com/azure/cosmos-db/request-units) consumed by the operation | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb.client.operation.request.charge` | Histogram | `{request_unit}` | [Request charge](https://learn.microsoft.com/azure/cosmos-db/request-units) consumed by the operation | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| @@ -347,7 +347,7 @@ Explaining bucket configuration: | [`db.response.status_code`](/docs/attributes-registry/db.md) | string | Database response status code. [4] | `102`; `ORA-17002`; `08P01`; `404` | `Conditionally Required` [5] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`error.type`](/docs/attributes-registry/error.md) | string | Describes a class of error the operation ended with. [6] | `timeout`; `java.net.UnknownHostException`; `server_certificate_invalid`; `500` | `Conditionally Required` If and only if the operation failed. | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`server.port`](/docs/attributes-registry/server.md) | int | Server port number. [7] | `80`; `8080`; `443` | `Conditionally Required` [8] | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | -| [`azure.cosmosdb.request.regions_contacted`](/docs/attributes-registry/azure.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [9] | `["North Central US", "Australia East", "Australia Southeast"]` | `Recommended` If available | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`azure.cosmosdb.request.contacted_regions`](/docs/attributes-registry/azure.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [9] | `["North Central US", "Australia East", "Australia Southeast"]` | `Recommended` If available | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`server.address`](/docs/attributes-registry/server.md) | string | Name of the database host. [10] | `example.com`; `10.1.2.80`; `/tmp/my.sock` | `Recommended` | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | **[1] `db.collection.name`:** It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. @@ -384,7 +384,7 @@ Instrumentations SHOULD document how `error.type` is populated. **[8] `server.port`:** If using a port other than the default port for this DBMS and if `server.address` is set. -**[9] `azure.cosmosdb.request.regions_contacted`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) +**[9] `azure.cosmosdb.request.contacted_regions`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) **[10] `server.address`:** When observed from the client side, and when communicating through an intermediary, `server.address` SHOULD represent the server address behind any intermediaries, for example proxies, if it's available. diff --git a/docs/database/mssql.md b/docs/database/mssql.md index 9d075ca6ea..f8e814a14b 100644 --- a/docs/database/mssql.md +++ b/docs/database/mssql.md @@ -8,7 +8,7 @@ linkTitle: MSSQL The Semantic Conventions for the *Microsoft SQL Server* extend and override the [Database Semantic Conventions](database-spans.md). -`db.system.name` MUST be set to `"mssql"` and SHOULD be provided **at span creation time**. +`db.system.name` MUST be set to `"microsoft.sql_server"` and SHOULD be provided **at span creation time**. ## Attributes diff --git a/docs/database/sql.md b/docs/database/sql.md index b3d58aca85..83511d947f 100644 --- a/docs/database/sql.md +++ b/docs/database/sql.md @@ -8,7 +8,7 @@ linkTitle: SQL The SQL databases Semantic Conventions describes how common [Database Semantic Conventions](database-spans.md) apply to SQL databases. -The following database systems (defined in the [`db.system.name`](./database-spans.md#notes-and-well-known-identifiers-for-dbsystem) set) are known to use SQL as their primary query language: +The following database systems (defined in the [`db.system.name`](./database-spans.md#notes-and-well-known-identifiers-for-dbsystemname) set) are known to use SQL as their primary query language: - `cockroachdb` - `db2` diff --git a/model/aws/registry.yaml b/model/aws/registry.yaml index 092ef48d9b..49144c3d0f 100644 --- a/model/aws/registry.yaml +++ b/model/aws/registry.yaml @@ -3,7 +3,7 @@ groups: type: attribute_group display_name: General AWS Attributes brief: > - This document defines generic attributes for AWS services. + This section defines generic attributes for AWS services. attributes: - id: aws.request_id type: string diff --git a/model/azure/cosmosdb-metrics.yaml b/model/azure/cosmosdb-metrics.yaml index 87b728876b..4a0fdfa879 100644 --- a/model/azure/cosmosdb-metrics.yaml +++ b/model/azure/cosmosdb-metrics.yaml @@ -1,14 +1,14 @@ groups: - - id: metric.azure.cosmosdb.client.operation.request_charge + - id: metric.azure.cosmosdb.client.operation.request.charge type: metric - metric_name: azure.cosmosdb.client.operation.request_charge + metric_name: azure.cosmosdb.client.operation.request.charge brief: "[Request charge](https://learn.microsoft.com/azure/cosmos-db/request-units) consumed by the operation" instrument: histogram unit: "{request_unit}" stability: development extends: attributes.azure.cosmosdb.minimal attributes: - - ref: azure.cosmosdb.request.regions_contacted + - ref: azure.cosmosdb.request.contacted_regions requirement_level: recommended: If available diff --git a/model/azure/registry.yaml b/model/azure/registry.yaml index 50198287b8..9e0c6fdde4 100644 --- a/model/azure/registry.yaml +++ b/model/azure/registry.yaml @@ -3,7 +3,7 @@ groups: type: attribute_group display_name: Azure Client Library Attributes brief: > - This document defines generic attributes used by Azure Client Libraries. + This section defines generic attributes used by Azure Client Libraries. attributes: - id: az.service_request_id type: string @@ -28,7 +28,7 @@ groups: display_name: Azure Cosmos DB Attributes stability: development brief: > - This group defines attributes for Azure Cosmos DB. + This section defines attributes for Azure Cosmos DB. attributes: - id: azure.cosmosdb.connection.mode type: @@ -52,7 +52,7 @@ groups: type: int stability: development brief: Request payload size in bytes. - - id: azure.cosmosdb.request.regions_contacted + - id: azure.cosmosdb.request.contacted_regions type: string[] stability: development brief: > diff --git a/model/cassandra/registry.yaml b/model/cassandra/registry.yaml index 88116ba7f5..029226c2bb 100644 --- a/model/cassandra/registry.yaml +++ b/model/cassandra/registry.yaml @@ -3,7 +3,7 @@ groups: type: attribute_group display_name: Cassandra Attributes brief: > - This group defines attributes for Cassandra. + This section defines attributes for Cassandra. attributes: - id: cassandra.coordinator.dc type: string @@ -56,7 +56,7 @@ groups: value: "local_serial" stability: development stability: development - - id: cassandra.idempotence + - id: cassandra.query.is_idempotent type: boolean stability: development brief: > diff --git a/model/database/deprecated/metrics-deprecated.yaml b/model/database/deprecated/metrics-deprecated.yaml index 41c567cfe3..56e29973b0 100644 --- a/model/database/deprecated/metrics-deprecated.yaml +++ b/model/database/deprecated/metrics-deprecated.yaml @@ -112,7 +112,7 @@ groups: - id: metric.db.client.cosmosdb.operation.request_charge type: metric metric_name: db.client.cosmosdb.operation.request_charge - brief: "Deprecated, use `azure.cosmosdb.client.request.charge` instead." + brief: "Deprecated, use `azure.cosmosdb.client.operation.request_charge` instead." deprecated: "Replaced by `azure.cosmosdb.client.request.charge`." instrument: histogram unit: "{request_unit}" @@ -146,7 +146,7 @@ groups: type: metric metric_name: db.client.cosmosdb.active_instance.count brief: "Deprecated, use `azure.cosmosdb.client.active_instance.count` instead." - deprecated: "Replaced by `azureus.cosmosdb.client.active_instance.count`." + deprecated: "Replaced by `azure.cosmosdb.client.active_instance.count`." instrument: updowncounter unit: "{instance}" stability: experimental diff --git a/model/database/deprecated/registry-deprecated.yaml b/model/database/deprecated/registry-deprecated.yaml index 8f6a94bba1..ee87844794 100644 --- a/model/database/deprecated/registry-deprecated.yaml +++ b/model/database/deprecated/registry-deprecated.yaml @@ -211,8 +211,8 @@ groups: - id: db.cassandra.idempotence type: boolean stability: experimental - brief: "Deprecated, use `cassandra.idempotence` instead." - deprecated: "Replaced by `cassandra.idempotence`." + brief: "Deprecated, use `cassandra.query.is_idempotent` instead." + deprecated: "Replaced by `cassandra.query.is_idempotent`." - id: db.cassandra.page_size type: int stability: experimental @@ -287,8 +287,8 @@ groups: - id: db.cosmosdb.regions_contacted type: string[] stability: experimental - brief: "Deprecated, use `azure.cosmosdb.request.regions_contacted` instead." - deprecated: "Replaced by `azure.cosmosdb.request.regions_contacted`." + brief: "Deprecated, use `azure.cosmosdb.request.contacted_regions` instead." + deprecated: "Replaced by `azure.cosmosdb.request.contacted_regions`." examples: - ["North Central US", "Australia East", "Australia Southeast"] - id: db.elasticsearch.node.name diff --git a/model/database/spans.yaml b/model/database/spans.yaml index 73a8679fcb..5156544c02 100644 --- a/model/database/spans.yaml +++ b/model/database/spans.yaml @@ -276,7 +276,7 @@ groups: - ref: cassandra.consistency.level - ref: db.collection.name brief: The name of the Cassandra table that the operation is acting upon. - - ref: cassandra.idempotence + - ref: cassandra.query.is_idempotent - ref: cassandra.speculative_execution.count - ref: cassandra.coordinator.id - ref: cassandra.coordinator.dc @@ -794,6 +794,6 @@ groups: - ref: azure.cosmosdb.consistency.level requirement_level: conditionally_required: If available. - - ref: azure.cosmosdb.request.regions_contacted + - ref: azure.cosmosdb.request.contacted_regions requirement_level: conditionally_required: If available. diff --git a/model/elasticsearch/registry.yaml b/model/elasticsearch/registry.yaml index a76c98983a..c1f6d8a5f9 100644 --- a/model/elasticsearch/registry.yaml +++ b/model/elasticsearch/registry.yaml @@ -3,7 +3,7 @@ groups: type: attribute_group display_name: Elasticsearch Attributes brief: > - This group defines attributes for Elasticsearch. + This section defines attributes for Elasticsearch. attributes: - id: elasticsearch.node.name type: string diff --git a/schema-next.yaml b/schema-next.yaml index 14914015df..7d9ec9c8c4 100644 --- a/schema-next.yaml +++ b/schema-next.yaml @@ -23,7 +23,7 @@ versions: db.cassandra.coordinator.dc: cassandra.coordinator.dc db.cassandra.coordinator.id: cassandra.coordinator.id db.cassandra.consistency_level: cassandra.consistency.level - db.cassandra.idempotence: cassandra.idempotence + db.cassandra.idempotence: cassandra.query.is_idempotent db.cassandra.page_size: cassandra.page.size db.cassandra.speculative_execution_count: cassandra.speculative_execution.count db.cosmosdb.client_id: azure.client.id @@ -31,12 +31,16 @@ versions: db.cosmosdb.consistency_level: azure.cosmosdb.consistency.level db.cosmosdb.request_charge: azure.cosmosdb.request.charge db.cosmosdb.request_content_length: azure.cosmosdb.request.body.size - db.cosmosdb.regions_contacted: azure.cosmosdb.request.regions_contacted + db.cosmosdb.regions_contacted: azure.cosmosdb.request.contacted_regions db.cosmosdb.sub_status_code: azure.cosmosdb.response.sub_status_code db.elasticsearch.node.name: elasticsearch.node.name # db.elasticsearch.path_parts is a template attribute, schema transformation # does not support it, adding as a comment for consistency # db.elasticsearch.path_parts. -> elasticsearch.path_parts. + - rename_metrics: + db.client.cosmosdb.operation.request_charge: azure.cosmosdb.client.operation.request.charge + db.client.cosmosdb.active_instance.count: azure.cosmosdb.client.active_instance.count + 1.29.0: all: changes: From 4e94cf27e0f47ef856623dffd698f6fa55cbb515 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 16 Jan 2025 19:48:34 -0800 Subject: [PATCH 20/24] db.elasticsearch.path_parts -> db.operation.parameter --- docs/attributes-registry/db.md | 2 +- docs/attributes-registry/elasticsearch.md | 3 --- docs/database/elasticsearch.md | 8 ++++---- .../deprecated/registry-deprecated.yaml | 4 ++-- model/database/spans.yaml | 19 ++++++++++++++++--- model/elasticsearch/registry.yaml | 15 --------------- schema-next.yaml | 2 +- 7 files changed, 24 insertions(+), 29 deletions(-) diff --git a/docs/attributes-registry/db.md b/docs/attributes-registry/db.md index bcb23ff76a..c0360ce47d 100644 --- a/docs/attributes-registry/db.md +++ b/docs/attributes-registry/db.md @@ -152,7 +152,7 @@ Describes deprecated database attributes. | `db.cosmosdb.sub_status_code` | int | Deprecated, use `azure.cosmosdb.response.sub_status_code` instead. | `1000`; `1002` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.response.sub_status_code`. | | `db.elasticsearch.cluster.name` | string | Deprecated, use `db.namespace` instead. | `e9106fc68e3044f0b1475b04bf4ffd5f` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.namespace`. | | `db.elasticsearch.node.name` | string | Deprecated, use `elasticsearch.node.name` instead. | `instance-0000000001` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `elasticsearch.node.name`. | -| `db.elasticsearch.path_parts.` | string | Deprecated, use `elasticsearch.path_parts` instead. | `db.elasticsearch.path_parts.index=test-index`; `db.elasticsearch.path_parts.doc_id=123` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `elasticsearch.path_parts`. | +| `db.elasticsearch.path_parts.` | string | Deprecated, use `db.operation.parameter` instead. | `db.elasticsearch.path_parts.index=test-index`; `db.elasticsearch.path_parts.doc_id=123` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.operation.parameter`. | | `db.instance.id` | string | Deprecated, no general replacement at this time. For Elasticsearch, use `db.elasticsearch.node.name` instead. | `mysql-e26b99z.example.com` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Deprecated, no general replacement at this time. For Elasticsearch, use `db.elasticsearch.node.name` instead. | | `db.jdbc.driver_classname` | string | Removed, no replacement at this time. | `org.postgresql.Driver`; `com.microsoft.sqlserver.jdbc.SQLServerDriver` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Removed as not used. | | `db.mongodb.collection` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | diff --git a/docs/attributes-registry/elasticsearch.md b/docs/attributes-registry/elasticsearch.md index 998077b256..b5b3a9580e 100644 --- a/docs/attributes-registry/elasticsearch.md +++ b/docs/attributes-registry/elasticsearch.md @@ -13,6 +13,3 @@ This section defines attributes for Elasticsearch. | Attribute | Type | Description | Examples | Stability | |---|---|---|---|---| | `elasticsearch.node.name` | string | Represents the human-readable identifier of the node/instance to which a request was routed. | `instance-0000000001` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `elasticsearch.path_parts.` | string | A dynamic value in the url path. [1] | `elasticsearch.path_parts.index=test-index`; `elasticsearch.path_parts.doc_id=123` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | - -**[1] `elasticsearch.path_parts`:** Many Elasticsearch url paths allow dynamic values. These SHOULD be recorded in span attributes in the format `elasticsearch.path_parts.`, where `` is the url path part name. The implementation SHOULD reference the [elasticsearch schema](https://raw.githubusercontent.com/elastic/elasticsearch-specification/main/output/schema/schema.json) in order to map the path part values to their names. diff --git a/docs/database/elasticsearch.md b/docs/database/elasticsearch.md index 31ef3cbb4e..2dfb1d435d 100644 --- a/docs/database/elasticsearch.md +++ b/docs/database/elasticsearch.md @@ -28,8 +28,8 @@ The **span name** follows the [general database span name guidelines](database-s | [`db.operation.name`](/docs/attributes-registry/db.md) | string | The name of the operation or command being executed. [1] | `search`; `ml.close_job`; `cat.aliases` | `Required` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`http.request.method`](/docs/attributes-registry/http.md) | string | HTTP request method. [2] | `GET`; `POST`; `HEAD` | `Required` | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`url.full`](/docs/attributes-registry/url.md) | string | Absolute URL describing a network resource according to [RFC3986](https://www.rfc-editor.org/rfc/rfc3986) [3] | `https://localhost:9200/index/_search?q=user.id:kimchy` | `Required` | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | -| [`db.response.status_code`](/docs/attributes-registry/db.md) | string | The HTTP response code returned by the Elasticsearch cluster. [4] | `200`; `201`; `429` | `Conditionally Required` If response was received. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | -| [`elasticsearch.path_parts.`](/docs/attributes-registry/elasticsearch.md) | string | A dynamic value in the url path. [5] | `elasticsearch.path_parts.index=test-index`; `elasticsearch.path_parts.doc_id=123` | `Conditionally Required` when the url has dynamic values | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`db.operation.parameter.`](/docs/attributes-registry/db.md) | string | A dynamic value in the url path. [4] | `db.operation.parameter.index="test-index"`; `db.operation.parameter="123"` | `Conditionally Required` when the url has path parameters | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`db.response.status_code`](/docs/attributes-registry/db.md) | string | The HTTP response code returned by the Elasticsearch cluster. [5] | `200`; `201`; `429` | `Conditionally Required` If response was received. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`error.type`](/docs/attributes-registry/error.md) | string | Describes a class of error the operation ended with. [6] | `timeout`; `java.net.UnknownHostException`; `server_certificate_invalid`; `500` | `Conditionally Required` If and only if the operation failed. | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`server.port`](/docs/attributes-registry/server.md) | int | Server port number. [7] | `80`; `8080`; `443` | `Conditionally Required` [8] | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | The index or data stream against which the query is executed. [9] | `my_index`; `index1, index2` | `Recommended` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -80,9 +80,9 @@ This list is subject to change over time. When a query string value is redacted, the query string key SHOULD still be preserved, e.g. `https://www.example.com/path?color=blue&sig=REDACTED`. -**[4] `db.response.status_code`:** HTTP response codes in the 4xx and 5xx range SHOULD be considered errors. +**[4] `db.operation.parameter`:** Many Elasticsearch url paths allow dynamic values. These SHOULD be recorded in span attributes in the format `db.operation.parameter.`, where `` is the path parameter name. The implementation SHOULD reference the [elasticsearch schema](https://raw.githubusercontent.com/elastic/elasticsearch-specification/main/output/schema/schema.json) in order to map the path parameter values to their names. -**[5] `elasticsearch.path_parts`:** Many Elasticsearch url paths allow dynamic values. These SHOULD be recorded in span attributes in the format `elasticsearch.path_parts.`, where `` is the url path part name. The implementation SHOULD reference the [elasticsearch schema](https://raw.githubusercontent.com/elastic/elasticsearch-specification/main/output/schema/schema.json) in order to map the path part values to their names. +**[5] `db.response.status_code`:** HTTP response codes in the 4xx and 5xx range SHOULD be considered errors. **[6] `error.type`:** The `error.type` SHOULD match the `db.response.status_code` returned by the database or the client library, or the canonical name of exception that occurred. When using canonical exception type name, instrumentation SHOULD do the best effort to report the most relevant type. For example, if the original exception is wrapped into a generic one, the original exception SHOULD be preferred. diff --git a/model/database/deprecated/registry-deprecated.yaml b/model/database/deprecated/registry-deprecated.yaml index ee87844794..5d77dd9f8a 100644 --- a/model/database/deprecated/registry-deprecated.yaml +++ b/model/database/deprecated/registry-deprecated.yaml @@ -302,8 +302,8 @@ groups: type: template[string] stability: experimental brief: > - Deprecated, use `elasticsearch.path_parts` instead. - deprecated: "Replaced by `elasticsearch.path_parts`." + Deprecated, use `db.operation.parameter` instead. + deprecated: "Replaced by `db.operation.parameter`." examples: [ "db.elasticsearch.path_parts.index=test-index", diff --git a/model/database/spans.yaml b/model/database/spans.yaml index 5156544c02..13ca10ed6c 100644 --- a/model/database/spans.yaml +++ b/model/database/spans.yaml @@ -511,9 +511,22 @@ groups: note: > When communicating with an Elastic Cloud deployment, this should be collected from the "X-Found-Handling-Instance" HTTP response header. requirement_level: recommended - - ref: elasticsearch.path_parts - requirement_level: - conditionally_required: when the url has dynamic values + - ref: db.operation.parameter + stability: development + brief: > + A dynamic value in the url path. + note: > + Many Elasticsearch url paths allow dynamic values. These SHOULD be recorded in span attributes in the format + `db.operation.parameter.`, where `` is the path parameter name. The implementation SHOULD + reference the [elasticsearch schema](https://raw.githubusercontent.com/elastic/elasticsearch-specification/main/output/schema/schema.json) + in order to map the path parameter values to their names. + examples: + [ + 'db.operation.parameter.index="test-index"', + 'db.operation.parameter="123"', + ] + requirement_level: + conditionally_required: when the url has path parameters - ref: db.response.status_code brief: > The HTTP response code returned by the Elasticsearch cluster. diff --git a/model/elasticsearch/registry.yaml b/model/elasticsearch/registry.yaml index c1f6d8a5f9..68119c6a89 100644 --- a/model/elasticsearch/registry.yaml +++ b/model/elasticsearch/registry.yaml @@ -11,18 +11,3 @@ groups: brief: > Represents the human-readable identifier of the node/instance to which a request was routed. examples: ["instance-0000000001"] - - id: elasticsearch.path_parts - type: template[string] - stability: development - brief: > - A dynamic value in the url path. - note: > - Many Elasticsearch url paths allow dynamic values. These SHOULD be recorded in span attributes in the format - `elasticsearch.path_parts.`, where `` is the url path part name. The implementation SHOULD - reference the [elasticsearch schema](https://raw.githubusercontent.com/elastic/elasticsearch-specification/main/output/schema/schema.json) - in order to map the path part values to their names. - examples: - [ - "elasticsearch.path_parts.index=test-index", - "elasticsearch.path_parts.doc_id=123", - ] diff --git a/schema-next.yaml b/schema-next.yaml index 7d9ec9c8c4..9e8c507aca 100644 --- a/schema-next.yaml +++ b/schema-next.yaml @@ -36,7 +36,7 @@ versions: db.elasticsearch.node.name: elasticsearch.node.name # db.elasticsearch.path_parts is a template attribute, schema transformation # does not support it, adding as a comment for consistency - # db.elasticsearch.path_parts. -> elasticsearch.path_parts. + # db.elasticsearch.path_parts. -> db.operation.parameter. - rename_metrics: db.client.cosmosdb.operation.request_charge: azure.cosmosdb.client.operation.request.charge db.client.cosmosdb.active_instance.count: azure.cosmosdb.client.active_instance.count From fc570737901e778d310e052c2e028924b00a4b98 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Thu, 16 Jan 2025 20:00:13 -0800 Subject: [PATCH 21/24] lint --- docs/database/cosmosdb.md | 2 +- internal/tools/scripts/registry/areas-weaver.yaml | 2 +- internal/tools/scripts/registry/areas.md.j2 | 2 +- schema-next.yaml | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/database/cosmosdb.md b/docs/database/cosmosdb.md index 9433852030..dd60d40041 100644 --- a/docs/database/cosmosdb.md +++ b/docs/database/cosmosdb.md @@ -11,7 +11,7 @@ linkTitle: Cosmos DB - [Example](#example) - [Operation Level Metrics](#operation-level-metrics) - [Metric: `db.client.operation.duration`](#metric-dbclientoperationduration) - - [Metric: `azure.cosmosdb.client.response.returned_rows`](#metric-azurecosmosdbclientresponsereturned_rows) + - [Metric: `db.client.response.returned_rows`](#metric-dbclientresponsereturned_rows) - [Metric: `azure.cosmosdb.client.operation.request_charge`](#metric-azurecosmosdbclientoperationrequest_charge) - [Metric: `azure.cosmosdb.client.active_instance.count`](#metric-azurecosmosdbclientactive_instancecount) diff --git a/internal/tools/scripts/registry/areas-weaver.yaml b/internal/tools/scripts/registry/areas-weaver.yaml index fcb39c3806..074629a1cf 100644 --- a/internal/tools/scripts/registry/areas-weaver.yaml +++ b/internal/tools/scripts/registry/areas-weaver.yaml @@ -1,7 +1,7 @@ templates: - pattern: areas.md.j2 filter: > - semconv_grouped_attributes({"exclude_deprecated": true}) | .[].root_namespace | unique + semconv_grouped_attributes({"exclude_deprecated": true}) | .[].root_namespace application_mode: single whitespace_control: trim_blocks: true diff --git a/internal/tools/scripts/registry/areas.md.j2 b/internal/tools/scripts/registry/areas.md.j2 index f10bdea506..974f2fc3f7 100644 --- a/internal/tools/scripts/registry/areas.md.j2 +++ b/internal/tools/scripts/registry/areas.md.j2 @@ -1,5 +1,5 @@ {{- template.set_file_name("areas.txt") -}} -{% for item in ctx | map('map_text', 'areas') | sort %} +{% for item in ctx | map('map_text', 'areas') | unique | sort %} area:{{ item | kebab_case }} {% endfor %} \ No newline at end of file diff --git a/schema-next.yaml b/schema-next.yaml index 9e8c507aca..19ddf7f166 100644 --- a/schema-next.yaml +++ b/schema-next.yaml @@ -38,8 +38,8 @@ versions: # does not support it, adding as a comment for consistency # db.elasticsearch.path_parts. -> db.operation.parameter. - rename_metrics: - db.client.cosmosdb.operation.request_charge: azure.cosmosdb.client.operation.request.charge - db.client.cosmosdb.active_instance.count: azure.cosmosdb.client.active_instance.count + db.client.cosmosdb.operation.request_charge: azure.cosmosdb.client.operation.request.charge + db.client.cosmosdb.active_instance.count: azure.cosmosdb.client.active_instance.count 1.29.0: all: From 663766d959d22b9c9660bdd98b1aa909379e8fe4 Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Fri, 17 Jan 2025 08:20:14 -0800 Subject: [PATCH 22/24] is_idempotent -> idempotent --- docs/attributes-registry/cassandra.md | 2 +- docs/attributes-registry/db.md | 2 +- docs/database/cassandra.md | 2 +- model/cassandra/registry.yaml | 2 +- model/database/deprecated/registry-deprecated.yaml | 4 ++-- model/database/spans.yaml | 2 +- schema-next.yaml | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/attributes-registry/cassandra.md b/docs/attributes-registry/cassandra.md index de0be1f279..03c591ab03 100644 --- a/docs/attributes-registry/cassandra.md +++ b/docs/attributes-registry/cassandra.md @@ -16,7 +16,7 @@ This section defines attributes for Cassandra. | `cassandra.coordinator.dc` | string | The data center of the coordinating node for a query. | `us-west-2` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra.coordinator.id` | string | The ID of the coordinating node for a query. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra.page.size` | int | The fetch size used for paging, i.e. how many rows will be returned at once. | `5000` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `cassandra.query.is_idempotent` | boolean | Whether or not the query is idempotent. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `cassandra.query.idempotent` | boolean | Whether or not the query is idempotent. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `cassandra.speculative_execution.count` | int | The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. | `0`; `2` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | --- diff --git a/docs/attributes-registry/db.md b/docs/attributes-registry/db.md index c0360ce47d..5d38f03c5b 100644 --- a/docs/attributes-registry/db.md +++ b/docs/attributes-registry/db.md @@ -135,7 +135,7 @@ Describes deprecated database attributes. | `db.cassandra.consistency_level` | string | Deprecated, use `cassandra.consistency.level` instead. | `all`; `each_quorum`; `quorum` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.consistency.level`. | | `db.cassandra.coordinator.dc` | string | Deprecated, use `cassandra.coordinator.dc` instead. | `us-west-2` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.coordinator.dc`. | | `db.cassandra.coordinator.id` | string | Deprecated, use `cassandra.coordinator.id` instead. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.coordinator.id`. | -| `db.cassandra.idempotence` | boolean | Deprecated, use `cassandra.query.is_idempotent` instead. | | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.query.is_idempotent`. | +| `db.cassandra.idempotence` | boolean | Deprecated, use `cassandra.query.idempotent` instead. | | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.query.idempotent`. | | `db.cassandra.page_size` | int | Deprecated, use `cassandra.page.size` instead. | `5000` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.page.size`. | | `db.cassandra.speculative_execution_count` | int | Deprecated, use `cassandra.speculative_execution.count` instead. | `0`; `2` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `cassandra.speculative_execution.count`. | | `db.cassandra.table` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | diff --git a/docs/database/cassandra.md b/docs/database/cassandra.md index e37382970e..0456b7777d 100644 --- a/docs/database/cassandra.md +++ b/docs/database/cassandra.md @@ -31,7 +31,7 @@ The Semantic Conventions for [Cassandra](https://cassandra.apache.org/) extend a | [`cassandra.coordinator.dc`](/docs/attributes-registry/cassandra.md) | string | The data center of the coordinating node for a query. | `us-west-2` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`cassandra.coordinator.id`](/docs/attributes-registry/cassandra.md) | string | The ID of the coordinating node for a query. | `be13faa2-8574-4d71-926d-27f16cf8a7af` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`cassandra.page.size`](/docs/attributes-registry/cassandra.md) | int | The fetch size used for paging, i.e. how many rows will be returned at once. | `5000` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`cassandra.query.is_idempotent`](/docs/attributes-registry/cassandra.md) | boolean | Whether or not the query is idempotent. | | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`cassandra.query.idempotent`](/docs/attributes-registry/cassandra.md) | boolean | Whether or not the query is idempotent. | | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`cassandra.speculative_execution.count`](/docs/attributes-registry/cassandra.md) | int | The number of times a query was speculatively executed. Not set or `0` if the query was not executed speculatively. | `0`; `2` | `Recommended` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`db.operation.batch.size`](/docs/attributes-registry/db.md) | int | The number of queries included in a batch operation. [11] | `2`; `3`; `4` | `Recommended` | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.query.summary`](/docs/attributes-registry/db.md) | string | Low cardinality representation of a database query text. [12] | `SELECT wuser_table`; `INSERT shipping_details SELECT orders`; `get user by id` | `Recommended` [13] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | diff --git a/model/cassandra/registry.yaml b/model/cassandra/registry.yaml index 029226c2bb..fbfba03c4f 100644 --- a/model/cassandra/registry.yaml +++ b/model/cassandra/registry.yaml @@ -56,7 +56,7 @@ groups: value: "local_serial" stability: development stability: development - - id: cassandra.query.is_idempotent + - id: cassandra.query.idempotent type: boolean stability: development brief: > diff --git a/model/database/deprecated/registry-deprecated.yaml b/model/database/deprecated/registry-deprecated.yaml index 5d77dd9f8a..c8f58703b5 100644 --- a/model/database/deprecated/registry-deprecated.yaml +++ b/model/database/deprecated/registry-deprecated.yaml @@ -211,8 +211,8 @@ groups: - id: db.cassandra.idempotence type: boolean stability: experimental - brief: "Deprecated, use `cassandra.query.is_idempotent` instead." - deprecated: "Replaced by `cassandra.query.is_idempotent`." + brief: "Deprecated, use `cassandra.query.idempotent` instead." + deprecated: "Replaced by `cassandra.query.idempotent`." - id: db.cassandra.page_size type: int stability: experimental diff --git a/model/database/spans.yaml b/model/database/spans.yaml index 13ca10ed6c..befd61d994 100644 --- a/model/database/spans.yaml +++ b/model/database/spans.yaml @@ -276,7 +276,7 @@ groups: - ref: cassandra.consistency.level - ref: db.collection.name brief: The name of the Cassandra table that the operation is acting upon. - - ref: cassandra.query.is_idempotent + - ref: cassandra.query.idempotent - ref: cassandra.speculative_execution.count - ref: cassandra.coordinator.id - ref: cassandra.coordinator.dc diff --git a/schema-next.yaml b/schema-next.yaml index 19ddf7f166..8f1df13f58 100644 --- a/schema-next.yaml +++ b/schema-next.yaml @@ -23,7 +23,7 @@ versions: db.cassandra.coordinator.dc: cassandra.coordinator.dc db.cassandra.coordinator.id: cassandra.coordinator.id db.cassandra.consistency_level: cassandra.consistency.level - db.cassandra.idempotence: cassandra.query.is_idempotent + db.cassandra.idempotence: cassandra.query.idempotent db.cassandra.page_size: cassandra.page.size db.cassandra.speculative_execution_count: cassandra.speculative_execution.count db.cosmosdb.client_id: azure.client.id From a66362aee4f3d3d4633d2f76f36c6330df5daaeb Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Mon, 20 Jan 2025 17:43:14 -0800 Subject: [PATCH 23/24] update system constants --- docs/database/README.md | 4 ++-- docs/database/cosmosdb.md | 2 +- docs/database/sql.md | 18 +++++++----------- 3 files changed, 10 insertions(+), 14 deletions(-) diff --git a/docs/database/README.md b/docs/database/README.md index 488621a3d4..ee7c6d49f1 100644 --- a/docs/database/README.md +++ b/docs/database/README.md @@ -47,12 +47,12 @@ Technology specific semantic conventions are defined for the following databases * [AWS DynamoDB](dynamodb.md): Semantic Conventions for *AWS DynamoDB*. * [Cassandra](cassandra.md): Semantic Conventions for *Cassandra*. -* [Cosmos DB](cosmosdb.md): Semantic Conventions for *Microsoft Cosmos DB*. +* [Cosmos DB](cosmosdb.md): Semantic Conventions for *Azure Cosmos DB*. * [CouchDB](couchdb.md): Semantic Conventions for *CouchDB*. * [Elasticsearch](elasticsearch.md): Semantic Conventions for *Elasticsearch*. * [HBase](hbase.md): Semantic Conventions for *HBase*. * [MongoDB](mongodb.md): Semantic Conventions for *MongoDB*. -* [MSSQL](mssql.md): Semantic Conventions for *MSSQL*. +* [Microsoft SQL Server](mssql.md): Semantic Conventions for *Microsoft SQL Server*. * [Redis](redis.md): Semantic Conventions for *Redis*. * [SQL](sql.md): Semantic Conventions for *SQL* databases. diff --git a/docs/database/cosmosdb.md b/docs/database/cosmosdb.md index dd60d40041..6663ad4f38 100644 --- a/docs/database/cosmosdb.md +++ b/docs/database/cosmosdb.md @@ -277,7 +277,7 @@ and SHOULD be provided **at span creation time** (if provided at all): |:-------------------------------------| :------------------- | | Span name | `"read_item orders"` | | `az.namespace` | `"Microsoft.DocumentDB"` | -| `db.system.name` | `"cosmosdb"` | +| `db.system.name` | `"azure.cosmosdb"` | | `db.collection.name` | `"orders"` | | `db.namespace` | `"ShopDb"` | | `db.operation.name` | `"read_item"` | diff --git a/docs/database/sql.md b/docs/database/sql.md index 83511d947f..f3486f69b4 100644 --- a/docs/database/sql.md +++ b/docs/database/sql.md @@ -10,24 +10,20 @@ The SQL databases Semantic Conventions describes how common [Database Semantic C The following database systems (defined in the [`db.system.name`](./database-spans.md#notes-and-well-known-identifiers-for-dbsystemname) set) are known to use SQL as their primary query language: +- `actian.ingres` - `cockroachdb` -- `db2` - `derby` -- `edb` -- `firebird` -- `h2` +- `firebirdsql` +- `h2database` - `hsqldb` -- `ingres` -- `interbase` +- `ibm.db2` - `mariadb` -- `maxdb` -- `mssql` -- `mssqlcompact` +- `microsoft.sql_server` - `mysql` -- `oracle` +- `oracle.db` - `other_sql` -- `pervasive` - `postgresql` +- `sap.maxdb` - `sqlite` - `trino` From ad5191257fab5b1947c976459f101deb81bbe93f Mon Sep 17 00:00:00 2001 From: Liudmila Molkova Date: Mon, 20 Jan 2025 18:05:27 -0800 Subject: [PATCH 24/24] a few more cleanups: examples and cosmos attributes --- docs/attributes-registry/azure.md | 6 ++--- docs/attributes-registry/db.md | 4 ++-- docs/database/README.md | 2 +- docs/database/cosmosdb.md | 24 +++++++++---------- docs/database/database-spans.md | 4 ++-- model/azure/cosmosdb-metrics.yaml | 8 +++---- model/azure/registry.yaml | 6 ++--- .../deprecated/metrics-deprecated.yaml | 2 +- .../deprecated/registry-deprecated.yaml | 8 +++---- model/database/spans.yaml | 4 ++-- schema-next.yaml | 6 ++--- 11 files changed, 37 insertions(+), 37 deletions(-) diff --git a/docs/attributes-registry/azure.md b/docs/attributes-registry/azure.md index 16f0ee7b96..080b240f03 100644 --- a/docs/attributes-registry/azure.md +++ b/docs/attributes-registry/azure.md @@ -27,12 +27,12 @@ This section defines attributes for Azure Cosmos DB. |---|---|---|---|---| | `azure.cosmosdb.connection.mode` | string | Cosmos client connection mode. | `gateway`; `direct` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `azure.cosmosdb.consistency.level` | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb.operation.contacted_regions` | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [1] | `["North Central US", "Australia East", "Australia Southeast"]` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb.operation.request_charge` | double | The number of request units consumed by the operation. | `46.18`; `1.0` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `azure.cosmosdb.request.body.size` | int | Request payload size in bytes. | | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `azure.cosmosdb.request.charge` | double | Request units consumed for the operation. | `46.18`; `1.0` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `azure.cosmosdb.request.contacted_regions` | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [1] | `["North Central US", "Australia East", "Australia Southeast"]` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `azure.cosmosdb.response.sub_status_code` | int | Cosmos DB sub status code. | `1000`; `1002` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -**[1] `azure.cosmosdb.request.contacted_regions`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) +**[1] `azure.cosmosdb.operation.contacted_regions`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) --- diff --git a/docs/attributes-registry/db.md b/docs/attributes-registry/db.md index 5d38f03c5b..8b616b18ec 100644 --- a/docs/attributes-registry/db.md +++ b/docs/attributes-registry/db.md @@ -145,8 +145,8 @@ Describes deprecated database attributes. | `db.cosmosdb.consistency_level` | string | Deprecated, use `cosmosdb.consistency.level` instead. | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.consistency.level`. | | `db.cosmosdb.container` | string | Deprecated, use `db.collection.name` instead. | `mytable` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.collection.name`. | | `db.cosmosdb.operation_type` | string | Deprecated, no replacement at this time. | `batch`; `create`; `delete` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
No replacement at this time. | -| `db.cosmosdb.regions_contacted` | string[] | Deprecated, use `azure.cosmosdb.request.contacted_regions` instead. | `["North Central US", "Australia East", "Australia Southeast"]` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.request.contacted_regions`. | -| `db.cosmosdb.request_charge` | double | Deprecated, use `azure.cosmosdb.request.charge` instead. | `46.18`; `1.0` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.request.charge`. | +| `db.cosmosdb.regions_contacted` | string[] | Deprecated, use `azure.cosmosdb.operation.contacted_regions` instead. | `["North Central US", "Australia East", "Australia Southeast"]` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.operation.contacted_regions`. | +| `db.cosmosdb.request_charge` | double | Deprecated, use `azure.cosmosdb.operation.request_charge` instead. | `46.18`; `1.0` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.operation.request_charge`. | | `db.cosmosdb.request_content_length` | int | Deprecated, use `azure.cosmosdb.request.body.size` instead. | | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.request.body.size`. | | `db.cosmosdb.status_code` | int | Deprecated, use `db.response.status_code` instead. | `200`; `201` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `db.response.status_code`. | | `db.cosmosdb.sub_status_code` | int | Deprecated, use `azure.cosmosdb.response.sub_status_code` instead. | `1000`; `1002` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `azure.cosmosdb.response.sub_status_code`. | diff --git a/docs/database/README.md b/docs/database/README.md index ee7c6d49f1..0208616e1d 100644 --- a/docs/database/README.md +++ b/docs/database/README.md @@ -47,7 +47,7 @@ Technology specific semantic conventions are defined for the following databases * [AWS DynamoDB](dynamodb.md): Semantic Conventions for *AWS DynamoDB*. * [Cassandra](cassandra.md): Semantic Conventions for *Cassandra*. -* [Cosmos DB](cosmosdb.md): Semantic Conventions for *Azure Cosmos DB*. +* [Azure Cosmos DB](cosmosdb.md): Semantic Conventions for *Azure Cosmos DB*. * [CouchDB](couchdb.md): Semantic Conventions for *CouchDB*. * [Elasticsearch](elasticsearch.md): Semantic Conventions for *Elasticsearch*. * [HBase](hbase.md): Semantic Conventions for *HBase*. diff --git a/docs/database/cosmosdb.md b/docs/database/cosmosdb.md index 6663ad4f38..fddc7e0bdb 100644 --- a/docs/database/cosmosdb.md +++ b/docs/database/cosmosdb.md @@ -41,8 +41,8 @@ Cosmos DB instrumentation includes call-level (public API) surface spans and net |---|---|---|---|---|---| | [`azure.cosmosdb.connection.mode`](/docs/attributes-registry/azure.md) | string | Cosmos client connection mode. | `gateway`; `direct` | `Conditionally Required` [1] | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`azure.cosmosdb.consistency.level`](/docs/attributes-registry/azure.md) | string | Account or request [consistency level](https://learn.microsoft.com/azure/cosmos-db/consistency-levels). | `Eventual`; `ConsistentPrefix`; `BoundedStaleness`; `Strong`; `Session` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`azure.cosmosdb.request.charge`](/docs/attributes-registry/azure.md) | double | Request units consumed for the operation. | `46.18`; `1.0` | `Conditionally Required` when available | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`azure.cosmosdb.request.contacted_regions`](/docs/attributes-registry/azure.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [2] | `["North Central US", "Australia East", "Australia Southeast"]` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`azure.cosmosdb.operation.contacted_regions`](/docs/attributes-registry/azure.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [2] | `["North Central US", "Australia East", "Australia Southeast"]` | `Conditionally Required` If available. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`azure.cosmosdb.operation.request_charge`](/docs/attributes-registry/azure.md) | double | The number of request units consumed by the operation. | `46.18`; `1.0` | `Conditionally Required` when available | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`azure.cosmosdb.response.sub_status_code`](/docs/attributes-registry/azure.md) | int | Cosmos DB sub status code. | `1000`; `1002` | `Conditionally Required` when response was received and contained sub-code. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`db.collection.name`](/docs/attributes-registry/db.md) | string | Cosmos DB container name. [3] | `public.users`; `customers` | `Conditionally Required` if available | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`db.namespace`](/docs/attributes-registry/db.md) | string | The name of the database, fully qualified within the server address and port. | `customers`; `test.users` | `Conditionally Required` If available. | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | @@ -63,7 +63,7 @@ Cosmos DB instrumentation includes call-level (public API) surface spans and net **[1] `azure.cosmosdb.connection.mode`:** if not `gateway` (the default value is assumed to be `gateway`). -**[2] `azure.cosmosdb.request.contacted_regions`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) +**[2] `azure.cosmosdb.operation.contacted_regions`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) **[3] `db.collection.name`:** It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. @@ -277,17 +277,17 @@ and SHOULD be provided **at span creation time** (if provided at all): |:-------------------------------------| :------------------- | | Span name | `"read_item orders"` | | `az.namespace` | `"Microsoft.DocumentDB"` | +| `azure.client.id` | `"3ba4827d-4422-483f-b59f-85b74211c11d"` | +| `azure.cosmosdb.operation.request_charge` | `7.43` | +| `azure.cosmosdb.request.body.size` | `20` | +| `azure.cosmosdb.response.sub_status_code` | `0` | | `db.system.name` | `"azure.cosmosdb"` | | `db.collection.name` | `"orders"` | | `db.namespace` | `"ShopDb"` | | `db.operation.name` | `"read_item"` | +| `db.response.status_code` | `201` | | `server.address` | `"account.documents.azure.com"` | -| `azure.client.id` | `"3ba4827d-4422-483f-b59f-85b74211c11d"` | | `user_agent.original` | `"cosmos-netstandard-sdk/3.23.0\|3.23.1\|1\|X64\|Linux 5.4.0-1098-azure 104 18\|.NET Core 3.1.32\|S\|"` | -| `db.cosmosdb.request_content_length` | `20` | -| `db.response.status_code` | `201` | -| `db.cosmosdb.sub_status_code` | `0` | -| `db.cosmosdb.request_charge` | `7.43` | ## Operation Level Metrics @@ -326,7 +326,7 @@ Explaining bucket configuration: 3. 100, 250: Higher Usage Levels, These boundaries represent operations that may require significant resources, such as complex queries or larger transactions. Monitoring RUs in these ranges can help identify performance bottlenecks or costly queries that might lead to throttling. 4. 500, 1000: Very High Usage Levels, These buckets capture operations that consume a substantial number of Request Units, which may indicate potentially expensive queries or batch processes. Understanding the frequency and patterns of such high RU usage can be critical in optimizing performance and ensuring the application remains within provisioned throughput limits. - + @@ -335,7 +335,7 @@ Explaining bucket configuration: | Name | Instrument Type | Unit (UCUM) | Description | Stability | | -------- | --------------- | ----------- | -------------- | --------- | -| `azure.cosmosdb.client.operation.request.charge` | Histogram | `{request_unit}` | [Request charge](https://learn.microsoft.com/azure/cosmos-db/request-units) consumed by the operation | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `azure.cosmosdb.client.operation.request_charge` | Histogram | `{request_unit}` | [Request units](https://learn.microsoft.com/azure/cosmos-db/request-units) consumed by the operation | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability | |---|---|---|---|---|---| @@ -347,7 +347,7 @@ Explaining bucket configuration: | [`db.response.status_code`](/docs/attributes-registry/db.md) | string | Database response status code. [4] | `102`; `ORA-17002`; `08P01`; `404` | `Conditionally Required` [5] | ![Release Candidate](https://img.shields.io/badge/-rc-mediumorchid) | | [`error.type`](/docs/attributes-registry/error.md) | string | Describes a class of error the operation ended with. [6] | `timeout`; `java.net.UnknownHostException`; `server_certificate_invalid`; `500` | `Conditionally Required` If and only if the operation failed. | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`server.port`](/docs/attributes-registry/server.md) | int | Server port number. [7] | `80`; `8080`; `443` | `Conditionally Required` [8] | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | -| [`azure.cosmosdb.request.contacted_regions`](/docs/attributes-registry/azure.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [9] | `["North Central US", "Australia East", "Australia Southeast"]` | `Recommended` If available | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`azure.cosmosdb.operation.contacted_regions`](/docs/attributes-registry/azure.md) | string[] | List of regions contacted during operation in the order that they were contacted. If there is more than one region listed, it indicates that the operation was performed on multiple regions i.e. cross-regional call. [9] | `["North Central US", "Australia East", "Australia Southeast"]` | `Recommended` If available | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`server.address`](/docs/attributes-registry/server.md) | string | Name of the database host. [10] | `example.com`; `10.1.2.80`; `/tmp/my.sock` | `Recommended` | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | **[1] `db.collection.name`:** It is RECOMMENDED to capture the value as provided by the application without attempting to do any case normalization. @@ -384,7 +384,7 @@ Instrumentations SHOULD document how `error.type` is populated. **[8] `server.port`:** If using a port other than the default port for this DBMS and if `server.address` is set. -**[9] `azure.cosmosdb.request.contacted_regions`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) +**[9] `azure.cosmosdb.operation.contacted_regions`:** Region name matches the format of `displayName` in [Azure Location API](https://learn.microsoft.com/rest/api/subscription/subscriptions/list-locations?view=rest-subscription-2021-10-01&tabs=HTTP#location) **[10] `server.address`:** When observed from the client side, and when communicating through an intermediary, `server.address` SHOULD represent the server address behind any intermediaries, for example proxies, if it's available. diff --git a/docs/database/database-spans.md b/docs/database/database-spans.md index 05313490c6..7bf0a35a09 100644 --- a/docs/database/database-spans.md +++ b/docs/database/database-spans.md @@ -399,12 +399,12 @@ More specific Semantic Conventions are defined for the following database techno * [AWS DynamoDB](dynamodb.md): Semantic Conventions for *AWS DynamoDB*. * [Cassandra](cassandra.md): Semantic Conventions for *Cassandra*. -* [Cosmos DB](cosmosdb.md): Semantic Conventions for *Microsoft Cosmos DB*. +* [Azure Cosmos DB](cosmosdb.md): Semantic Conventions for *Azure Cosmos DB*. * [CouchDB](couchdb.md): Semantic Conventions for *CouchDB*. * [Elasticsearch](elasticsearch.md): Semantic Conventions for *Elasticsearch*. * [HBase](hbase.md): Semantic Conventions for *HBase*. * [MongoDB](mongodb.md): Semantic Conventions for *MongoDB*. -* [MSSQL](mssql.md): Semantic Conventions for *MSSQL*. +* [Microsoft SQL Server](mssql.md): Semantic Conventions for *Microsoft SQL Server*. * [Redis](redis.md): Semantic Conventions for *Redis*. * [SQL](sql.md): Semantic Conventions for *SQL* databases. diff --git a/model/azure/cosmosdb-metrics.yaml b/model/azure/cosmosdb-metrics.yaml index 4a0fdfa879..05996fe462 100644 --- a/model/azure/cosmosdb-metrics.yaml +++ b/model/azure/cosmosdb-metrics.yaml @@ -1,14 +1,14 @@ groups: - - id: metric.azure.cosmosdb.client.operation.request.charge + - id: metric.azure.cosmosdb.client.operation.request_charge type: metric - metric_name: azure.cosmosdb.client.operation.request.charge - brief: "[Request charge](https://learn.microsoft.com/azure/cosmos-db/request-units) consumed by the operation" + metric_name: azure.cosmosdb.client.operation.request_charge + brief: "[Request units](https://learn.microsoft.com/azure/cosmos-db/request-units) consumed by the operation" instrument: histogram unit: "{request_unit}" stability: development extends: attributes.azure.cosmosdb.minimal attributes: - - ref: azure.cosmosdb.request.contacted_regions + - ref: azure.cosmosdb.operation.contacted_regions requirement_level: recommended: If available diff --git a/model/azure/registry.yaml b/model/azure/registry.yaml index 9e0c6fdde4..5407da9631 100644 --- a/model/azure/registry.yaml +++ b/model/azure/registry.yaml @@ -43,16 +43,16 @@ groups: stability: development stability: development brief: Cosmos client connection mode. - - id: azure.cosmosdb.request.charge + - id: azure.cosmosdb.operation.request_charge type: double stability: development - brief: Request units consumed for the operation. + brief: The number of request units consumed by the operation. examples: [46.18, 1.0] - id: azure.cosmosdb.request.body.size type: int stability: development brief: Request payload size in bytes. - - id: azure.cosmosdb.request.contacted_regions + - id: azure.cosmosdb.operation.contacted_regions type: string[] stability: development brief: > diff --git a/model/database/deprecated/metrics-deprecated.yaml b/model/database/deprecated/metrics-deprecated.yaml index 56e29973b0..f0d2fcec2d 100644 --- a/model/database/deprecated/metrics-deprecated.yaml +++ b/model/database/deprecated/metrics-deprecated.yaml @@ -113,7 +113,7 @@ groups: type: metric metric_name: db.client.cosmosdb.operation.request_charge brief: "Deprecated, use `azure.cosmosdb.client.operation.request_charge` instead." - deprecated: "Replaced by `azure.cosmosdb.client.request.charge`." + deprecated: "Replaced by `azure.cosmosdb.client.operation.request_charge`." instrument: histogram unit: "{request_unit}" stability: experimental diff --git a/model/database/deprecated/registry-deprecated.yaml b/model/database/deprecated/registry-deprecated.yaml index c8f58703b5..1dc1a06c2f 100644 --- a/model/database/deprecated/registry-deprecated.yaml +++ b/model/database/deprecated/registry-deprecated.yaml @@ -248,8 +248,8 @@ groups: - id: db.cosmosdb.request_charge type: double stability: experimental - brief: "Deprecated, use `azure.cosmosdb.request.charge` instead." - deprecated: "Replaced by `azure.cosmosdb.request.charge`." + brief: "Deprecated, use `azure.cosmosdb.operation.request_charge` instead." + deprecated: "Replaced by `azure.cosmosdb.operation.request_charge`." examples: [46.18, 1.0] - id: db.cosmosdb.request_content_length type: int @@ -287,8 +287,8 @@ groups: - id: db.cosmosdb.regions_contacted type: string[] stability: experimental - brief: "Deprecated, use `azure.cosmosdb.request.contacted_regions` instead." - deprecated: "Replaced by `azure.cosmosdb.request.contacted_regions`." + brief: "Deprecated, use `azure.cosmosdb.operation.contacted_regions` instead." + deprecated: "Replaced by `azure.cosmosdb.operation.contacted_regions`." examples: - ["North Central US", "Australia East", "Australia Southeast"] - id: db.elasticsearch.node.name diff --git a/model/database/spans.yaml b/model/database/spans.yaml index befd61d994..7cec6cf78d 100644 --- a/model/database/spans.yaml +++ b/model/database/spans.yaml @@ -661,7 +661,7 @@ groups: - ref: azure.cosmosdb.response.sub_status_code requirement_level: conditionally_required: when response was received and contained sub-code. - - ref: azure.cosmosdb.request.charge + - ref: azure.cosmosdb.operation.request_charge requirement_level: conditionally_required: when available - ref: db.namespace @@ -807,6 +807,6 @@ groups: - ref: azure.cosmosdb.consistency.level requirement_level: conditionally_required: If available. - - ref: azure.cosmosdb.request.contacted_regions + - ref: azure.cosmosdb.operation.contacted_regions requirement_level: conditionally_required: If available. diff --git a/schema-next.yaml b/schema-next.yaml index 8f1df13f58..c708565d5e 100644 --- a/schema-next.yaml +++ b/schema-next.yaml @@ -29,16 +29,16 @@ versions: db.cosmosdb.client_id: azure.client.id db.cosmosdb.connection_mode: azure.cosmosdb.connection.mode db.cosmosdb.consistency_level: azure.cosmosdb.consistency.level - db.cosmosdb.request_charge: azure.cosmosdb.request.charge + db.cosmosdb.request_charge: azure.cosmosdb.operation.request_charge db.cosmosdb.request_content_length: azure.cosmosdb.request.body.size - db.cosmosdb.regions_contacted: azure.cosmosdb.request.contacted_regions + db.cosmosdb.regions_contacted: azure.cosmosdb.operation.contacted_regions db.cosmosdb.sub_status_code: azure.cosmosdb.response.sub_status_code db.elasticsearch.node.name: elasticsearch.node.name # db.elasticsearch.path_parts is a template attribute, schema transformation # does not support it, adding as a comment for consistency # db.elasticsearch.path_parts. -> db.operation.parameter. - rename_metrics: - db.client.cosmosdb.operation.request_charge: azure.cosmosdb.client.operation.request.charge + db.client.cosmosdb.operation.request_charge: azure.cosmosdb.client.operation.request_charge db.client.cosmosdb.active_instance.count: azure.cosmosdb.client.active_instance.count 1.29.0: