NOTICE Semantic Conventions are moving to a new location.
No changes to this document are allowed.
Description: A host is defined as a computing instance. For example, physical servers, virtual machines, switches or disk array.
|string||Unique host ID. For Cloud, this must be the instance_id assigned by the cloud provider. For non-containerized systems, this should be the ||Recommended|
|string||Name of the host. On Unix systems, it may contain what the hostname command returns, or the fully qualified hostname, or another name specified by the user.||Recommended|
|string||Type of host. For Cloud, this must be the machine type.||Recommended|
|string||The CPU architecture the host system is running on.||Recommended|
|string||Name of the VM image or OS install the host was instantiated from.||Recommended|
|string||VM image ID or host OS image ID. For Cloud, this value is from the provider.||Recommended|
|string||The version string of the VM image or host OS as defined in Version Attributes.||Recommended|
host.arch 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.
Collecting host.id from non-containerized systems
Non-privileged Machine ID Lookup
host.id for non-containerized systems non-privileged lookups
of the machine id are preferred. SDK detector implementations MUST use the
sources listed below to obtain the machine id.
|Linux||contents of ||contents of |
|BSD||contents of ||output of |
Privileged Machine ID Lookup
host.id can be looked up using privileged sources. For example, Linux
systems can use the output of
dmidecode -t system,
dmidecode -t baseboard,
dmidecode -t chassis, or read the corresponding data from the filesystem
cat /sys/devices/virtual/dmi/id/product_uuid, etc), however, SDK resource
detector implementations MUST not collect
host.id from privileged sources. If
privileged lookup of
host.id is required, the value should be injected via the
OTEL_RESOURCE_ATTRIBUTES environment variable.