Public | Automated Build

Last pushed: 12 hours ago
Short Description
Short description is empty for this repo.
Full Description

Node exporter

Prometheus exporter for machine metrics, written in Go with pluggable metric

Building and running

./node_exporter <flags>

Running tests

make test

Available collectors

By default the build will include the native collectors that expose information
from /proc.

Which collectors are used is controlled by the --collectors.enabled flag.

Enabled by default

Name Description
attributes Exposes attributes from the configuration file. Deprecated, use textfile module instead.
diskstats Exposes disk I/O statistics from /proc/diskstats.
filesystem Exposes filesystem statistics, such as disk space used.
loadavg Exposes load average.
meminfo Exposes memory statistics from /proc/meminfo.
netdev Exposes network interface statistics from /proc/netstat, such as bytes transferred.
netstat Exposes network statistics from /proc/net/netstat. This is the same information as netstat -s.
stat Exposes various statistics from /proc/stat. This includes CPU usage, boot time, forks and interrupts.
textfile Exposes statistics read from local disk. The flag must be set.
time Exposes the current system time.

Disabled by default

Name Description
bonding Exposes the number of configured and active slaves of Linux bonding interfaces.
gmond Exposes statistics from Ganglia.
interrupts Exposes detailed interrupts statistics from /proc/interrupts.
lastlogin Exposes the last time there was a login.
megacli Exposes RAID statistics from MegaCLI.
ntp Exposes time drift from an NTP server.
runit Exposes service status from runit.

Textfile Collector

The textfile collector is similar to the Pushgateway,
in that it allows exporting of statistics from batch jobs. It can also be used
to export static metrics, such as what role a machine has. The Pushgateway
should be used for service-level metrics. The textfile module is for metrics
that are tied to a machine.

To use set the flag on the Node exporter. The
collector will parse all files in that directory matching the glob *.prom
using the text

To atomically push completion time for a cron job:

echo my_batch_job_completion_time $(date +%s) > /path/to/directory/my_batch_job.prom.$$
mv /path/to/directory/my_batch_job.prom.$$ /path/to/directory/my_batch_job.prom

To statically set roles for a machine using labels:

echo 'role{role="application_server"} 1' > /path/to/directory/role.prom.$$
mv /path/to/directory/role.prom.$$ /path/to/directory/role.prom
Docker Pull Command
Source Repository