diff --git a/.chloggen/1112.yaml b/.chloggen/1112.yaml new file mode 100644 index 0000000000..454aa19d76 --- /dev/null +++ b/.chloggen/1112.yaml @@ -0,0 +1,4 @@ +change_type: enhancement +component: messaging +note: Define span kind for unspecified cases of messaging `publish` and `process` spans. +issues: [1112] diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 9be2aef1a2..140af28811 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -16,85 +16,74 @@ * @open-telemetry/specs-semconv-maintainers @open-telemetry/specs-semconv-approvers # Schemas and schema file tooling -/schemas/ @open-telemetry/specs-semconv-approvers @tigrannajaryan -/internal/tools/schema_check.sh @open-telemetry/specs-semconv-approvers @tigrannajaryan +/schemas/ @open-telemetry/specs-semconv-approvers @tigrannajaryan +/internal/tools/schema_check.sh @open-telemetry/specs-semconv-approvers @tigrannajaryan -# Logs semantic conventions -/model/logs/ @open-telemetry/specs-semconv-approvers @tigrannajaryan +# Logs and events semantic conventions /docs/exceptions/exceptions-logs.md @open-telemetry/specs-semconv-approvers @tigrannajaryan /docs/feature-flags/feature-flags-logs.md @open-telemetry/specs-semconv-approvers @tigrannajaryan /docs/general/events-general.md @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-event-approvers @tigrannajaryan /docs/general/logs-general.md @open-telemetry/specs-semconv-approvers @tigrannajaryan /docs/logs/ @open-telemetry/specs-semconv-approvers @tigrannajaryan +/model/log/ @open-telemetry/specs-semconv-approvers @tigrannajaryan +/model/event/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-event-approvers -# JVM semantic conventions approvers -/model/metrics/jvm-* @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-jvm-approvers -/docs/jvm/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-jvm-approvers +# JVM semantic conventions +/docs/jvm/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-jvm-approvers +/model/jvm/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-jvm-approvers -# HTTP semantic conventions approvers -/model/metrics/http.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers -/model/trace/http.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers -/model/registry/http.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers -/model/registry/server.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers -/model/registry/client.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers -/model/registry/network.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers @open-telemetry/semconv-security-approvers -/model/registry/error.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers -/model/registry/url.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers -/model/registry/user-agent.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers -/docs/http/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers +# HTTP semantic conventions +/docs/http/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers +/model/http/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers +/model/error/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers +/model/client/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers +/model/network/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers @open-telemetry/semconv-security-approvers +/model/server/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers +/model/url/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers +/model/user-agent/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-http-approvers -# System semantic conventions approvers -/docs/system/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-system-approvers -/model/metrics/system-* @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-system-approvers -/docs/resource/host.md @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-system-approvers -/model/resource/host.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-system-approvers +# System semantic conventions +/docs/system/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-system-approvers +/docs/resource/host.md @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-system-approvers +/model/host/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-system-approvers +/model/system/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-system-approvers -# Mobile semantic conventions approvers -/docs/mobile/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-mobile-approvers -/model/logs/mobile* @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-mobile-approvers +# Mobile semantic conventions +/docs/mobile/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-mobile-approvers +/model/device/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-mobile-approvers -# K8s semantic conventions approvers -/docs/resource/k8s.md @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-k8s-approvers -/model/resource/k8s.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-k8s-approvers -/model/registry/k8s.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-k8s-approvers +# K8s semantic conventions +/docs/resource/k8s.md @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-k8s-approvers +/model/k8s/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-k8s-approvers -# Container semantic conventions approvers -/docs/resource/container.md @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-container-approvers -/model/resource/container.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-container-approvers -/model/registry/container.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-container-approvers -/model/registry/oci.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-container-approvers +# Container semantic conventions +/docs/resource/container.md @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-container-approvers +/model/container/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-container-approvers +/model/oci/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-container-approvers -# .NET semantic conventions approvers -/model/metrics/dotnet/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-dotnet-approver @open-telemetry/semconv-http-approvers -/model/registry/aspnetcore.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-dotnet-approver @open-telemetry/semconv-http-approvers -/model/registry/signalr.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-dotnet-approver @open-telemetry/semconv-http-approvers -/docs/dotnet/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-dotnet-approver @open-telemetry/semconv-http-approvers -/model/metrics/dotnet-metrics.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-dotnet-approver -/model/registry/dotnet.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-dotnet-approver -/docs/runtime/dotnet-metrics.md @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-dotnet-approver +# .NET semantic conventions +/docs/dotnet/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-dotnet-approver @open-telemetry/semconv-http-approvers +/docs/runtime/dotnet-metrics.md @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-dotnet-approver +/model/aspnetcore/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-dotnet-approver @open-telemetry/semconv-http-approvers +/model/dotnet/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-dotnet-approver @open-telemetry/semconv-http-approvers +/model/signalr/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-dotnet-approver @open-telemetry/semconv-http-approvers -# Gen-AI semantic conventions approvers -/model/registry/gen-ai.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-llm-approvers -/model/metrics/gen-ai.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-llm-approvers -/model/trace/gen-ai.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-llm-approvers -/docs/gen-ai/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-llm-approvers +# Gen-AI semantic conventions +/docs/gen-ai/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-llm-approvers +/model/gen-ai/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-llm-approvers -# Security semantic conventions approvers -/model/registry/file.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-security-approvers -/model/registry/dns.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-security-approvers -/model/registry/process.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-security-approvers -/model/registry/tls.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-security-approvers -/model/registry/user.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-security-approvers +# Security semantic conventions +/model/dns/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-security-approvers +/model/file/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-security-approvers +# /model/network/ is defined in HTTP section +/model/process/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-security-approvers +/model/tls/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-security-approvers +/model/user/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-security-approvers -/model/metrics/dns.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-security-approvers -/model/metrics/process-metrics.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-security-approvers -/model/resource/process.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-security-approvers -/model/network.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-security-approvers - -# CICD semantic conventions approvers -/model/registry/artifact.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-cicd-approvers -/model/registry/cicd.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-cicd-approvers -/model/registry/code.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-cicd-approvers -/model/registry/deployment.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-cicd-approvers -/model/registry/test.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-cicd-approvers -/model/registry/vcs.yaml @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-cicd-approvers +# CICD semantic conventions +/model/artifact/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-cicd-approvers +/model/cicd/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-cicd-approvers +/model/code/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-cicd-approvers +/model/deployment/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-cicd-approvers +/model/test/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-cicd-approvers +/model/vcs/ @open-telemetry/specs-semconv-approvers @open-telemetry/semconv-cicd-approvers diff --git a/.github/ISSUE_TEMPLATE/bug_report.yaml b/.github/ISSUE_TEMPLATE/bug_report.yaml index 4fb558fba2..d0efd84320 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yaml +++ b/.github/ISSUE_TEMPLATE/bug_report.yaml @@ -28,8 +28,8 @@ body: - area:browser - area:cicd - area:client - - area:cloudevents - area:cloud + - area:cloudevents - area:code - area:container - area:cpu @@ -80,8 +80,8 @@ body: - area:thread - area:tls - area:url - - area:user-agent - area:user + - area:user-agent - area:v8js - area:vcs - area:webengine diff --git a/.github/ISSUE_TEMPLATE/change_proposal.yaml b/.github/ISSUE_TEMPLATE/change_proposal.yaml index 9c7d3646ed..206cc1c715 100644 --- a/.github/ISSUE_TEMPLATE/change_proposal.yaml +++ b/.github/ISSUE_TEMPLATE/change_proposal.yaml @@ -20,8 +20,8 @@ body: - area:browser - area:cicd - area:client - - area:cloudevents - area:cloud + - area:cloudevents - area:code - area:container - area:cpu @@ -72,8 +72,8 @@ body: - area:thread - area:tls - area:url - - area:user-agent - area:user + - area:user-agent - area:v8js - area:vcs - area:webengine diff --git a/.github/ISSUE_TEMPLATE/new-conventions.yaml b/.github/ISSUE_TEMPLATE/new-conventions.yaml index f0d28f0055..1c9cfe8ef9 100644 --- a/.github/ISSUE_TEMPLATE/new-conventions.yaml +++ b/.github/ISSUE_TEMPLATE/new-conventions.yaml @@ -29,8 +29,8 @@ body: - area:browser - area:cicd - area:client - - area:cloudevents - area:cloud + - area:cloudevents - area:code - area:container - area:cpu @@ -81,8 +81,8 @@ body: - area:thread - area:tls - area:url - - area:user-agent - area:user + - area:user-agent - area:v8js - area:vcs - area:webengine diff --git a/.github/workflows/generate-registry-area-labels.yml b/.github/workflows/generate-registry-area-labels.yml index 58f3b62b3a..1b8ea3a59d 100644 --- a/.github/workflows/generate-registry-area-labels.yml +++ b/.github/workflows/generate-registry-area-labels.yml @@ -3,9 +3,10 @@ on: push: branches: [main] paths: - - model/registry/** + - model/** - ./.github/workflows/generate-registry-area-labels.yml - ./.github/workflows/scripts/generate-registry-area-labels.sh + workflow_dispatch: jobs: @@ -14,6 +15,9 @@ jobs: if: ${{ github.repository_owner == 'open-telemetry' }} steps: - uses: actions/checkout@v4 + - name: Generate registry area labels + run: | + make generate-gh-issue-templates - name: Run update permissions run: chmod +x ./.github/workflows/scripts/generate-registry-area-labels.sh diff --git a/.github/workflows/scripts/generate-registry-area-labels.sh b/.github/workflows/scripts/generate-registry-area-labels.sh old mode 100755 new mode 100644 index 3a2af777e6..63621a04dd --- a/.github/workflows/scripts/generate-registry-area-labels.sh +++ b/.github/workflows/scripts/generate-registry-area-labels.sh @@ -12,21 +12,19 @@ set -euo pipefail CUR_DIRECTORY=$(dirname "$0") -AREAS=$(sh "${CUR_DIRECTORY}/get-registry-areas.sh") +AREAS=$1 echo -e "\nStarting to create area labels" echo -e "--------------------------------\n" -for AREA in ${AREAS}; do - LABEL_NAME=$(basename "${AREA}" .yaml) - - if (( "${#LABEL_NAME}" > 50 )); then - echo "'${LABEL_NAME}' exceeds GitHubs 50-character limit on labels, skipping" +while IFS= read -r label; do + if (( "${#label}" > 50 )); then + echo -e "Label $label exceeds GitHubs 50-character limit on labels, skipping" continue fi - echo "area:${LABEL_NAME}" - gh label create "area:${LABEL_NAME}" -c "#425cc7" --force -done + echo "$label" + gh label create "$label" -c "#425cc7" --force +done < ${AREAS} echo -e "\nLabels created successfully" echo -e "--------------------------------\n" diff --git a/.github/workflows/scripts/get-registry-areas.sh b/.github/workflows/scripts/get-registry-areas.sh deleted file mode 100755 index b33c9b3c60..0000000000 --- a/.github/workflows/scripts/get-registry-areas.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/usr/bin/env bash -# -# Copyright The OpenTelemetry Authors -# SPDX-License-Identifier: Apache-2.0 -# -# Get a list of the semantic conventions areas from the registry. - -CUR_DIRECTORY=$(dirname "$0") -REPO_DIR="$( cd "$CUR_DIRECTORY/../../../" && pwd )" -REGISTRY_DIR="$( cd "$REPO_DIR/model/registry" && pwd )" - -# Explicitly sort with `-d` (dictionary) so BSD and GNU work alike. -for entry in $(ls $REGISTRY_DIR | egrep '\.yaml$' | sort -d) -do - echo "$entry" -done diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 7a3637ee9a..cbdf29dc75 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -15,6 +15,7 @@ requirements and recommendations. - [How to Contribute](#how-to-contribute) - [Prerequisites](#prerequisites) - [1. Modify the YAML model](#1-modify-the-yaml-model) + - [Code structure](#code-structure) - [Schema files](#schema-files) - [2. Update the markdown files](#2-update-the-markdown-files) - [Hugo frontmatter](#hugo-frontmatter) @@ -93,6 +94,38 @@ Refer to the [Semantic Convention YAML Language](https://github.com/open-telemetry/build-tools/blob/v0.25.0/semantic-conventions/syntax.md) to learn how to make changes to the YAML files. +#### Code structure + +The YAML (model definition) and Markdown (documentation) files are organized in the following way: + +``` +├── docs +│ ├── attribute_registry +│ ├── {root-namespace} +│ │ ├── README.md +│ │ ├── ....md +├── model +│ ├── {root-namespace} +│ │ ├── events.yaml +│ │ ├── metrics.yaml +│ │ ├── registry.yaml +│ │ ├── resources.yaml +│ │ ├── spans.yaml +``` + +All attributes must be defined in the folder matching their root namespace under +`/{root-namespace}/*registry.yaml` file. + +Corresponding markdown files are auto-generated (see [Update the markdown files](#2-update-the-markdown-files)) +in `/docs/attribute_registry` folder. + +All semantic conventions definitions for telemetry signals should be placed under +`/model/{root-namespace}` and should follow `*{signal}.yaml` pattern. For example, +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) diff --git a/Makefile b/Makefile index 603c9b43ae..3f9eba31c4 100644 --- a/Makefile +++ b/Makefile @@ -210,7 +210,19 @@ chlog-update: $(CHLOGGEN) # files that have the "area" dropdown field .PHONY: generate-gh-issue-templates generate-gh-issue-templates: - $(TOOLS_DIR)/scripts/update-issue-template-areas.sh + mkdir -p $(TOOLS_DIR)/bin + docker run --rm \ + -u $(id -u ${USER}):$(id -g ${USER}) \ + --mount 'type=bind,source=$(PWD)/internal/tools/scripts,target=/home/weaver/templates,readonly' \ + --mount 'type=bind,source=$(PWD)/model,target=/home/weaver/source,readonly' \ + --mount 'type=bind,source=$(TOOLS_DIR)/bin,target=/home/weaver/target' \ + $(WEAVER_CONTAINER) registry generate \ + --registry=/home/weaver/source \ + --templates=/home/weaver/templates \ + --config=/home/weaver/templates/registry/areas-weaver.yaml \ + . \ + /home/weaver/target + $(TOOLS_DIR)/scripts/update-issue-template-areas.sh $(PWD)/internal/tools/bin/areas.txt # A previous iteration of calculating "LATEST_RELEASED_SEMCONV_VERSION" # relied on "git describe". However, that approach does not work with diff --git a/docs/azure/events.md b/docs/azure/events.md index dd3a6cd53c..b832dc4371 100644 --- a/docs/azure/events.md +++ b/docs/azure/events.md @@ -52,6 +52,6 @@ The event name MUST be `az.resource.log`. | `tenant.id` | string | The tenant ID of the Active Directory tenant that this event is tied to. | `607964b6-41a5-4e24-a5db-db7aab3b9b34` | `Conditionally Required`: if the event is tied to an Active Directory tenant. | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -See [Azure Resource Log definition](/model/logs/azure.yaml) for the details. +See [Azure Resource Log definition](/model/azure/logs.yaml) for the details. [DocumentStatus]: https://opentelemetry.io/docs/specs/otel/document-status diff --git a/docs/messaging/messaging-spans.md b/docs/messaging/messaging-spans.md index 7f5b431983..9e3c32abcd 100644 --- a/docs/messaging/messaging-spans.md +++ b/docs/messaging/messaging-spans.md @@ -208,21 +208,13 @@ Span kind SHOULD be set according to the following table, based on the operation | Operation type | Span kind| |----------------|-------------| -| `create` | `PRODUCER` | -| `publish` | `PRODUCER` if the context of the "Publish" span is used as creation context. | -| `receive` | `CONSUMER` | -| `process` | `CONSUMER` for push-based scenarios where no "Receive" span exists. | - -For cases not covered by the table above, the span kind should be set according -to the [generic specification about span kinds](https://github.com/open-telemetry/opentelemetry-specification/tree/v1.35.0/specification/trace/api.md#spankind), -e. g. it should be set to CLIENT for the "Publish" span if its context is not -used as creation context and if the "Publish" span models a synchronous call to -the intermediary. - -Setting span kinds according to this table ensures that span links between -consumers and producers always exist between a PRODUCER span on the producer -side and a CONSUMER span on the consumer side. This allows analysis tools to -interpret linked traces without the need for additional semantic hints. +| `create` | `PRODUCER` | +| `publish` | `PRODUCER` if the context of the "Publish" span is used as creation context, otherwise `CLIENT`. | +| `receive` | `CLIENT` | +| `process` | `CONSUMER` | + +Setting span kinds according to this table allows analysis tools to interpret spans +and relationships between them without the need for additional semantic hints. ### Trace structure diff --git a/internal/tools/scripts/registry/areas-weaver.yaml b/internal/tools/scripts/registry/areas-weaver.yaml new file mode 100644 index 0000000000..074629a1cf --- /dev/null +++ b/internal/tools/scripts/registry/areas-weaver.yaml @@ -0,0 +1,13 @@ +templates: + - pattern: areas.md.j2 + filter: > + semconv_grouped_attributes({"exclude_deprecated": true}) | .[].root_namespace + application_mode: single +whitespace_control: + trim_blocks: true + lstrip_blocks: true + keep_trailing_newline: true +text_maps: + areas: + az: azure + hw: hardware diff --git a/internal/tools/scripts/registry/areas.md.j2 b/internal/tools/scripts/registry/areas.md.j2 new file mode 100644 index 0000000000..f10bdea506 --- /dev/null +++ b/internal/tools/scripts/registry/areas.md.j2 @@ -0,0 +1,5 @@ +{{- template.set_file_name("areas.txt") -}} + +{% for item in ctx | map('map_text', 'areas') | sort %} +area:{{ item | kebab_case }} +{% endfor %} \ No newline at end of file diff --git a/internal/tools/scripts/update-issue-template-areas.sh b/internal/tools/scripts/update-issue-template-areas.sh index e905808a18..3b906dfc55 100755 --- a/internal/tools/scripts/update-issue-template-areas.sh +++ b/internal/tools/scripts/update-issue-template-areas.sh @@ -24,17 +24,16 @@ REPO_DIR="$( cd "$CUR_DIRECTORY/../../../" && pwd )" GITHUB_DIR="$( cd "$REPO_DIR/.github/" && pwd )" TEMPLATES_DIR="$( cd "$GITHUB_DIR/ISSUE_TEMPLATE" && pwd )" -AREAS=$(sh "${GITHUB_DIR}/workflows/scripts/get-registry-areas.sh") +AREAS=$1 START_AREA_LIST="# Start semconv area list" END_AREA_LIST="# End semconv area list" replacement=" ${START_AREA_LIST}" -for AREA in ${AREAS}; do - LABEL_NAME=$(basename "${AREA}" .yaml) - replacement="${replacement}\n - area:${LABEL_NAME}" -done +while IFS= read -r line; do + replacement="${replacement}\n - $line" +done < ${AREAS} echo -e "\nStarting to replace areas in ISSUE_TEMPLATES:" echo -e "---------------------------------------------\n" diff --git a/model/registry/deprecated/android.yaml b/model/andrioid/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/android.yaml rename to model/andrioid/deprecated/registry-deprecated.yaml diff --git a/model/registry/android.yaml b/model/andrioid/registry.yaml similarity index 100% rename from model/registry/android.yaml rename to model/andrioid/registry.yaml diff --git a/model/resource/android.yaml b/model/andrioid/resources.yaml similarity index 100% rename from model/resource/android.yaml rename to model/andrioid/resources.yaml diff --git a/model/registry/artifact.yaml b/model/artifact/registry.yaml similarity index 100% rename from model/registry/artifact.yaml rename to model/artifact/registry.yaml diff --git a/model/metrics/dotnet/dotnet-aspnetcore.yaml b/model/aspnetcore/metrics.yaml similarity index 100% rename from model/metrics/dotnet/dotnet-aspnetcore.yaml rename to model/aspnetcore/metrics.yaml diff --git a/model/registry/aspnetcore.yaml b/model/aspnetcore/registry.yaml similarity index 100% rename from model/registry/aspnetcore.yaml rename to model/aspnetcore/registry.yaml diff --git a/model/resource/cloud_provider/aws/ecs.yaml b/model/aws/ecs-resources.yaml similarity index 100% rename from model/resource/cloud_provider/aws/ecs.yaml rename to model/aws/ecs-resources.yaml diff --git a/model/resource/cloud_provider/aws/eks.yaml b/model/aws/eks-resources.yaml similarity index 100% rename from model/resource/cloud_provider/aws/eks.yaml rename to model/aws/eks-resources.yaml diff --git a/model/trace/aws/lambda.yaml b/model/aws/lambda-spans.yaml similarity index 100% rename from model/trace/aws/lambda.yaml rename to model/aws/lambda-spans.yaml diff --git a/model/resource/cloud_provider/aws/logs.yaml b/model/aws/logs-resources.yaml similarity index 100% rename from model/resource/cloud_provider/aws/logs.yaml rename to model/aws/logs-resources.yaml diff --git a/model/registry/aws.yaml b/model/aws/registry.yaml similarity index 100% rename from model/registry/aws.yaml rename to model/aws/registry.yaml diff --git a/model/trace/instrumentation/aws-sdk.yml b/model/aws/sdk-spans.yml similarity index 100% rename from model/trace/instrumentation/aws-sdk.yml rename to model/aws/sdk-spans.yml diff --git a/model/logs/azure.yaml b/model/azure/logs.yaml similarity index 100% rename from model/logs/azure.yaml rename to model/azure/logs.yaml diff --git a/model/registry/azure.yaml b/model/azure/registry.yaml similarity index 100% rename from model/registry/azure.yaml rename to model/azure/registry.yaml diff --git a/model/registry/browser.yaml b/model/browser/registry.yaml similarity index 100% rename from model/registry/browser.yaml rename to model/browser/registry.yaml diff --git a/model/resource/browser.yaml b/model/browser/resources.yaml similarity index 100% rename from model/resource/browser.yaml rename to model/browser/resources.yaml diff --git a/model/registry/cicd.yaml b/model/cicd/registry.yaml similarity index 100% rename from model/registry/cicd.yaml rename to model/cicd/registry.yaml diff --git a/model/client/common.yaml b/model/client/common.yaml new file mode 100644 index 0000000000..02ef815ede --- /dev/null +++ b/model/client/common.yaml @@ -0,0 +1,8 @@ +groups: + - id: client + type: attribute_group + brief: > + General client attributes. + attributes: + - ref: client.address + - ref: client.port diff --git a/model/registry/client.yaml b/model/client/registry.yaml similarity index 100% rename from model/registry/client.yaml rename to model/client/registry.yaml diff --git a/model/registry/cloud.yaml b/model/cloud/registry.yaml similarity index 100% rename from model/registry/cloud.yaml rename to model/cloud/registry.yaml diff --git a/model/resource/cloud.yaml b/model/cloud/resources.yaml similarity index 100% rename from model/resource/cloud.yaml rename to model/cloud/resources.yaml diff --git a/model/registry/cloudevents.yaml b/model/cloudevents/registry.yaml similarity index 100% rename from model/registry/cloudevents.yaml rename to model/cloudevents/registry.yaml diff --git a/model/trace/cloudevents.yaml b/model/cloudevents/spans.yaml similarity index 100% rename from model/trace/cloudevents.yaml rename to model/cloudevents/spans.yaml diff --git a/model/code/common.yaml b/model/code/common.yaml new file mode 100644 index 0000000000..b90efeec96 --- /dev/null +++ b/model/code/common.yaml @@ -0,0 +1,13 @@ +groups: + - id: code + type: attribute_group + brief: > + These attributes allow to report this unit of code and therefore to provide more context about the span. + attributes: + - ref: code.function + - ref: code.namespace + - ref: code.filepath + - ref: code.lineno + - ref: code.column + - ref: code.stacktrace + requirement_level: opt_in diff --git a/model/registry/code.yaml b/model/code/registry.yaml similarity index 100% rename from model/registry/code.yaml rename to model/code/registry.yaml diff --git a/model/registry/deprecated/container.yaml b/model/container/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/container.yaml rename to model/container/deprecated/registry-deprecated.yaml diff --git a/model/metrics/container.yaml b/model/container/metrics.yaml similarity index 100% rename from model/metrics/container.yaml rename to model/container/metrics.yaml diff --git a/model/registry/container.yaml b/model/container/registry.yaml similarity index 100% rename from model/registry/container.yaml rename to model/container/registry.yaml diff --git a/model/resource/container.yaml b/model/container/resources.yaml similarity index 100% rename from model/resource/container.yaml rename to model/container/resources.yaml diff --git a/model/registry/cpu.yaml b/model/cpu/registry.yaml similarity index 100% rename from model/registry/cpu.yaml rename to model/cpu/registry.yaml diff --git a/model/db-common.yaml b/model/database/common.yaml similarity index 100% rename from model/db-common.yaml rename to model/database/common.yaml diff --git a/model/metrics/deprecated/database.yaml b/model/database/deprecated/metrics-deprecated.yaml similarity index 100% rename from model/metrics/deprecated/database.yaml rename to model/database/deprecated/metrics-deprecated.yaml diff --git a/model/registry/deprecated/db.yaml b/model/database/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/db.yaml rename to model/database/deprecated/registry-deprecated.yaml diff --git a/model/metrics/database-metrics.yaml b/model/database/metrics.yaml similarity index 100% rename from model/metrics/database-metrics.yaml rename to model/database/metrics.yaml diff --git a/model/registry/db.yaml b/model/database/registry.yaml similarity index 100% rename from model/registry/db.yaml rename to model/database/registry.yaml diff --git a/model/trace/database.yaml b/model/database/spans.yaml similarity index 100% rename from model/trace/database.yaml rename to model/database/spans.yaml diff --git a/model/registry/deprecated/deployment.yaml b/model/deployment/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/deployment.yaml rename to model/deployment/deprecated/registry-deprecated.yaml diff --git a/model/registry/deployment.yaml b/model/deployment/registry.yaml similarity index 100% rename from model/registry/deployment.yaml rename to model/deployment/registry.yaml diff --git a/model/resource/deployment_environment.yaml b/model/deployment/resources.yaml similarity index 100% rename from model/resource/deployment_environment.yaml rename to model/deployment/resources.yaml diff --git a/model/destination/common.yaml b/model/destination/common.yaml new file mode 100644 index 0000000000..e45dd4e365 --- /dev/null +++ b/model/destination/common.yaml @@ -0,0 +1,8 @@ +groups: + - id: destination + type: attribute_group + brief: > + General destination attributes. + attributes: + - ref: destination.address + - ref: destination.port diff --git a/model/registry/destination.yaml b/model/destination/registry.yaml similarity index 100% rename from model/registry/destination.yaml rename to model/destination/registry.yaml diff --git a/model/logs/mobile-events.yaml b/model/device/events.yaml similarity index 100% rename from model/logs/mobile-events.yaml rename to model/device/events.yaml diff --git a/model/registry/device.yaml b/model/device/registry.yaml similarity index 100% rename from model/registry/device.yaml rename to model/device/registry.yaml diff --git a/model/resource/device.yaml b/model/device/resources.yaml similarity index 100% rename from model/resource/device.yaml rename to model/device/resources.yaml diff --git a/model/registry/disk.yaml b/model/disk/registry.yaml similarity index 100% rename from model/registry/disk.yaml rename to model/disk/registry.yaml diff --git a/model/metrics/dns.yaml b/model/dns/metrics.yaml similarity index 100% rename from model/metrics/dns.yaml rename to model/dns/metrics.yaml diff --git a/model/registry/dns.yaml b/model/dns/registry.yaml similarity index 100% rename from model/registry/dns.yaml rename to model/dns/registry.yaml diff --git a/model/registry/dotnet.yaml b/model/dotnet/registry.yaml similarity index 100% rename from model/registry/dotnet.yaml rename to model/dotnet/registry.yaml diff --git a/model/metrics/dotnet-metrics.yaml b/model/dotnet/runtime-metrics.yaml similarity index 100% rename from model/metrics/dotnet-metrics.yaml rename to model/dotnet/runtime-metrics.yaml diff --git a/model/enduser/deprecated/common.yaml b/model/enduser/deprecated/common.yaml new file mode 100644 index 0000000000..e17dde1bec --- /dev/null +++ b/model/enduser/deprecated/common.yaml @@ -0,0 +1,12 @@ +groups: + - id: identity + type: attribute_group + brief: > + These attributes may be used for any operation with an authenticated and/or authorized enduser. + attributes: + - ref: enduser.id + requirement_level: recommended + - ref: enduser.role + requirement_level: recommended + - ref: enduser.scope + requirement_level: recommended diff --git a/model/registry/deprecated/enduser.yaml b/model/enduser/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/enduser.yaml rename to model/enduser/deprecated/registry-deprecated.yaml diff --git a/model/registry/error.yaml b/model/error/registry.yaml similarity index 100% rename from model/registry/error.yaml rename to model/error/registry.yaml diff --git a/model/logs/events.yaml b/model/event/common.yaml similarity index 100% rename from model/logs/events.yaml rename to model/event/common.yaml diff --git a/model/registry/event.yaml b/model/event/registry.yaml similarity index 100% rename from model/registry/event.yaml rename to model/event/registry.yaml diff --git a/model/trace/trace-exception.yaml b/model/exceptions/events.yaml similarity index 100% rename from model/trace/trace-exception.yaml rename to model/exceptions/events.yaml diff --git a/model/logs/log-exception.yaml b/model/exceptions/logs.yaml similarity index 100% rename from model/logs/log-exception.yaml rename to model/exceptions/logs.yaml diff --git a/model/registry/exception.yaml b/model/exceptions/registry.yaml similarity index 100% rename from model/registry/exception.yaml rename to model/exceptions/registry.yaml diff --git a/model/faas-common.yaml b/model/faas/common.yaml similarity index 100% rename from model/faas-common.yaml rename to model/faas/common.yaml diff --git a/model/metrics/faas-metrics.yaml b/model/faas/metrics.yaml similarity index 100% rename from model/metrics/faas-metrics.yaml rename to model/faas/metrics.yaml diff --git a/model/registry/faas.yaml b/model/faas/registry.yaml similarity index 100% rename from model/registry/faas.yaml rename to model/faas/registry.yaml diff --git a/model/resource/faas.yaml b/model/faas/resources.yaml similarity index 100% rename from model/resource/faas.yaml rename to model/faas/resources.yaml diff --git a/model/trace/faas.yaml b/model/faas/spans.yaml similarity index 100% rename from model/trace/faas.yaml rename to model/faas/spans.yaml diff --git a/model/trace/feature-flag.yaml b/model/feature-flag/events.yaml similarity index 100% rename from model/trace/feature-flag.yaml rename to model/feature-flag/events.yaml diff --git a/model/logs/log-feature_flag.yaml b/model/feature-flag/logs.yaml similarity index 100% rename from model/logs/log-feature_flag.yaml rename to model/feature-flag/logs.yaml diff --git a/model/registry/feature-flag.yaml b/model/feature-flag/registry.yaml similarity index 100% rename from model/registry/feature-flag.yaml rename to model/feature-flag/registry.yaml diff --git a/model/registry/file.yaml b/model/file/registry.yaml similarity index 100% rename from model/registry/file.yaml rename to model/file/registry.yaml diff --git a/model/resource/cloud_provider/gcp/cloud_run.yaml b/model/gcp/cloud-run-resources.yaml similarity index 100% rename from model/resource/cloud_provider/gcp/cloud_run.yaml rename to model/gcp/cloud-run-resources.yaml diff --git a/model/trace/instrumentation/gcp-client.yml b/model/gcp/common.yml similarity index 100% rename from model/trace/instrumentation/gcp-client.yml rename to model/gcp/common.yml diff --git a/model/resource/cloud_provider/gcp/gce.yaml b/model/gcp/gce-resources.yaml similarity index 100% rename from model/resource/cloud_provider/gcp/gce.yaml rename to model/gcp/gce-resources.yaml diff --git a/model/registry/gcp.yaml b/model/gcp/registry.yaml similarity index 100% rename from model/registry/gcp.yaml rename to model/gcp/registry.yaml diff --git a/model/registry/deprecated/gen-ai.yaml b/model/gen-ai/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/gen-ai.yaml rename to model/gen-ai/deprecated/registry-deprecated.yaml diff --git a/model/metrics/gen-ai.yaml b/model/gen-ai/metrics.yaml similarity index 100% rename from model/metrics/gen-ai.yaml rename to model/gen-ai/metrics.yaml diff --git a/model/registry/gen-ai.yaml b/model/gen-ai/registry.yaml similarity index 100% rename from model/registry/gen-ai.yaml rename to model/gen-ai/registry.yaml diff --git a/model/trace/gen-ai.yaml b/model/gen-ai/spans.yaml similarity index 100% rename from model/trace/gen-ai.yaml rename to model/gen-ai/spans.yaml diff --git a/model/general.yaml b/model/general.yaml deleted file mode 100644 index 85377316e1..0000000000 --- a/model/general.yaml +++ /dev/null @@ -1,65 +0,0 @@ -groups: - - id: client - type: attribute_group - brief: > - General client attributes. - attributes: - - ref: client.address - - ref: client.port - - id: server - type: attribute_group - brief: > - General server attributes. - attributes: - - ref: server.address - - ref: server.port - - id: source - type: attribute_group - brief: > - General source attributes. - attributes: - - ref: source.address - - ref: source.port - - id: destination - type: attribute_group - brief: > - General destination attributes. - attributes: - - ref: destination.address - - ref: destination.port - - id: peer - type: span - brief: "Operations that access some remote service." - attributes: - - ref: peer.service - requirement_level: recommended - - id: identity - type: span - brief: > - These attributes may be used for any operation with an authenticated and/or authorized enduser. - attributes: - - ref: enduser.id - requirement_level: recommended - - ref: enduser.role - requirement_level: recommended - - ref: enduser.scope - requirement_level: recommended - - id: thread - type: span - brief: > - These attributes may be used for any operation to store information about a thread that started a span. - attributes: - - ref: thread.id - - ref: thread.name - - id: code - type: span - brief: > - These attributes allow to report this unit of code and therefore to provide more context about the span. - attributes: - - ref: code.function - - ref: code.namespace - - ref: code.filepath - - ref: code.lineno - - ref: code.column - - ref: code.stacktrace - requirement_level: opt_in diff --git a/model/metrics/go-metrics.yaml b/model/go/metrics.yaml similarity index 100% rename from model/metrics/go-metrics.yaml rename to model/go/metrics.yaml diff --git a/model/registry/go.yaml b/model/go/registry.yaml similarity index 100% rename from model/registry/go.yaml rename to model/go/registry.yaml diff --git a/model/registry/graphql.yaml b/model/graphgl/registry.yaml similarity index 100% rename from model/registry/graphql.yaml rename to model/graphgl/registry.yaml diff --git a/model/trace/instrumentation/graphql.yml b/model/graphgl/spans.yml similarity index 100% rename from model/trace/instrumentation/graphql.yml rename to model/graphgl/spans.yml diff --git a/model/metrics/hardware/common.yaml b/model/hardware/common-metrics.yaml similarity index 100% rename from model/metrics/hardware/common.yaml rename to model/hardware/common-metrics.yaml diff --git a/model/hardware-common.yaml b/model/hardware/common.yaml similarity index 100% rename from model/hardware-common.yaml rename to model/hardware/common.yaml diff --git a/model/registry/hardware.yaml b/model/hardware/registry.yaml similarity index 100% rename from model/registry/hardware.yaml rename to model/hardware/registry.yaml diff --git a/model/registry/heroku.yaml b/model/heroku/registry.yaml similarity index 100% rename from model/registry/heroku.yaml rename to model/heroku/registry.yaml diff --git a/model/resource/cloud_provider/heroku.yaml b/model/heroku/resources.yaml similarity index 100% rename from model/resource/cloud_provider/heroku.yaml rename to model/heroku/resources.yaml diff --git a/model/registry/host.yaml b/model/host/registry.yaml similarity index 100% rename from model/registry/host.yaml rename to model/host/registry.yaml diff --git a/model/resource/host.yaml b/model/host/resources.yaml similarity index 100% rename from model/resource/host.yaml rename to model/host/resources.yaml diff --git a/model/http-common.yaml b/model/http/common.yaml similarity index 100% rename from model/http-common.yaml rename to model/http/common.yaml diff --git a/model/registry/deprecated/http.yaml b/model/http/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/http.yaml rename to model/http/deprecated/registry-deprecated.yaml diff --git a/model/metrics/http.yaml b/model/http/metrics.yaml similarity index 100% rename from model/metrics/http.yaml rename to model/http/metrics.yaml diff --git a/model/registry/http.yaml b/model/http/registry.yaml similarity index 100% rename from model/registry/http.yaml rename to model/http/registry.yaml diff --git a/model/trace/http.yaml b/model/http/spans.yaml similarity index 100% rename from model/trace/http.yaml rename to model/http/spans.yaml diff --git a/model/registry/deprecated/ios.yaml b/model/ios/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/ios.yaml rename to model/ios/deprecated/registry-deprecated.yaml diff --git a/model/metrics/deprecated/jvm-metrics.yaml b/model/jvm/deprecated/metrics-deprecated.yaml similarity index 100% rename from model/metrics/deprecated/jvm-metrics.yaml rename to model/jvm/deprecated/metrics-deprecated.yaml diff --git a/model/metrics/jvm-metrics-experimental.yaml b/model/jvm/metrics-experimental.yaml similarity index 100% rename from model/metrics/jvm-metrics-experimental.yaml rename to model/jvm/metrics-experimental.yaml diff --git a/model/metrics/jvm-metrics.yaml b/model/jvm/metrics.yaml similarity index 100% rename from model/metrics/jvm-metrics.yaml rename to model/jvm/metrics.yaml diff --git a/model/registry/jvm.yaml b/model/jvm/registry.yaml similarity index 100% rename from model/registry/jvm.yaml rename to model/jvm/registry.yaml diff --git a/model/registry/deprecated/k8s.yaml b/model/k8s/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/k8s.yaml rename to model/k8s/deprecated/registry-deprecated.yaml diff --git a/model/metrics/k8s.yaml b/model/k8s/metrics.yaml similarity index 100% rename from model/metrics/k8s.yaml rename to model/k8s/metrics.yaml diff --git a/model/registry/k8s.yaml b/model/k8s/registry.yaml similarity index 100% rename from model/registry/k8s.yaml rename to model/k8s/registry.yaml diff --git a/model/resource/k8s.yaml b/model/k8s/resources.yaml similarity index 100% rename from model/resource/k8s.yaml rename to model/k8s/resources.yaml diff --git a/model/metrics/dotnet/dotnet-kestrel.yaml b/model/kestrel/metrics.yaml similarity index 100% rename from model/metrics/dotnet/dotnet-kestrel.yaml rename to model/kestrel/metrics.yaml diff --git a/model/registry/linux.yaml b/model/linux/registry.yaml similarity index 100% rename from model/registry/linux.yaml rename to model/linux/registry.yaml diff --git a/model/logs/media.yaml b/model/log/common.yaml similarity index 63% rename from model/logs/media.yaml rename to model/log/common.yaml index 34c7631d5c..47b7af71f5 100644 --- a/model/logs/media.yaml +++ b/model/log/common.yaml @@ -1,4 +1,14 @@ groups: + - id: log.record + type: attribute_group + brief: > + The attributes described in this section are rather generic. They may be used in any Log Record they apply to. + attributes: + - ref: log.record.uid + requirement_level: opt_in + - ref: log.record.original + requirement_level: opt_in + - id: attributes.log type: attribute_group brief: "Describes Log attributes" diff --git a/model/registry/log.yaml b/model/log/registry.yaml similarity index 100% rename from model/registry/log.yaml rename to model/log/registry.yaml diff --git a/model/logs/general.yaml b/model/logs/general.yaml deleted file mode 100644 index d4835d6982..0000000000 --- a/model/logs/general.yaml +++ /dev/null @@ -1,10 +0,0 @@ -groups: - - id: log.record - type: attribute_group - brief: > - The attributes described in this section are rather generic. They may be used in any Log Record they apply to. - attributes: - - ref: log.record.uid - requirement_level: opt_in - - ref: log.record.original - requirement_level: opt_in diff --git a/model/messaging-common.yaml b/model/messaging/common.yaml similarity index 100% rename from model/messaging-common.yaml rename to model/messaging/common.yaml diff --git a/model/metrics/deprecated/messaging-metrics.yaml b/model/messaging/deprecated/metrics-deprecated.yaml similarity index 100% rename from model/metrics/deprecated/messaging-metrics.yaml rename to model/messaging/deprecated/metrics-deprecated.yaml diff --git a/model/registry/deprecated/messaging.yaml b/model/messaging/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/messaging.yaml rename to model/messaging/deprecated/registry-deprecated.yaml diff --git a/model/metrics/messaging-metrics.yaml b/model/messaging/metrics.yaml similarity index 100% rename from model/metrics/messaging-metrics.yaml rename to model/messaging/metrics.yaml diff --git a/model/registry/messaging.yaml b/model/messaging/registry.yaml similarity index 100% rename from model/registry/messaging.yaml rename to model/messaging/registry.yaml diff --git a/model/trace/messaging.yaml b/model/messaging/spans.yaml similarity index 100% rename from model/trace/messaging.yaml rename to model/messaging/spans.yaml diff --git a/model/network.yaml b/model/network/common.yaml similarity index 100% rename from model/network.yaml rename to model/network/common.yaml diff --git a/model/registry/deprecated/network.yaml b/model/network/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/network.yaml rename to model/network/deprecated/registry-deprecated.yaml diff --git a/model/registry/network.yaml b/model/network/registry.yaml similarity index 100% rename from model/registry/network.yaml rename to model/network/registry.yaml diff --git a/model/metrics/nodejs-metrics.yaml b/model/nodejs/metrics.yaml similarity index 100% rename from model/metrics/nodejs-metrics.yaml rename to model/nodejs/metrics.yaml diff --git a/model/registry/nodejs.yaml b/model/nodejs/registry.yaml similarity index 100% rename from model/registry/nodejs.yaml rename to model/nodejs/registry.yaml diff --git a/model/registry/oci.yaml b/model/oci/registry.yaml similarity index 100% rename from model/registry/oci.yaml rename to model/oci/registry.yaml diff --git a/model/trace/compatibility.yaml b/model/opentracing/common.yaml similarity index 91% rename from model/trace/compatibility.yaml rename to model/opentracing/common.yaml index 3f906d18cf..001ba4042e 100644 --- a/model/trace/compatibility.yaml +++ b/model/opentracing/common.yaml @@ -1,6 +1,6 @@ groups: - id: opentracing - type: span + type: attribute_group brief: 'This document defines semantic conventions for the OpenTracing Shim' note: > These conventions are used by the OpenTracing Shim layer. diff --git a/model/registry/opentracing.yaml b/model/opentracing/registry.yaml similarity index 100% rename from model/registry/opentracing.yaml rename to model/opentracing/registry.yaml diff --git a/model/registry/os.yaml b/model/os/registry.yaml similarity index 100% rename from model/registry/os.yaml rename to model/os/registry.yaml diff --git a/model/resource/os.yaml b/model/os/resources.yaml similarity index 100% rename from model/resource/os.yaml rename to model/os/resources.yaml diff --git a/model/trace/exporter/exporter.yaml b/model/otel/common.yaml similarity index 91% rename from model/trace/exporter/exporter.yaml rename to model/otel/common.yaml index 0c4e8c6a8f..ddb8dd1e22 100644 --- a/model/trace/exporter/exporter.yaml +++ b/model/otel/common.yaml @@ -1,6 +1,6 @@ groups: - id: otel_span - type: span + type: attribute_group brief: Span attributes used by non-OTLP exporters to represent OpenTelemetry Span's concepts. attributes: - ref: otel.status_code diff --git a/model/registry/deprecated/otel.yaml b/model/otel/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/otel.yaml rename to model/otel/deprecated/registry-deprecated.yaml diff --git a/model/registry/otel.yaml b/model/otel/registry.yaml similarity index 100% rename from model/registry/otel.yaml rename to model/otel/registry.yaml diff --git a/model/scope/exporter/exporter.yaml b/model/otel/resources.yaml similarity index 100% rename from model/scope/exporter/exporter.yaml rename to model/otel/resources.yaml diff --git a/model/peer/common.yaml b/model/peer/common.yaml new file mode 100644 index 0000000000..53807af234 --- /dev/null +++ b/model/peer/common.yaml @@ -0,0 +1,7 @@ +groups: + - id: peer + type: attribute_group + brief: "Operations that access some remote service." + attributes: + - ref: peer.service + requirement_level: recommended diff --git a/model/registry/peer.yaml b/model/peer/registry.yaml similarity index 100% rename from model/registry/peer.yaml rename to model/peer/registry.yaml diff --git a/model/registry/deprecated/process.yaml b/model/process/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/process.yaml rename to model/process/deprecated/registry-deprecated.yaml diff --git a/model/metrics/process-metrics.yaml b/model/process/metrics.yaml similarity index 100% rename from model/metrics/process-metrics.yaml rename to model/process/metrics.yaml diff --git a/model/registry/process.yaml b/model/process/registry.yaml similarity index 100% rename from model/registry/process.yaml rename to model/process/registry.yaml diff --git a/model/resource/process.yaml b/model/process/resources.yaml similarity index 100% rename from model/resource/process.yaml rename to model/process/resources.yaml diff --git a/model/profiles/frame.yaml b/model/profile/common.yaml similarity index 100% rename from model/profiles/frame.yaml rename to model/profile/common.yaml diff --git a/model/registry/profile.yaml b/model/profile/registry.yaml similarity index 100% rename from model/registry/profile.yaml rename to model/profile/registry.yaml diff --git a/model/registry/deprecated/rpc.yaml b/model/rpc/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/rpc.yaml rename to model/rpc/deprecated/registry-deprecated.yaml diff --git a/model/metrics/rpc-metrics.yaml b/model/rpc/metrics.yaml similarity index 100% rename from model/metrics/rpc-metrics.yaml rename to model/rpc/metrics.yaml diff --git a/model/registry/rpc.yaml b/model/rpc/registry.yaml similarity index 100% rename from model/registry/rpc.yaml rename to model/rpc/registry.yaml diff --git a/model/trace/rpc.yaml b/model/rpc/spans.yaml similarity index 100% rename from model/trace/rpc.yaml rename to model/rpc/spans.yaml diff --git a/model/server/common.yaml b/model/server/common.yaml new file mode 100644 index 0000000000..08806f02b3 --- /dev/null +++ b/model/server/common.yaml @@ -0,0 +1,8 @@ +groups: + - id: server + type: attribute_group + brief: > + General server attributes. + attributes: + - ref: server.address + - ref: server.port diff --git a/model/registry/server.yaml b/model/server/registry.yaml similarity index 100% rename from model/registry/server.yaml rename to model/server/registry.yaml diff --git a/model/registry/service.yaml b/model/service/registry.yaml similarity index 100% rename from model/registry/service.yaml rename to model/service/registry.yaml diff --git a/model/resource/service_experimental.yaml b/model/service/resources-experimental.yaml similarity index 100% rename from model/resource/service_experimental.yaml rename to model/service/resources-experimental.yaml diff --git a/model/resource/service.yaml b/model/service/resources.yaml similarity index 100% rename from model/resource/service.yaml rename to model/service/resources.yaml diff --git a/model/session.yaml b/model/session/common.yaml similarity index 100% rename from model/session.yaml rename to model/session/common.yaml diff --git a/model/registry/session.yaml b/model/session/registry.yaml similarity index 100% rename from model/registry/session.yaml rename to model/session/registry.yaml diff --git a/model/metrics/dotnet/dotnet-signalr.yaml b/model/signalr/metrics.yaml similarity index 100% rename from model/metrics/dotnet/dotnet-signalr.yaml rename to model/signalr/metrics.yaml diff --git a/model/registry/signalr.yaml b/model/signalr/registry.yaml similarity index 100% rename from model/registry/signalr.yaml rename to model/signalr/registry.yaml diff --git a/model/source/common.yaml b/model/source/common.yaml new file mode 100644 index 0000000000..5644041e24 --- /dev/null +++ b/model/source/common.yaml @@ -0,0 +1,8 @@ +groups: + - id: source + type: attribute_group + brief: > + General source attributes. + attributes: + - ref: source.address + - ref: source.port diff --git a/model/registry/source.yaml b/model/source/registry.yaml similarity index 100% rename from model/registry/source.yaml rename to model/source/registry.yaml diff --git a/model/registry/deprecated/system.yaml b/model/system/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/system.yaml rename to model/system/deprecated/registry-deprecated.yaml diff --git a/model/metrics/system-metrics.yaml b/model/system/metrics.yaml similarity index 100% rename from model/metrics/system-metrics.yaml rename to model/system/metrics.yaml diff --git a/model/registry/system.yaml b/model/system/registry.yaml similarity index 100% rename from model/registry/system.yaml rename to model/system/registry.yaml diff --git a/model/registry/telemetry.yaml b/model/telemetry/registry.yaml similarity index 100% rename from model/registry/telemetry.yaml rename to model/telemetry/registry.yaml diff --git a/model/resource/telemetry_experimental.yaml b/model/telemetry/resources-experimental.yaml similarity index 100% rename from model/resource/telemetry_experimental.yaml rename to model/telemetry/resources-experimental.yaml diff --git a/model/resource/telemetry.yaml b/model/telemetry/resources.yaml similarity index 100% rename from model/resource/telemetry.yaml rename to model/telemetry/resources.yaml diff --git a/model/registry/test.yaml b/model/test/registry.yaml similarity index 100% rename from model/registry/test.yaml rename to model/test/registry.yaml diff --git a/model/thread/common.yaml b/model/thread/common.yaml new file mode 100644 index 0000000000..572fb26996 --- /dev/null +++ b/model/thread/common.yaml @@ -0,0 +1,8 @@ +groups: + - id: thread + type: attribute_group + brief: > + These attributes may be used for any operation to store information about a thread that started a span. + attributes: + - ref: thread.id + - ref: thread.name diff --git a/model/registry/thread.yaml b/model/thread/registry.yaml similarity index 100% rename from model/registry/thread.yaml rename to model/thread/registry.yaml diff --git a/model/registry/deprecated/tls.yaml b/model/tls/deprecated/registry-deprecated.yaml similarity index 100% rename from model/registry/deprecated/tls.yaml rename to model/tls/deprecated/registry-deprecated.yaml diff --git a/model/registry/tls.yaml b/model/tls/registry.yaml similarity index 100% rename from model/registry/tls.yaml rename to model/tls/registry.yaml diff --git a/model/url.yaml b/model/url/common.yaml similarity index 100% rename from model/url.yaml rename to model/url/common.yaml diff --git a/model/registry/url.yaml b/model/url/registry.yaml similarity index 100% rename from model/registry/url.yaml rename to model/url/registry.yaml diff --git a/model/registry/user-agent.yaml b/model/user-agent/registry.yaml similarity index 100% rename from model/registry/user-agent.yaml rename to model/user-agent/registry.yaml diff --git a/model/registry/user.yaml b/model/user/registry.yaml similarity index 100% rename from model/registry/user.yaml rename to model/user/registry.yaml diff --git a/model/metrics/v8js-metrics.yaml b/model/v8js/metrics.yaml similarity index 100% rename from model/metrics/v8js-metrics.yaml rename to model/v8js/metrics.yaml diff --git a/model/registry/v8js.yaml b/model/v8js/registry.yaml similarity index 100% rename from model/registry/v8js.yaml rename to model/v8js/registry.yaml diff --git a/model/registry/vcs.yaml b/model/vcs/registry.yaml similarity index 100% rename from model/registry/vcs.yaml rename to model/vcs/registry.yaml diff --git a/model/registry/webengine.yaml b/model/webengine/registry.yaml similarity index 100% rename from model/registry/webengine.yaml rename to model/webengine/registry.yaml diff --git a/model/resource/webengine.yaml b/model/webengine/resources.yaml similarity index 100% rename from model/resource/webengine.yaml rename to model/webengine/resources.yaml