System Check

Supported OS Linux Mac OS Windows

Overview

Get metrics from your base system about the CPU, IO, load, memory, swap, and uptime. The following checks are also system-related:

Setup

Installation

The System check is included in the Datadog Agent package. No additional installation is needed on your server.

Data Collected

Metrics

Events

The System check does not include any events.

Service checks

The System check does not include any service checks.

Tags

All system metrics are automatically tagged with host:<HOST_NAME>. Additionally, the following namespaces are tagged with device:<DEVICE_NAME>.

  • system.disk.*
  • system.fs.inodes.*
  • system.io.*
  • system.net.*

System Core

This check collects the number of CPU cores on a host and CPU times, such as system, user, idle, etc.

Setup

Installation

The system core check is included in the Datadog Agent package. No additional installation is needed on your server.

Configuration

  1. Edit the system_core.d/conf.yaml file in the conf.d/ folder at the root of your Agent’s configuration directory. See the sample system_core.d/conf.yaml for all available configuration options. Note: At least one entry is required under instances to enable the check, for example:

    init_config:
    instances:
        - foo: bar
        tags:
            - key:value
    
  2. Restart the Agent.

Validation

Run the Agent’s status subcommand and look for system_core under the Checks section.

Data Collected

Metrics

system.core.count
(gauge)
The number of CPU cores on the host
Shown as core
system.core.user
(gauge)
The percentage of time a given CPU core has spent in user mode
Shown as percent
system.core.user.total
(gauge)
The percentage of time the whole CPU has spent in user mode
Shown as percent
system.core.system
(gauge)
The percentage of time a given CPU core has spent in kernel mode
Shown as percent
system.core.system.total
(gauge)
The percentage of time the whole CPU has spent in kernel mode
Shown as percent
system.core.idle
(gauge)
The percentage of time a given CPU core has spent idle
Shown as percent
system.core.idle.total
(gauge)
The percentage of time the whole CPU has spent idle
Shown as percent
system.core.nice
(gauge)
[Unix] The percentage of time a given CPU core has spent in niced (prioritized) processes in user mode
Shown as percent
system.core.nice.total
(gauge)
[Unix] The percentage of time the whole CPU has spent in niced (prioritized) processes in user mode
Shown as percent
system.core.guest
(gauge)
[Linux] The percentage of time a given CPU core has spent running a virtual CPU for guest operating systems under the control of the Linux kernel
Shown as percent
system.core.guest.total
(gauge)
[Linux] The percentage of time the whole CPU has spent running a virtual CPU for guest operating systems under the control of the Linux kernel
Shown as percent
system.core.iowait
(gauge)
[Linux] The percentage of time a given CPU core has spent waiting for I/O to complete
Shown as percent
system.core.iowait.total
(gauge)
[Linux] The percentage of time the whole CPU has spent waiting for I/O to complete
Shown as percent
system.core.irq
(gauge)
[Linux, BSD] The percentage of time a given CPU core has spent servicing hardware interrupts
Shown as percent
system.core.irq.total
(gauge)
[Linux, BSD] The percentage of time the whole CPU has spent servicing hardware interrupts
Shown as percent
system.core.softirq
(gauge)
[Linux, BSD] The percentage of time a given CPU core has spent servicing software interrupts
Shown as percent
system.core.softirq.total
(gauge)
[Linux, BSD] The percentage of time the whole CPU has spent servicing software interrupts
Shown as percent
system.core.guest_nice
(gauge)
[Linux] The percentage of time a given CPU core has spent running a niced guest
Shown as percent
system.core.guest_nice.total
(gauge)
[Linux] The percentage of time the whole CPU has spent running running a niced guest
Shown as percent
system.core.steal
(gauge)
[Linux] The percentage of time a given CPU core has spent running a virtual CPU for guest operating systems under the control of the Linux kernel
Shown as percent
system.core.steal.total
(gauge)
[Linux] The percentage of time a given CPU core has spent running a virtual CPU for guest operating systems under the control of the Linux kernel
Shown as percent
system.core.interrupt
(gauge)
[Windows] The percentage of time a given CPU core has spent servicing hardware interrupts
Shown as percent
system.core.interrupt.total
(gauge)
[Windows] The percentage of time the whole CPU has spent servicing hardware interrupts
Shown as percent
system.core.dpc
(gauge)
[Windows] The percentage of time a given CPU core has spent servicing deferred procedure calls (DPCs)
Shown as percent
system.core.dpc.total
(gauge)
[Windows] The percentage of time the whole CPU has spent servicing deferred procedure calls (DPCs)
Shown as percent
system.core.frequency
(gauge)
The frequency or clock speed a given CPU
Shown as megahertz

Depending on the platform, the check may collect other CPU time metrics, such as system.core.interrupt on Windows, system.core.iowait on Linux, etc.

Depending on the platform, the check may collect other CPU time metrics, such as system.core.interrupt on Windows, system.core.iowait on Linux, etc.

Events

The System Core check does not include any events.

Service checks

datadog.agent.up

Returns OK if the Agent is running properly. Alerts are created if the host does not respond.

Statuses: ok, critical

System Swap

This check monitors the number of bytes a host has swapped in and out.

Setup

Installation

The system swap check is included in the Datadog Agent package. No additional installation is needed on your server.

Configuration

  1. Edit the system_swap.d/conf.yaml file in the conf.d/ folder at the root of your Agent’s configuration directory. See the sample system_swap.d/conf.yaml for all available configuration options. Note: This check takes no initial configuration.

  2. Restart the Agent.

Validation

Run the Agent’s status subcommand and look for system_swap under the Checks section.

Data Collected

Metrics

system.swap.swapped_in
(gauge)
Bytes of memory swapped in
system.swap.swapped_out
(gauge)
Bytes of memory swapped out

Events

The System Swap check does not include any events.

Service checks

The System Swap check does not include any service checks.