[vcs] Adds `vcs.repository.name` attribute and updates `vcs.repository.url.full` to be represented consistently. (#1608)
Co-authored-by: Liudmila Molkova <limolkova@microsoft.com> Co-authored-by: Trask Stalnaker <trask.stalnaker@gmail.com>
This commit is contained in:
parent
c2f983d199
commit
c8024bf242
|
|
@ -0,0 +1,25 @@
|
||||||
|
# Use this changelog template to create an entry for release notes.
|
||||||
|
#
|
||||||
|
# If your change doesn't affect end users you should instead start
|
||||||
|
# your pull request title with [chore] or use the "Skip Changelog" label.
|
||||||
|
|
||||||
|
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
|
||||||
|
change_type: enhancement
|
||||||
|
|
||||||
|
# The name of the area of concern in the attributes-registry, (e.g. http, cloud, db)
|
||||||
|
component: vcs
|
||||||
|
|
||||||
|
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
|
||||||
|
note: |
|
||||||
|
Adds `vcs.repository.name` attribute to registry and update
|
||||||
|
`vcs.repository.url.full` description for consistent representation. Updates
|
||||||
|
the VCS metrics to include `vcs.repository.name` as a recommended attribute.
|
||||||
|
|
||||||
|
# Mandatory: One or more tracking issues related to the change. You can use the PR number here if no issue exists.
|
||||||
|
# The values here must be integers.
|
||||||
|
issues: [1254, 1453]
|
||||||
|
|
||||||
|
# (Optional) One or more lines of additional information to render under the primary note.
|
||||||
|
# These lines will be padded with 2 spaces and then inserted directly into the document.
|
||||||
|
# Use pipe (|) for multiline entries.
|
||||||
|
subtext:
|
||||||
|
|
@ -26,7 +26,8 @@ This group defines the attributes for [Version Control Systems (VCS)](https://wi
|
||||||
| <a id="vcs-ref-head-revision" href="#vcs-ref-head-revision">`vcs.ref.head.revision`</a> | string | The revision, literally [revised version](https://www.merriam-webster.com/dictionary/revision), The revision most often refers to a commit object in Git, or a revision number in SVN. [2] | `9d59409acf479dfa0df1aa568182e43e43df8bbe28d60fcf2bc52e30068802cc`; `main`; `123`; `HEAD` |  |
|
| <a id="vcs-ref-head-revision" href="#vcs-ref-head-revision">`vcs.ref.head.revision`</a> | string | The revision, literally [revised version](https://www.merriam-webster.com/dictionary/revision), The revision most often refers to a commit object in Git, or a revision number in SVN. [2] | `9d59409acf479dfa0df1aa568182e43e43df8bbe28d60fcf2bc52e30068802cc`; `main`; `123`; `HEAD` |  |
|
||||||
| <a id="vcs-ref-head-type" href="#vcs-ref-head-type">`vcs.ref.head.type`</a> | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` |  |
|
| <a id="vcs-ref-head-type" href="#vcs-ref-head-type">`vcs.ref.head.type`</a> | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` |  |
|
||||||
| <a id="vcs-ref-type" href="#vcs-ref-type">`vcs.ref.type`</a> | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` |  |
|
| <a id="vcs-ref-type" href="#vcs-ref-type">`vcs.ref.type`</a> | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` |  |
|
||||||
| <a id="vcs-repository-url-full" href="#vcs-repository-url-full">`vcs.repository.url.full`</a> | string | The [URL](https://wikipedia.org/wiki/URL) of the repository providing the complete address in order to locate and identify the repository. | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` |  |
|
| <a id="vcs-repository-name" href="#vcs-repository-name">`vcs.repository.name`</a> | string | The human readable name of the repository. It SHOULD NOT include any additional identifier like Group/SubGroup in GitLab or organization in GitHub. [3] | `semantic-conventions`; `my-cool-repo` |  |
|
||||||
|
| <a id="vcs-repository-url-full" href="#vcs-repository-url-full">`vcs.repository.url.full`</a> | string | The [canonical URL](https://support.google.com/webmasters/answer/10347851?hl=en#:~:text=A%20canonical%20URL%20is%20the,Google%20chooses%20one%20as%20canonical.) of the repository providing the complete HTTP(S) address in order to locate and identify the repository through a browser. [4] | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` |  |
|
||||||
| <a id="vcs-revision-delta-direction" href="#vcs-revision-delta-direction">`vcs.revision_delta.direction`</a> | string | The type of revision comparison. | `ahead`; `behind` |  |
|
| <a id="vcs-revision-delta-direction" href="#vcs-revision-delta-direction">`vcs.revision_delta.direction`</a> | string | The type of revision comparison. | `ahead`; `behind` |  |
|
||||||
|
|
||||||
**[1] `vcs.ref.base.revision`:** The revision can be a full [hash value (see glossary)](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf),
|
**[1] `vcs.ref.base.revision`:** The revision can be a full [hash value (see glossary)](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf),
|
||||||
|
|
@ -49,6 +50,13 @@ it is identical to the `ref.head.name`, it SHOULD still be included. It is
|
||||||
up to the implementer to decide which value to set as the revision
|
up to the implementer to decide which value to set as the revision
|
||||||
based on the VCS system and situational context.
|
based on the VCS system and situational context.
|
||||||
|
|
||||||
|
**[3] `vcs.repository.name`:** Due to it only being the name, it can clash with forks of the same
|
||||||
|
repository if collecting telemetry across multiple orgs or groups in
|
||||||
|
the same backends.
|
||||||
|
|
||||||
|
**[4] `vcs.repository.url.full`:** In Git Version Control Systems, the canonical URL SHOULD NOT include
|
||||||
|
the `.git` extension.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
`vcs.change.state` 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.
|
`vcs.change.state` 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.
|
||||||
|
|
|
||||||
|
|
@ -48,7 +48,15 @@ This metric is [recommended][MetricRecommended].
|
||||||
| Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability |
|
| Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability |
|
||||||
|---|---|---|---|---|---|
|
|---|---|---|---|---|---|
|
||||||
| [`vcs.change.state`](/docs/attributes-registry/vcs.md) | string | The state of the change (pull request/merge request/changelist). | `open`; `closed`; `merged` | `Required` |  |
|
| [`vcs.change.state`](/docs/attributes-registry/vcs.md) | string | The state of the change (pull request/merge request/changelist). | `open`; `closed`; `merged` | `Required` |  |
|
||||||
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [URL](https://wikipedia.org/wiki/URL) of the repository providing the complete address in order to locate and identify the repository. | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [canonical URL](https://support.google.com/webmasters/answer/10347851?hl=en#:~:text=A%20canonical%20URL%20is%20the,Google%20chooses%20one%20as%20canonical.) of the repository providing the complete HTTP(S) address in order to locate and identify the repository through a browser. [1] | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
||||||
|
| [`vcs.repository.name`](/docs/attributes-registry/vcs.md) | string | The human readable name of the repository. It SHOULD NOT include any additional identifier like Group/SubGroup in GitLab or organization in GitHub. [2] | `semantic-conventions`; `my-cool-repo` | `Recommended` |  |
|
||||||
|
|
||||||
|
**[1] `vcs.repository.url.full`:** In Git Version Control Systems, the canonical URL SHOULD NOT include
|
||||||
|
the `.git` extension.
|
||||||
|
|
||||||
|
**[2] `vcs.repository.name`:** Due to it only being the name, it can clash with forks of the same
|
||||||
|
repository if collecting telemetry across multiple orgs or groups in
|
||||||
|
the same backends.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -85,7 +93,15 @@ This metric is [recommended][MetricRecommended].
|
||||||
|---|---|---|---|---|---|
|
|---|---|---|---|---|---|
|
||||||
| [`vcs.change.state`](/docs/attributes-registry/vcs.md) | string | The state of the change (pull request/merge request/changelist). | `open`; `closed`; `merged` | `Required` |  |
|
| [`vcs.change.state`](/docs/attributes-registry/vcs.md) | string | The state of the change (pull request/merge request/changelist). | `open`; `closed`; `merged` | `Required` |  |
|
||||||
| [`vcs.ref.head.name`](/docs/attributes-registry/vcs.md) | string | The name of the [reference](https://git-scm.com/docs/gitglossary#def_ref) such as **branch** or **tag** in the repository. | `my-feature-branch`; `tag-1-test` | `Required` |  |
|
| [`vcs.ref.head.name`](/docs/attributes-registry/vcs.md) | string | The name of the [reference](https://git-scm.com/docs/gitglossary#def_ref) such as **branch** or **tag** in the repository. | `my-feature-branch`; `tag-1-test` | `Required` |  |
|
||||||
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [URL](https://wikipedia.org/wiki/URL) of the repository providing the complete address in order to locate and identify the repository. | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [canonical URL](https://support.google.com/webmasters/answer/10347851?hl=en#:~:text=A%20canonical%20URL%20is%20the,Google%20chooses%20one%20as%20canonical.) of the repository providing the complete HTTP(S) address in order to locate and identify the repository through a browser. [1] | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
||||||
|
| [`vcs.repository.name`](/docs/attributes-registry/vcs.md) | string | The human readable name of the repository. It SHOULD NOT include any additional identifier like Group/SubGroup in GitLab or organization in GitHub. [2] | `semantic-conventions`; `my-cool-repo` | `Recommended` |  |
|
||||||
|
|
||||||
|
**[1] `vcs.repository.url.full`:** In Git Version Control Systems, the canonical URL SHOULD NOT include
|
||||||
|
the `.git` extension.
|
||||||
|
|
||||||
|
**[2] `vcs.repository.name`:** Due to it only being the name, it can clash with forks of the same
|
||||||
|
repository if collecting telemetry across multiple orgs or groups in
|
||||||
|
the same backends.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -121,7 +137,15 @@ This metric is [recommended][MetricRecommended].
|
||||||
| Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability |
|
| Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability |
|
||||||
|---|---|---|---|---|---|
|
|---|---|---|---|---|---|
|
||||||
| [`vcs.ref.head.name`](/docs/attributes-registry/vcs.md) | string | The name of the [reference](https://git-scm.com/docs/gitglossary#def_ref) such as **branch** or **tag** in the repository. | `my-feature-branch`; `tag-1-test` | `Required` |  |
|
| [`vcs.ref.head.name`](/docs/attributes-registry/vcs.md) | string | The name of the [reference](https://git-scm.com/docs/gitglossary#def_ref) such as **branch** or **tag** in the repository. | `my-feature-branch`; `tag-1-test` | `Required` |  |
|
||||||
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [URL](https://wikipedia.org/wiki/URL) of the repository providing the complete address in order to locate and identify the repository. | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [canonical URL](https://support.google.com/webmasters/answer/10347851?hl=en#:~:text=A%20canonical%20URL%20is%20the,Google%20chooses%20one%20as%20canonical.) of the repository providing the complete HTTP(S) address in order to locate and identify the repository through a browser. [1] | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
||||||
|
| [`vcs.repository.name`](/docs/attributes-registry/vcs.md) | string | The human readable name of the repository. It SHOULD NOT include any additional identifier like Group/SubGroup in GitLab or organization in GitHub. [2] | `semantic-conventions`; `my-cool-repo` | `Recommended` |  |
|
||||||
|
|
||||||
|
**[1] `vcs.repository.url.full`:** In Git Version Control Systems, the canonical URL SHOULD NOT include
|
||||||
|
the `.git` extension.
|
||||||
|
|
||||||
|
**[2] `vcs.repository.name`:** Due to it only being the name, it can clash with forks of the same
|
||||||
|
repository if collecting telemetry across multiple orgs or groups in
|
||||||
|
the same backends.
|
||||||
|
|
||||||
<!-- markdownlint-restore -->
|
<!-- markdownlint-restore -->
|
||||||
<!-- prettier-ignore-end -->
|
<!-- prettier-ignore-end -->
|
||||||
|
|
@ -166,7 +190,15 @@ This metric is [recommended][MetricRecommended].
|
||||||
| Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability |
|
| Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability |
|
||||||
|---|---|---|---|---|---|
|
|---|---|---|---|---|---|
|
||||||
| [`vcs.ref.type`](/docs/attributes-registry/vcs.md) | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` | `Required` |  |
|
| [`vcs.ref.type`](/docs/attributes-registry/vcs.md) | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` | `Required` |  |
|
||||||
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [URL](https://wikipedia.org/wiki/URL) of the repository providing the complete address in order to locate and identify the repository. | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [canonical URL](https://support.google.com/webmasters/answer/10347851?hl=en#:~:text=A%20canonical%20URL%20is%20the,Google%20chooses%20one%20as%20canonical.) of the repository providing the complete HTTP(S) address in order to locate and identify the repository through a browser. [1] | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
||||||
|
| [`vcs.repository.name`](/docs/attributes-registry/vcs.md) | string | The human readable name of the repository. It SHOULD NOT include any additional identifier like Group/SubGroup in GitLab or organization in GitHub. [2] | `semantic-conventions`; `my-cool-repo` | `Recommended` |  |
|
||||||
|
|
||||||
|
**[1] `vcs.repository.url.full`:** In Git Version Control Systems, the canonical URL SHOULD NOT include
|
||||||
|
the `.git` extension.
|
||||||
|
|
||||||
|
**[2] `vcs.repository.name`:** Due to it only being the name, it can clash with forks of the same
|
||||||
|
repository if collecting telemetry across multiple orgs or groups in
|
||||||
|
the same backends.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -208,8 +240,16 @@ If number of lines added/removed should be calculated from the start of time, th
|
||||||
| [`vcs.ref.base.type`](/docs/attributes-registry/vcs.md) | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` | `Required` |  |
|
| [`vcs.ref.base.type`](/docs/attributes-registry/vcs.md) | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` | `Required` |  |
|
||||||
| [`vcs.ref.head.name`](/docs/attributes-registry/vcs.md) | string | The name of the [reference](https://git-scm.com/docs/gitglossary#def_ref) such as **branch** or **tag** in the repository. | `my-feature-branch`; `tag-1-test` | `Required` |  |
|
| [`vcs.ref.head.name`](/docs/attributes-registry/vcs.md) | string | The name of the [reference](https://git-scm.com/docs/gitglossary#def_ref) such as **branch** or **tag** in the repository. | `my-feature-branch`; `tag-1-test` | `Required` |  |
|
||||||
| [`vcs.ref.head.type`](/docs/attributes-registry/vcs.md) | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` | `Required` |  |
|
| [`vcs.ref.head.type`](/docs/attributes-registry/vcs.md) | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` | `Required` |  |
|
||||||
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [URL](https://wikipedia.org/wiki/URL) of the repository providing the complete address in order to locate and identify the repository. | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [canonical URL](https://support.google.com/webmasters/answer/10347851?hl=en#:~:text=A%20canonical%20URL%20is%20the,Google%20chooses%20one%20as%20canonical.) of the repository providing the complete HTTP(S) address in order to locate and identify the repository through a browser. [1] | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
||||||
| [`vcs.change.id`](/docs/attributes-registry/vcs.md) | string | The ID of the change (pull request/merge request/changelist) if applicable. This is usually a unique (within repository) identifier generated by the VCS system. | `123` | `Conditionally Required` if a change is associate with the ref. |  |
|
| [`vcs.change.id`](/docs/attributes-registry/vcs.md) | string | The ID of the change (pull request/merge request/changelist) if applicable. This is usually a unique (within repository) identifier generated by the VCS system. | `123` | `Conditionally Required` if a change is associate with the ref. |  |
|
||||||
|
| [`vcs.repository.name`](/docs/attributes-registry/vcs.md) | string | The human readable name of the repository. It SHOULD NOT include any additional identifier like Group/SubGroup in GitLab or organization in GitHub. [2] | `semantic-conventions`; `my-cool-repo` | `Recommended` |  |
|
||||||
|
|
||||||
|
**[1] `vcs.repository.url.full`:** In Git Version Control Systems, the canonical URL SHOULD NOT include
|
||||||
|
the `.git` extension.
|
||||||
|
|
||||||
|
**[2] `vcs.repository.name`:** Due to it only being the name, it can clash with forks of the same
|
||||||
|
repository if collecting telemetry across multiple orgs or groups in
|
||||||
|
the same backends.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -267,9 +307,17 @@ instrumentation SHOULD report two measurements: 3 and 2 (both positive numbers)
|
||||||
| [`vcs.ref.base.type`](/docs/attributes-registry/vcs.md) | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` | `Required` |  |
|
| [`vcs.ref.base.type`](/docs/attributes-registry/vcs.md) | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` | `Required` |  |
|
||||||
| [`vcs.ref.head.name`](/docs/attributes-registry/vcs.md) | string | The name of the [reference](https://git-scm.com/docs/gitglossary#def_ref) such as **branch** or **tag** in the repository. | `my-feature-branch`; `tag-1-test` | `Required` |  |
|
| [`vcs.ref.head.name`](/docs/attributes-registry/vcs.md) | string | The name of the [reference](https://git-scm.com/docs/gitglossary#def_ref) such as **branch** or **tag** in the repository. | `my-feature-branch`; `tag-1-test` | `Required` |  |
|
||||||
| [`vcs.ref.head.type`](/docs/attributes-registry/vcs.md) | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` | `Required` |  |
|
| [`vcs.ref.head.type`](/docs/attributes-registry/vcs.md) | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` | `Required` |  |
|
||||||
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [URL](https://wikipedia.org/wiki/URL) of the repository providing the complete address in order to locate and identify the repository. | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [canonical URL](https://support.google.com/webmasters/answer/10347851?hl=en#:~:text=A%20canonical%20URL%20is%20the,Google%20chooses%20one%20as%20canonical.) of the repository providing the complete HTTP(S) address in order to locate and identify the repository through a browser. [1] | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
||||||
| [`vcs.revision_delta.direction`](/docs/attributes-registry/vcs.md) | string | The type of revision comparison. | `ahead`; `behind` | `Required` |  |
|
| [`vcs.revision_delta.direction`](/docs/attributes-registry/vcs.md) | string | The type of revision comparison. | `ahead`; `behind` | `Required` |  |
|
||||||
| [`vcs.change.id`](/docs/attributes-registry/vcs.md) | string | The ID of the change (pull request/merge request/changelist) if applicable. This is usually a unique (within repository) identifier generated by the VCS system. | `123` | `Conditionally Required` if a change is associate with the ref. |  |
|
| [`vcs.change.id`](/docs/attributes-registry/vcs.md) | string | The ID of the change (pull request/merge request/changelist) if applicable. This is usually a unique (within repository) identifier generated by the VCS system. | `123` | `Conditionally Required` if a change is associate with the ref. |  |
|
||||||
|
| [`vcs.repository.name`](/docs/attributes-registry/vcs.md) | string | The human readable name of the repository. It SHOULD NOT include any additional identifier like Group/SubGroup in GitLab or organization in GitHub. [2] | `semantic-conventions`; `my-cool-repo` | `Recommended` |  |
|
||||||
|
|
||||||
|
**[1] `vcs.repository.url.full`:** In Git Version Control Systems, the canonical URL SHOULD NOT include
|
||||||
|
the `.git` extension.
|
||||||
|
|
||||||
|
**[2] `vcs.repository.name`:** Due to it only being the name, it can clash with forks of the same
|
||||||
|
repository if collecting telemetry across multiple orgs or groups in
|
||||||
|
the same backends.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -322,7 +370,15 @@ This metric is [recommended][MetricRecommended].
|
||||||
|---|---|---|---|---|---|
|
|---|---|---|---|---|---|
|
||||||
| [`vcs.ref.head.name`](/docs/attributes-registry/vcs.md) | string | The name of the [reference](https://git-scm.com/docs/gitglossary#def_ref) such as **branch** or **tag** in the repository. | `my-feature-branch`; `tag-1-test` | `Required` |  |
|
| [`vcs.ref.head.name`](/docs/attributes-registry/vcs.md) | string | The name of the [reference](https://git-scm.com/docs/gitglossary#def_ref) such as **branch** or **tag** in the repository. | `my-feature-branch`; `tag-1-test` | `Required` |  |
|
||||||
| [`vcs.ref.head.type`](/docs/attributes-registry/vcs.md) | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` | `Required` |  |
|
| [`vcs.ref.head.type`](/docs/attributes-registry/vcs.md) | string | The type of the [reference](https://git-scm.com/docs/gitglossary#def_ref) in the repository. | `branch`; `tag` | `Required` |  |
|
||||||
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [URL](https://wikipedia.org/wiki/URL) of the repository providing the complete address in order to locate and identify the repository. | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [canonical URL](https://support.google.com/webmasters/answer/10347851?hl=en#:~:text=A%20canonical%20URL%20is%20the,Google%20chooses%20one%20as%20canonical.) of the repository providing the complete HTTP(S) address in order to locate and identify the repository through a browser. [1] | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
||||||
|
| [`vcs.repository.name`](/docs/attributes-registry/vcs.md) | string | The human readable name of the repository. It SHOULD NOT include any additional identifier like Group/SubGroup in GitLab or organization in GitHub. [2] | `semantic-conventions`; `my-cool-repo` | `Recommended` |  |
|
||||||
|
|
||||||
|
**[1] `vcs.repository.url.full`:** In Git Version Control Systems, the canonical URL SHOULD NOT include
|
||||||
|
the `.git` extension.
|
||||||
|
|
||||||
|
**[2] `vcs.repository.name`:** Due to it only being the name, it can clash with forks of the same
|
||||||
|
repository if collecting telemetry across multiple orgs or groups in
|
||||||
|
the same backends.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
@ -355,7 +411,15 @@ This metric is [opt-in][MetricOptIn].
|
||||||
|
|
||||||
| Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability |
|
| Attribute | Type | Description | Examples | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Stability |
|
||||||
|---|---|---|---|---|---|
|
|---|---|---|---|---|---|
|
||||||
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [URL](https://wikipedia.org/wiki/URL) of the repository providing the complete address in order to locate and identify the repository. | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
| [`vcs.repository.url.full`](/docs/attributes-registry/vcs.md) | string | The [canonical URL](https://support.google.com/webmasters/answer/10347851?hl=en#:~:text=A%20canonical%20URL%20is%20the,Google%20chooses%20one%20as%20canonical.) of the repository providing the complete HTTP(S) address in order to locate and identify the repository through a browser. [1] | `https://github.com/opentelemetry/open-telemetry-collector-contrib`; `https://gitlab.com/my-org/my-project/my-projects-project/repo` | `Required` |  |
|
||||||
|
| [`vcs.repository.name`](/docs/attributes-registry/vcs.md) | string | The human readable name of the repository. It SHOULD NOT include any additional identifier like Group/SubGroup in GitLab or organization in GitHub. [2] | `semantic-conventions`; `my-cool-repo` | `Recommended` |  |
|
||||||
|
|
||||||
|
**[1] `vcs.repository.url.full`:** In Git Version Control Systems, the canonical URL SHOULD NOT include
|
||||||
|
the `.git` extension.
|
||||||
|
|
||||||
|
**[2] `vcs.repository.name`:** Due to it only being the name, it can clash with forks of the same
|
||||||
|
repository if collecting telemetry across multiple orgs or groups in
|
||||||
|
the same backends.
|
||||||
|
|
||||||
<!-- markdownlint-restore -->
|
<!-- markdownlint-restore -->
|
||||||
<!-- prettier-ignore-end -->
|
<!-- prettier-ignore-end -->
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,8 @@ groups:
|
||||||
requirement_level: required
|
requirement_level: required
|
||||||
- ref: vcs.repository.url.full
|
- ref: vcs.repository.url.full
|
||||||
requirement_level: required
|
requirement_level: required
|
||||||
|
- ref: vcs.repository.name
|
||||||
|
requirement_level: recommended
|
||||||
- id: metric.vcs.change.duration
|
- id: metric.vcs.change.duration
|
||||||
type: metric
|
type: metric
|
||||||
metric_name: vcs.change.duration
|
metric_name: vcs.change.duration
|
||||||
|
|
@ -21,6 +23,8 @@ groups:
|
||||||
attributes:
|
attributes:
|
||||||
- ref: vcs.repository.url.full
|
- ref: vcs.repository.url.full
|
||||||
requirement_level: required
|
requirement_level: required
|
||||||
|
- ref: vcs.repository.name
|
||||||
|
requirement_level: recommended
|
||||||
- ref: vcs.ref.head.name
|
- ref: vcs.ref.head.name
|
||||||
requirement_level: required
|
requirement_level: required
|
||||||
- ref: vcs.change.state
|
- ref: vcs.change.state
|
||||||
|
|
@ -35,6 +39,8 @@ groups:
|
||||||
attributes:
|
attributes:
|
||||||
- ref: vcs.repository.url.full
|
- ref: vcs.repository.url.full
|
||||||
requirement_level: required
|
requirement_level: required
|
||||||
|
- ref: vcs.repository.name
|
||||||
|
requirement_level: recommended
|
||||||
- ref: vcs.ref.head.name
|
- ref: vcs.ref.head.name
|
||||||
requirement_level: required
|
requirement_level: required
|
||||||
- id: metric.vcs.repository.count
|
- id: metric.vcs.repository.count
|
||||||
|
|
@ -55,6 +61,8 @@ groups:
|
||||||
attributes:
|
attributes:
|
||||||
- ref: vcs.repository.url.full
|
- ref: vcs.repository.url.full
|
||||||
requirement_level: required
|
requirement_level: required
|
||||||
|
- ref: vcs.repository.name
|
||||||
|
requirement_level: recommended
|
||||||
- ref: vcs.ref.type
|
- ref: vcs.ref.type
|
||||||
requirement_level: required
|
requirement_level: required
|
||||||
- id: metric.vcs.ref.lines_delta
|
- id: metric.vcs.ref.lines_delta
|
||||||
|
|
@ -74,6 +82,8 @@ groups:
|
||||||
conditionally_required: if a change is associate with the ref.
|
conditionally_required: if a change is associate with the ref.
|
||||||
- ref: vcs.repository.url.full
|
- ref: vcs.repository.url.full
|
||||||
requirement_level: required
|
requirement_level: required
|
||||||
|
- ref: vcs.repository.name
|
||||||
|
requirement_level: recommended
|
||||||
- ref: vcs.ref.head.name
|
- ref: vcs.ref.head.name
|
||||||
requirement_level: required
|
requirement_level: required
|
||||||
- ref: vcs.ref.head.type
|
- ref: vcs.ref.head.type
|
||||||
|
|
@ -100,6 +110,8 @@ groups:
|
||||||
conditionally_required: if a change is associate with the ref.
|
conditionally_required: if a change is associate with the ref.
|
||||||
- ref: vcs.repository.url.full
|
- ref: vcs.repository.url.full
|
||||||
requirement_level: required
|
requirement_level: required
|
||||||
|
- ref: vcs.repository.name
|
||||||
|
requirement_level: recommended
|
||||||
- ref: vcs.ref.head.name
|
- ref: vcs.ref.head.name
|
||||||
requirement_level: required
|
requirement_level: required
|
||||||
- ref: vcs.ref.head.type
|
- ref: vcs.ref.head.type
|
||||||
|
|
@ -120,6 +132,8 @@ groups:
|
||||||
attributes:
|
attributes:
|
||||||
- ref: vcs.repository.url.full
|
- ref: vcs.repository.url.full
|
||||||
requirement_level: required
|
requirement_level: required
|
||||||
|
- ref: vcs.repository.name
|
||||||
|
requirement_level: recommended
|
||||||
- ref: vcs.ref.head.name
|
- ref: vcs.ref.head.name
|
||||||
requirement_level: required
|
requirement_level: required
|
||||||
- ref: vcs.ref.head.type
|
- ref: vcs.ref.head.type
|
||||||
|
|
@ -134,3 +148,5 @@ groups:
|
||||||
attributes:
|
attributes:
|
||||||
- ref: vcs.repository.url.full
|
- ref: vcs.repository.url.full
|
||||||
requirement_level: required
|
requirement_level: required
|
||||||
|
- ref: vcs.repository.name
|
||||||
|
requirement_level: recommended
|
||||||
|
|
|
||||||
|
|
@ -9,14 +9,33 @@ groups:
|
||||||
type: string
|
type: string
|
||||||
stability: experimental
|
stability: experimental
|
||||||
brief: >
|
brief: >
|
||||||
The [URL](https://wikipedia.org/wiki/URL) of the repository
|
The [canonical URL](https://support.google.com/webmasters/answer/10347851?hl=en#:~:text=A%20canonical%20URL%20is%20the,Google%20chooses%20one%20as%20canonical.)
|
||||||
providing the complete address in order to locate and identify the
|
of the repository providing the complete HTTP(S) address in order to
|
||||||
repository.
|
locate and identify the repository through a browser.
|
||||||
|
note: |
|
||||||
|
In Git Version Control Systems, the canonical URL SHOULD NOT include
|
||||||
|
the `.git` extension.
|
||||||
examples:
|
examples:
|
||||||
[
|
[
|
||||||
"https://github.com/opentelemetry/open-telemetry-collector-contrib",
|
"https://github.com/opentelemetry/open-telemetry-collector-contrib",
|
||||||
"https://gitlab.com/my-org/my-project/my-projects-project/repo",
|
"https://gitlab.com/my-org/my-project/my-projects-project/repo",
|
||||||
]
|
]
|
||||||
|
- id: vcs.repository.name
|
||||||
|
type: string
|
||||||
|
stability: experimental
|
||||||
|
brief: >
|
||||||
|
The human readable name of the repository. It SHOULD NOT include any
|
||||||
|
additional identifier like Group/SubGroup in GitLab or organization
|
||||||
|
in GitHub.
|
||||||
|
note: |
|
||||||
|
Due to it only being the name, it can clash with forks of the same
|
||||||
|
repository if collecting telemetry across multiple orgs or groups in
|
||||||
|
the same backends.
|
||||||
|
examples:
|
||||||
|
[
|
||||||
|
"semantic-conventions",
|
||||||
|
"my-cool-repo",
|
||||||
|
]
|
||||||
- id: vcs.ref.base.name
|
- id: vcs.ref.base.name
|
||||||
type: string
|
type: string
|
||||||
stability: experimental
|
stability: experimental
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue