The VM Collection Agent runs one OpenTelemetry Collector on each virtual machine or server: as a systemd service on Linux, as a process on macOS, and as a Windows service or a process on Windows. It collects the host's metrics, receives telemetry from your instrumented applications, and sends everything to SigNoz. On Linux, it also collects the warnings and errors in the systemd journal.
The VM Collection Agent primarily performs the following:
- Collects host metrics such as CPU, memory, disk, filesystem, network, and load from the host.
- Collects the warnings and errors that services write to the systemd journal on Linux hosts.
- Acts as a gateway to send traces, metrics, and logs from your applications to SigNoz.
How it works

Agent (systemd service)
On Linux, the agent runs as a systemd service on each host and collects:
- Host metrics: CPU, memory, disk I/O, filesystem usage, network, load, paging, per-process usage, process counts, and uptime, via
hostmetrics. - Host logs: Journal entries at priority warning and above, via
journald. Each record'sservice.nameresource attribute is its systemd unit without.service, or its program name when it has no unit. The agent leaves out its own entries. - OTLP: Traces, metrics, and logs from instrumented applications, over OTLP/gRPC (4317) and OTLP/HTTP (4318).
- Resource attributes:
host.name,host.id, andos.typeon every signal, and on AWS, GCP, and Azure virtual machines the cloud provider, region, and instance.
Agent (process or Windows service)
On macOS and Windows, the agent runs as a process on each host, or as a Windows service when you install it with the MSI, and collects:
- Host metrics: CPU, memory, disk I/O, filesystem usage, network, load, paging, per-process CPU and memory, and uptime, via
hostmetrics, plus process counts on macOS. - OTLP: Traces, metrics, and logs from instrumented applications, over OTLP/gRPC (4317) and OTLP/HTTP (4318).
- Resource attributes: The same as on Linux.