diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 0ea068d59c..b7214d0d7a 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -11,4 +11,3 @@ Note: if the PR is touching an area that is not listed in the [existing areas](h * [ ] [CONTRIBUTING.md](https://github.com/open-telemetry/semantic-conventions/blob/main/CONTRIBUTING.md) guidelines followed. * [ ] Change log entry added, according to the guidelines in [When to add a changelog entry](https://github.com/open-telemetry/semantic-conventions/blob/main/CONTRIBUTING.md#when-to-add-a-changelog-entry). * If your PR does not need a change log, start the PR title with `[chore]` -* [ ] [schema-next.yaml](https://github.com/open-telemetry/semantic-conventions/blob/main/schema-next.yaml) updated with changes to existing conventions. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e91fa46805..98da4e7846 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -53,10 +53,6 @@ key, but non-obvious, aspects: - All attributes, metrics, etc. are formally defined in YAML files under the `model/` directory. - All descriptions, normative language are defined in the `docs/` directory. -- All changes to existing attributes, metrics, etc. MUST be allowed as - per our [stability guarantees][stability guarantees] and - defined in a schema file. As part of any contribution, you should - include attribute changes defined in the `schema-next.yaml` file. - Links to the specification repository MUST point to a tag and **not** to the `main` branch. The tag version MUST match with the one defined in [README](README.md). @@ -126,20 +122,6 @@ HTTP spans are defined in `model/http/spans.yaml`. YAML definitions could be broken down into multiple files. For example, AWS spans are defined in `/model/aws/lambda-spans.yaml` and `/model/aws/sdk-spans.yaml` files. -#### Schema files - -When making changes to existing semantic conventions (attributes, metrics, etc) -you MUST also update the `schema-next.yaml` file with the changes. - -For details, please read -[the schema specification](https://opentelemetry.io/docs/specs/otel/schemas/). - -You can also take examples from past changes inside the `schemas` folder. - -> [!WARNING] -> DO NOT add your changes to files inside the `schemas` folder. Always add your -> changes to the `schema-next.yaml` file. - ### 2. Update the markdown files After updating the YAML file(s), you need to update @@ -367,10 +349,6 @@ make check-policies [tooling to update the spec](#updating-the-referenced-specification-version) if needed. - Create a staging branch for the release. - - Update `schema-next.yaml` file and move to `schemas/{version}` - - Ensure the `next` version is appropriately configured as the `{version}`. - - Copy `schema-next.yaml` to `schemas/{version}`. - - Add `next` as a version in `schema-next.yaml` version. - Run `make chlog-update VERSION=v{version}` - `make chlog-update` will clean up all the current `.yaml` files inside the `.chloggen` folder automatically diff --git a/schema-next.yaml b/schema-next.yaml deleted file mode 100644 index 50afab2b96..0000000000 --- a/schema-next.yaml +++ /dev/null @@ -1,543 +0,0 @@ -file_format: 1.1.0 -schema_url: https://opentelemetry.io/schemas/next -versions: - next: - all: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/1520 - - rename_attributes: - attribute_map: - process.executable.build_id.profiling: process.executable.build_id.htlhash - # https://github.com/open-telemetry/semantic-conventions/pull/1383 - - rename_attributes: - attribute_map: - vcs.repository.change.id: vcs.change.id - vcs.repository.change.title: vcs.change.title - vcs.repository.ref.name: vcs.ref.head.name - vcs.repository.ref.revision: vcs.ref.head.revision - vcs.repository.ref.type: vcs.ref.head.type - # https://github.com/open-telemetry/semantic-conventions/pull/1440 - - rename_attributes: - attribute_map: - feature_flag.provider_name: feature_flag.system - - metrics: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/1492 - - rename_attributes: - attribute_map: - system.device: network.interface.name - apply_to_metrics: - - container.network.io - - system.network.dropped - - system.network.errors - - system.network.io - - system.network.connections - 1.28.0: - metrics: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/1422 - - rename_metrics: - messaging.client.published.messages: messaging.client.sent.messages - 1.27.0: - all: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/1216 - - rename_attributes: - attribute_map: - tls.client.server_name: server.address - # https://github.com/open-telemetry/semantic-conventions/pull/1075 - - rename_attributes: - attribute_map: - deployment.environment: deployment.environment.name - # https://github.com/open-telemetry/semantic-conventions/pull/1245 - - rename_attributes: - attribute_map: - messaging.kafka.message.offset: messaging.kafka.offset - # https://github.com/open-telemetry/semantic-conventions/pull/815 - - rename_attributes: - attribute_map: - messaging.kafka.consumer.group: messaging.consumer.group.name - messaging.rocketmq.client_group: messaging.consumer.group.name - messaging.evenhubs.consumer.group: messaging.consumer.group.name - message.servicebus.destination.subscription_name: messaging.destination.subscription.name - # https://github.com/open-telemetry/semantic-conventions/pull/1200 - - rename_attributes: - attribute_map: - gen_ai.usage.completion_tokens: gen_ai.usage.output_tokens - gen_ai.usage.prompt_tokens: gen_ai.usage.input_tokens - spans: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/1002 - - rename_attributes: - attribute_map: - db.elasticsearch.cluster.name: db.namespace - metrics: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/1125 - - rename_attributes: - attribute_map: - db.client.connections.state: db.client.connection.state - apply_to_metrics: - - db.client.connection.count - - rename_attributes: - attribute_map: - db.client.connections.pool.name: db.client.connection.pool.name - apply_to_metrics: - - db.client.connection.count - - db.client.connection.idle.max - - db.client.connection.idle.min - - db.client.connection.max - - db.client.connection.pending_requests - - db.client.connection.timeouts - - db.client.connection.create_time - - db.client.connection.wait_time - - db.client.connection.use_time - # https://github.com/open-telemetry/semantic-conventions/pull/1006 - - rename_metrics: - messaging.publish.messages: messaging.client.published.messages - # https://github.com/open-telemetry/semantic-conventions/pull/1026 - - rename_attributes: - attribute_map: - system.cpu.state: cpu.mode - process.cpu.state: cpu.mode - container.cpu.state: cpu.mode - apply_to_metrics: - - system.cpu.time - - system.cpu.utilization - - process.cpu.time - - process.cpu.utilization - - container.cpu.time - # https://github.com/open-telemetry/semantic-conventions/pull/1265 - - rename_metrics: - jvm.buffer.memory.usage: jvm.buffer.memory.used - 1.26.0: - metrics: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/966 - - rename_metrics: - db.client.connections.usage: db.client.connection.count - db.client.connections.idle.max: db.client.connection.idle.max - db.client.connections.idle.min: db.client.connection.idle.min - db.client.connections.max: db.client.connection.max - db.client.connections.pending_requests: db.client.connection.pending_requests - db.client.connections.timeouts: db.client.connection.timeouts - # https://github.com/open-telemetry/semantic-conventions/pull/948 - - rename_attributes: - attribute_map: - messaging.client_id: messaging.client.id - # https://github.com/open-telemetry/semantic-conventions/pull/909 - - rename_attributes: - attribute_map: - state: db.client.connections.state - apply_to_metrics: - - db.client.connections.usage - - rename_attributes: - attribute_map: - pool.name: db.client.connections.pool.name - apply_to_metrics: - - db.client.connections.usage - - db.client.connections.idle.max - - db.client.connections.idle.min - - db.client.connections.max - - db.client.connections.pending_requests - - db.client.connections.timeouts - - db.client.connections.create_time - - db.client.connections.wait_time - - db.client.connections.use_time - all: - changes: - # https://github:com/open-telemetry/semantic-conventions/pull/731/ - - rename_attributes: - attribute_map: - enduser.id: user.id - - 1.25.0: - spans: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/911 - - rename_attributes: - attribute_map: - db.name: db.namespace - # https://github.com/open-telemetry/semantic-conventions/pull/870 - - rename_attributes: - attribute_map: - db.sql.table: db.collection.name - db.mongodb.collection: db.collection.name - db.cosmosdb.container: db.collection.name - db.cassandra.table: db.collection.name - # https://github.com/open-telemetry/semantic-conventions/pull/798 - - rename_attributes: - attribute_map: - messaging.kafka.destination.partition: messaging.destination.partition.id - # https://github.com/open-telemetry/semantic-conventions/pull/875 - - rename_attributes: - attribute_map: - db.operation: db.operation.name - # https://github.com/open-telemetry/semantic-conventions/pull/913 - - rename_attributes: - attribute_map: - messaging.operation: messaging.operation.type - # https://github.com/open-telemetry/semantic-conventions/pull/866 - - rename_attributes: - attribute_map: - db.statement: db.query.text - metrics: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/484 - - rename_attributes: - attribute_map: - system.processes.status: system.process.status - apply_to_metrics: - - system.processes.count - - rename_metrics: - system.processes.count: system.process.count - system.processes.created: system.process.created - # https://github.com/open-telemetry/semantic-conventions/pull/625 - - rename_attributes: - attribute_map: - container.labels: container.label - k8s.pod.labels: k8s.pod.label - # https://github.com/open-telemetry/semantic-conventions/pull/330 - - rename_metrics: - process.threads: process.thread.count - process.open_file_descriptors: process.open_file_descriptor.count - - rename_attributes: - attribute_map: - state: process.cpu.state - apply_to_metrics: - - process.cpu.time - - process.cpu.utilization - - rename_attributes: - attribute_map: - direction: disk.io.direction - apply_to_metrics: - - process.disk.io - - rename_attributes: - attribute_map: - type: process.context_switch_type - apply_to_metrics: - - process.context_switches - - rename_attributes: - attribute_map: - direction: network.io.direction - apply_to_metrics: - - process.network.io - - rename_attributes: - attribute_map: - type: process.paging.fault_type - apply_to_metrics: - - process.paging.faults - all: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/854 - - rename_attributes: - attribute_map: - message.type: rpc.message.type - message.id: rpc.message.id - message.compressed_size: rpc.message.compressed_size - message.uncompressed_size: rpc.message.uncompressed_size - - 1.24.0: - metrics: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/536 - - rename_metrics: - jvm.memory.usage: jvm.memory.used - jvm.memory.usage_after_last_gc: jvm.memory.used_after_last_gc - # https://github.com/open-telemetry/semantic-conventions/pull/530 - - rename_attributes: - attribute_map: - system.network.io.direction: network.io.direction - system.disk.io.direction: disk.io.direction - 1.23.1: - 1.23.0: - metrics: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/20 - - rename_attributes: - attribute_map: - thread.daemon: jvm.thread.daemon - apply_to_metrics: - - jvm.thread.count - 1.22.0: - spans: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/229 - - rename_attributes: - attribute_map: - messaging.message.payload_size_bytes: messaging.message.body.size - # https://github.com/open-telemetry/opentelemetry-specification/pull/374 - - rename_attributes: - attribute_map: - http.resend_count: http.request.resend_count - metrics: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/224 - - rename_metrics: - http.client.duration: http.client.request.duration - http.server.duration: http.server.request.duration - # https://github.com/open-telemetry/semantic-conventions/pull/241 - - rename_metrics: - process.runtime.jvm.memory.usage: jvm.memory.usage - process.runtime.jvm.memory.committed: jvm.memory.committed - process.runtime.jvm.memory.limit: jvm.memory.limit - process.runtime.jvm.memory.usage_after_last_gc: jvm.memory.usage_after_last_gc - process.runtime.jvm.gc.duration: jvm.gc.duration - # also https://github.com/open-telemetry/semantic-conventions/pull/252 - process.runtime.jvm.threads.count: jvm.thread.count - # also https://github.com/open-telemetry/semantic-conventions/pull/252 - process.runtime.jvm.classes.loaded: jvm.class.loaded - # also https://github.com/open-telemetry/semantic-conventions/pull/252 - process.runtime.jvm.classes.unloaded: jvm.class.unloaded - # also https://github.com/open-telemetry/semantic-conventions/pull/252 - # and https://github.com/open-telemetry/semantic-conventions/pull/60 - process.runtime.jvm.classes.current_loaded: jvm.class.count - process.runtime.jvm.cpu.time: jvm.cpu.time - process.runtime.jvm.cpu.recent_utilization: jvm.cpu.recent_utilization - process.runtime.jvm.memory.init: jvm.memory.init - process.runtime.jvm.system.cpu.utilization: jvm.system.cpu.utilization - process.runtime.jvm.system.cpu.load_1m: jvm.system.cpu.load_1m - # https://github.com/open-telemetry/semantic-conventions/pull/253 - process.runtime.jvm.buffer.usage: jvm.buffer.memory.usage - # https://github.com/open-telemetry/semantic-conventions/pull/253 - process.runtime.jvm.buffer.limit: jvm.buffer.memory.limit - process.runtime.jvm.buffer.count: jvm.buffer.count - # https://github.com/open-telemetry/semantic-conventions/pull/20 - - rename_attributes: - attribute_map: - type: jvm.memory.type - pool: jvm.memory.pool.name - apply_to_metrics: - - jvm.memory.usage - - jvm.memory.committed - - jvm.memory.limit - - jvm.memory.usage_after_last_gc - - jvm.memory.init - - rename_attributes: - attribute_map: - name: jvm.gc.name - action: jvm.gc.action - apply_to_metrics: - - jvm.gc.duration - - rename_attributes: - attribute_map: - daemon: thread.daemon - apply_to_metrics: - - jvm.threads.count - - rename_attributes: - attribute_map: - pool: jvm.buffer.pool.name - apply_to_metrics: - - jvm.buffer.memory.usage - - jvm.buffer.memory.limit - - jvm.buffer.count - # https://github.com/open-telemetry/semantic-conventions/pull/89 - - rename_attributes: - attribute_map: - state: system.cpu.state - cpu: system.cpu.logical_number - apply_to_metrics: - - system.cpu.time - - system.cpu.utilization - - rename_attributes: - attribute_map: - state: system.memory.state - apply_to_metrics: - - system.memory.usage - - system.memory.utilization - - rename_attributes: - attribute_map: - state: system.paging.state - apply_to_metrics: - - system.paging.usage - - system.paging.utilization - - rename_attributes: - attribute_map: - type: system.paging.type - direction: system.paging.direction - apply_to_metrics: - - system.paging.faults - - system.paging.operations - - rename_attributes: - attribute_map: - device: system.device - direction: system.disk.direction - apply_to_metrics: - - system.disk.io - - system.disk.operations - - system.disk.io_time - - system.disk.operation_time - - system.disk.merged - - rename_attributes: - attribute_map: - device: system.device - state: system.filesystem.state - type: system.filesystem.type - mode: system.filesystem.mode - mountpoint: system.filesystem.mountpoint - apply_to_metrics: - - system.filesystem.usage - - system.filesystem.utilization - - rename_attributes: - attribute_map: - device: system.device - direction: system.network.direction - protocol: network.protocol - state: system.network.state - apply_to_metrics: - - system.network.dropped - - system.network.packets - - system.network.errors - - system.network.io - - system.network.connections - - rename_attributes: - attribute_map: - status: system.processes.status - apply_to_metrics: - - system.processes.count - # https://github.com/open-telemetry/semantic-conventions/pull/247 - - rename_metrics: - http.server.request.size: http.server.request.body.size - http.server.response.size: http.server.response.body.size - resources: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/178 - - rename_attributes: - attribute_map: - telemetry.auto.version: telemetry.distro.version - 1.21.0: - spans: - changes: - # https://github.com/open-telemetry/opentelemetry-specification/pull/3336 - - rename_attributes: - attribute_map: - messaging.kafka.client_id: messaging.client_id - messaging.rocketmq.client_id: messaging.client_id - # https://github.com/open-telemetry/opentelemetry-specification/pull/3402 - - rename_attributes: - attribute_map: - # net.peer.(name|port) attributes were usually populated on client side - # so they should be usually translated to server.(address|port) - # net.host.* attributes were only populated on server side - net.host.name: server.address - net.host.port: server.port - # was only populated on client side - net.sock.peer.name: server.socket.domain - # net.sock.peer.(addr|port) mapping is not possible - # since they applied to both client and server side - # were only populated on server side - net.sock.host.addr: server.socket.address - net.sock.host.port: server.socket.port - http.client_ip: client.address - # https://github.com/open-telemetry/opentelemetry-specification/pull/3426 - - rename_attributes: - attribute_map: - net.protocol.name: network.protocol.name - net.protocol.version: network.protocol.version - net.host.connection.type: network.connection.type - net.host.connection.subtype: network.connection.subtype - net.host.carrier.name: network.carrier.name - net.host.carrier.mcc: network.carrier.mcc - net.host.carrier.mnc: network.carrier.mnc - net.host.carrier.icc: network.carrier.icc - # https://github.com/open-telemetry/opentelemetry-specification/pull/3355 - - rename_attributes: - attribute_map: - http.method: http.request.method - http.status_code: http.response.status_code - http.scheme: url.scheme - http.url: url.full - http.request_content_length: http.request.body.size - http.response_content_length: http.response.body.size - metrics: - changes: - # https://github.com/open-telemetry/semantic-conventions/pull/53 - - rename_metrics: - process.runtime.jvm.cpu.utilization: process.runtime.jvm.cpu.recent_utilization - 1.20.0: - spans: - changes: - # https://github.com/open-telemetry/opentelemetry-specification/pull/3272 - - rename_attributes: - attribute_map: - net.app.protocol.name: net.protocol.name - net.app.protocol.version: net.protocol.version - 1.19.0: - spans: - changes: - # https://github.com/open-telemetry/opentelemetry-specification/pull/3209 - - rename_attributes: - attribute_map: - faas.execution: faas.invocation_id - # https://github.com/open-telemetry/opentelemetry-specification/pull/3188 - - rename_attributes: - attribute_map: - faas.id: cloud.resource_id - # https://github.com/open-telemetry/opentelemetry-specification/pull/3190 - - rename_attributes: - attribute_map: - http.user_agent: user_agent.original - resources: - changes: - # https://github.com/open-telemetry/opentelemetry-specification/pull/3190 - - rename_attributes: - attribute_map: - browser.user_agent: user_agent.original - 1.18.0: - 1.17.0: - spans: - changes: - # https://github.com/open-telemetry/opentelemetry-specification/pull/2957 - - rename_attributes: - attribute_map: - messaging.consumer_id: messaging.consumer.id - messaging.protocol: net.app.protocol.name - messaging.protocol_version: net.app.protocol.version - messaging.destination: messaging.destination.name - messaging.temp_destination: messaging.destination.temporary - messaging.destination_kind: messaging.destination.kind - messaging.message_id: messaging.message.id - messaging.conversation_id: messaging.message.conversation_id - messaging.message_payload_size_bytes: messaging.message.payload_size_bytes - messaging.message_payload_compressed_size_bytes: messaging.message.payload_compressed_size_bytes - messaging.rabbitmq.routing_key: messaging.rabbitmq.destination.routing_key - messaging.kafka.message_key: messaging.kafka.message.key - messaging.kafka.partition: messaging.kafka.destination.partition - messaging.kafka.tombstone: messaging.kafka.message.tombstone - messaging.rocketmq.message_type: messaging.rocketmq.message.type - messaging.rocketmq.message_tag: messaging.rocketmq.message.tag - messaging.rocketmq.message_keys: messaging.rocketmq.message.keys - messaging.kafka.consumer_group: messaging.kafka.consumer.group - 1.16.0: - 1.15.0: - spans: - changes: - # https://github.com/open-telemetry/opentelemetry-specification/pull/2743 - - rename_attributes: - attribute_map: - http.retry_count: http.resend_count - 1.14.0: - 1.13.0: - spans: - changes: - # https://github.com/open-telemetry/opentelemetry-specification/pull/2614 - - rename_attributes: - attribute_map: - net.peer.ip: net.sock.peer.addr - net.host.ip: net.sock.host.addr - 1.12.0: - 1.11.0: - 1.10.0: - 1.9.0: - 1.8.0: - spans: - changes: - - rename_attributes: - attribute_map: - db.cassandra.keyspace: db.name - db.hbase.namespace: db.name - 1.7.0: - 1.6.1: - 1.5.0: - 1.4.0: