diff --git a/.chloggen/add_process_exec_version.yaml b/.chloggen/add_process_exec_version.yaml new file mode 100644 index 0000000000..a64ca1dcf4 --- /dev/null +++ b/.chloggen/add_process_exec_version.yaml @@ -0,0 +1,22 @@ +# 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: process + +# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). +note: Introduces a new attribute to capture the version of the executable being run by a process. + +# 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: [2655] + +# (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: diff --git a/docs/registry/attributes/process.md b/docs/registry/attributes/process.md index 9bab50ce2f..265dd5c22c 100644 --- a/docs/registry/attributes/process.md +++ b/docs/registry/attributes/process.md @@ -27,6 +27,7 @@ An operating system process. | `process.executable.build_id.htlhash` | ![Development](https://img.shields.io/badge/-development-blue) | string | Profiling specific build ID for executables. See the OTel specification for Profiles for more information. | `600DCAFE4A110000F2BF38C493F5FB92` | | `process.executable.name` | ![Development](https://img.shields.io/badge/-development-blue) | string | The name of the process executable. On Linux based systems, this SHOULD be set to the base name of the target of `/proc/[pid]/exe`. On Windows, this SHOULD be set to the base name of `GetProcessImageFileNameW`. | `otelcol` | | `process.executable.path` | ![Development](https://img.shields.io/badge/-development-blue) | string | The full path to the process executable. On Linux based systems, can be set to the target of `proc/[pid]/exe`. On Windows, can be set to the result of `GetProcessImageFileNameW`. | `/usr/bin/cmd/otelcol` | +| `process.executable.version` | ![Development](https://img.shields.io/badge/-development-blue) | string | The file version of the process executable. | `1.0.1` | | `process.exit.code` | ![Development](https://img.shields.io/badge/-development-blue) | int | The exit code of the process. | `127` | | `process.exit.time` | ![Development](https://img.shields.io/badge/-development-blue) | string | The date and time the process exited, in ISO 8601 format. | `2023-11-21T09:26:12.315Z` | | `process.group_leader.pid` | ![Development](https://img.shields.io/badge/-development-blue) | int | The PID of the process's group leader. This is also the process group ID (PGID) of the process. | `23` | diff --git a/model/process/registry.yaml b/model/process/registry.yaml index a4784dc3d0..fc58f4464f 100644 --- a/model/process/registry.yaml +++ b/model/process/registry.yaml @@ -76,6 +76,12 @@ groups: be set to the target of `proc/[pid]/exe`. On Windows, can be set to the result of `GetProcessImageFileNameW`. examples: ['/usr/bin/cmd/otelcol'] + - id: process.executable.version + type: string + stability: development + brief: > + The file version of the process executable. + examples: ['1.0.1'] - id: process.command type: string stability: development