View Source OpenTelemetry.SemConv.Incubating.ProcessAttributes (OpenTelemetry.SemConv v1.27.0)
OpenTelemetry Semantic Conventions for Process attributes.
Summary
Types
Specifies whether the context switches for this data point were voluntary or involuntary.
Deprecated, use cpu.mode
instead.
The type of page fault for this data point. Type major
is for major/hard page faults, and minor
is for minor/soft page faults.
Functions
The command used to launch the process (i.e. the command name). On Linux based systems, can be set to the zeroth string in proc/[pid]/cmdline
. On Windows, can be set to the first parameter extracted from GetCommandLineW
.
All the command arguments (including the command/executable itself) as received by the process. On Linux-based systems (and some other Unixoid systems supporting procfs), can be set according to the list of null-delimited strings extracted from proc/[pid]/cmdline
. For libc-based executables, this would be the full argv vector passed to main
.
The full command used to launch the process as a single string representing the full command. On Windows, can be set to the result of GetCommandLineW
. Do not set this if you have to assemble it just for monitoring; use process.command_args
instead.
Specifies whether the context switches for this data point were voluntary or involuntary.
The date and time the process was created, in ISO 8601 format.
The name of the process executable. On Linux based systems, can be set to the Name
in proc/[pid]/status
. On Windows, can be set to the base name of GetProcessImageFileNameW
.
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
.
The exit code of the process.
The date and time the process exited, in ISO 8601 format.
The PID of the process's group leader. This is also the process group ID (PGID) of the process.
Whether the process is connected to an interactive shell.
The username of the user that owns the process.
The type of page fault for this data point. Type major
is for major/hard page faults, and minor
is for minor/soft page faults.
Parent Process identifier (PPID).
Process identifier (PID).
The real user ID (RUID) of the process.
The username of the real user of the process.
An additional description about the runtime of the process, for example a specific vendor customization of the runtime environment.
The name of the runtime of this process.
The version of the runtime of this process, as returned by the runtime without modification.
The saved user ID (SUID) of the process.
The username of the saved user.
The PID of the process's session leader. This is also the session ID (SID) of the process.
The effective user ID (EUID) of the process.
The username of the effective user of the process.
Virtual process identifier.
Types
@type process_context_switch_type_values() :: %{
voluntary: :voluntary,
involuntary: :involuntary
}
Specifies whether the context switches for this data point were voluntary or involuntary.
Enum Values
@type process_cpu_state_values() :: %{system: :system, user: :user, wait: :wait}
Deprecated, use cpu.mode
instead.
Enum Values
@type process_paging_fault_type_values() :: %{major: :major, minor: :minor}
The type of page fault for this data point. Type major
is for major/hard page faults, and minor
is for minor/soft page faults.
Enum Values
Functions
@spec process_command() :: :"process.command"
The command used to launch the process (i.e. the command name). On Linux based systems, can be set to the zeroth string in proc/[pid]/cmdline
. On Windows, can be set to the first parameter extracted from GetCommandLineW
.
Value type
Value must be of type atom() | String.t()
.
Examples
["cmd/otelcol"]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_command()
:"process.command"
?PROCESS_COMMAND.
'process.command'
@spec process_command_args() :: :"process.command_args"
All the command arguments (including the command/executable itself) as received by the process. On Linux-based systems (and some other Unixoid systems supporting procfs), can be set according to the list of null-delimited strings extracted from proc/[pid]/cmdline
. For libc-based executables, this would be the full argv vector passed to main
.
Value type
Value must be of type [atom() | String.t()]
.
Examples
["cmd/otecol", "--config=config.yaml"]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_command_args()
:"process.command_args"
?PROCESS_COMMAND_ARGS.
'process.command_args'
@spec process_command_line() :: :"process.command_line"
The full command used to launch the process as a single string representing the full command. On Windows, can be set to the result of GetCommandLineW
. Do not set this if you have to assemble it just for monitoring; use process.command_args
instead.
Value type
Value must be of type atom() | String.t()
.
Examples
["C:\cmd\otecol --config="my directory\config.yaml""]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_command_line()
:"process.command_line"
?PROCESS_COMMAND_LINE.
'process.command_line'
@spec process_context_switch_type() :: :"process.context_switch_type"
Specifies whether the context switches for this data point were voluntary or involuntary.
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_context_switch_type()
:"process.context_switch_type"
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_context_switch_type_values().voluntary
:voluntary
iex> %{OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_context_switch_type() => OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_context_switch_type_values().voluntary}
%{:"process.context_switch_type" => :voluntary}
?PROCESS_CONTEXT_SWITCH_TYPE.
'process.context_switch_type'
?PROCESS_CONTEXT_SWITCH_TYPE_VALUES_VOLUNTARY.
'voluntary'
#{?PROCESS_CONTEXT_SWITCH_TYPE => ?PROCESS_CONTEXT_SWITCH_TYPE_VALUES_VOLUNTARY}.
#{'process.context_switch_type' => 'voluntary'}
@spec process_context_switch_type_values() :: process_context_switch_type_values()
@spec process_cpu_state() :: :"process.cpu.state"
@spec process_cpu_state_values() :: process_cpu_state_values()
@spec process_creation_time() :: :"process.creation.time"
The date and time the process was created, in ISO 8601 format.
Value type
Value must be of type atom() | String.t()
.
Examples
["2023-11-21T09:25:34.853Z"]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_creation_time()
:"process.creation.time"
?PROCESS_CREATION_TIME.
'process.creation.time'
@spec process_executable_name() :: :"process.executable.name"
The name of the process executable. On Linux based systems, can be set to the Name
in proc/[pid]/status
. On Windows, can be set to the base name of GetProcessImageFileNameW
.
Value type
Value must be of type atom() | String.t()
.
Examples
["otelcol"]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_executable_name()
:"process.executable.name"
?PROCESS_EXECUTABLE_NAME.
'process.executable.name'
@spec process_executable_path() :: :"process.executable.path"
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
.
Value type
Value must be of type atom() | String.t()
.
Examples
["/usr/bin/cmd/otelcol"]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_executable_path()
:"process.executable.path"
?PROCESS_EXECUTABLE_PATH.
'process.executable.path'
@spec process_exit_code() :: :"process.exit.code"
The exit code of the process.
Value type
Value must be of type integer()
.
Examples
[127]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_exit_code()
:"process.exit.code"
?PROCESS_EXIT_CODE.
'process.exit.code'
@spec process_exit_time() :: :"process.exit.time"
The date and time the process exited, in ISO 8601 format.
Value type
Value must be of type atom() | String.t()
.
Examples
["2023-11-21T09:26:12.315Z"]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_exit_time()
:"process.exit.time"
?PROCESS_EXIT_TIME.
'process.exit.time'
@spec process_group_leader_pid() :: :"process.group_leader.pid"
The PID of the process's group leader. This is also the process group ID (PGID) of the process.
Value type
Value must be of type integer()
.
Examples
[23]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_group_leader_pid()
:"process.group_leader.pid"
?PROCESS_GROUP_LEADER_PID.
'process.group_leader.pid'
@spec process_interactive() :: :"process.interactive"
Whether the process is connected to an interactive shell.
Value type
Value must be of type boolean()
.
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_interactive()
:"process.interactive"
?PROCESS_INTERACTIVE.
'process.interactive'
@spec process_owner() :: :"process.owner"
The username of the user that owns the process.
Value type
Value must be of type atom() | String.t()
.
Examples
["root"]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_owner()
:"process.owner"
?PROCESS_OWNER.
'process.owner'
@spec process_paging_fault_type() :: :"process.paging.fault_type"
The type of page fault for this data point. Type major
is for major/hard page faults, and minor
is for minor/soft page faults.
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_paging_fault_type()
:"process.paging.fault_type"
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_paging_fault_type_values().major
:major
iex> %{OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_paging_fault_type() => OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_paging_fault_type_values().major}
%{:"process.paging.fault_type" => :major}
?PROCESS_PAGING_FAULT_TYPE.
'process.paging.fault_type'
?PROCESS_PAGING_FAULT_TYPE_VALUES_MAJOR.
'major'
#{?PROCESS_PAGING_FAULT_TYPE => ?PROCESS_PAGING_FAULT_TYPE_VALUES_MAJOR}.
#{'process.paging.fault_type' => 'major'}
@spec process_paging_fault_type_values() :: process_paging_fault_type_values()
@spec process_parent_pid() :: :"process.parent_pid"
Parent Process identifier (PPID).
Value type
Value must be of type integer()
.
Examples
[111]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_parent_pid()
:"process.parent_pid"
?PROCESS_PARENT_PID.
'process.parent_pid'
@spec process_pid() :: :"process.pid"
Process identifier (PID).
Value type
Value must be of type integer()
.
Examples
[1234]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_pid()
:"process.pid"
?PROCESS_PID.
'process.pid'
@spec process_real_user_id() :: :"process.real_user.id"
The real user ID (RUID) of the process.
Value type
Value must be of type integer()
.
Examples
[1000]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_real_user_id()
:"process.real_user.id"
?PROCESS_REAL_USER_ID.
'process.real_user.id'
@spec process_real_user_name() :: :"process.real_user.name"
The username of the real user of the process.
Value type
Value must be of type atom() | String.t()
.
Examples
["operator"]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_real_user_name()
:"process.real_user.name"
?PROCESS_REAL_USER_NAME.
'process.real_user.name'
@spec process_runtime_description() :: :"process.runtime.description"
An additional description about the runtime of the process, for example a specific vendor customization of the runtime environment.
Value type
Value must be of type atom() | String.t()
.
Examples
Eclipse OpenJ9 Eclipse OpenJ9 VM openj9-0.21.0
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_runtime_description()
:"process.runtime.description"
?PROCESS_RUNTIME_DESCRIPTION.
'process.runtime.description'
@spec process_runtime_name() :: :"process.runtime.name"
The name of the runtime of this process.
Value type
Value must be of type atom() | String.t()
.
Examples
["OpenJDK Runtime Environment"]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_runtime_name()
:"process.runtime.name"
?PROCESS_RUNTIME_NAME.
'process.runtime.name'
@spec process_runtime_version() :: :"process.runtime.version"
The version of the runtime of this process, as returned by the runtime without modification.
Value type
Value must be of type atom() | String.t()
.
Examples
14.0.2
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_runtime_version()
:"process.runtime.version"
?PROCESS_RUNTIME_VERSION.
'process.runtime.version'
@spec process_saved_user_id() :: :"process.saved_user.id"
The saved user ID (SUID) of the process.
Value type
Value must be of type integer()
.
Examples
[1002]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_saved_user_id()
:"process.saved_user.id"
?PROCESS_SAVED_USER_ID.
'process.saved_user.id'
@spec process_saved_user_name() :: :"process.saved_user.name"
The username of the saved user.
Value type
Value must be of type atom() | String.t()
.
Examples
["operator"]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_saved_user_name()
:"process.saved_user.name"
?PROCESS_SAVED_USER_NAME.
'process.saved_user.name'
@spec process_session_leader_pid() :: :"process.session_leader.pid"
The PID of the process's session leader. This is also the session ID (SID) of the process.
Value type
Value must be of type integer()
.
Examples
[14]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_session_leader_pid()
:"process.session_leader.pid"
?PROCESS_SESSION_LEADER_PID.
'process.session_leader.pid'
@spec process_user_id() :: :"process.user.id"
The effective user ID (EUID) of the process.
Value type
Value must be of type integer()
.
Examples
[1001]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_user_id()
:"process.user.id"
?PROCESS_USER_ID.
'process.user.id'
@spec process_user_name() :: :"process.user.name"
The username of the effective user of the process.
Value type
Value must be of type atom() | String.t()
.
Examples
["root"]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_user_name()
:"process.user.name"
?PROCESS_USER_NAME.
'process.user.name'
@spec process_vpid() :: :"process.vpid"
Virtual process identifier.
Value type
Value must be of type integer()
.
Notes
The process ID within a PID namespace. This is not necessarily unique across all processes on the host but it is unique within the process namespace that the process exists within.
Examples
[12]
iex> OpenTelemetry.SemConv.Incubating.ProcessAttributes.process_vpid()
:"process.vpid"
?PROCESS_VPID.
'process.vpid'