Get control of your servers. Simple. Effective. Awesome.
C Python JavaScript HTML CSS Shell Other
Latest commit ecff88e Jan 23, 2017 @ktsaou ktsaou committed on GitHub Merge pull request #1616 from l2isbad/tomcat_plugin_optimization
tomcat plugin: replace xml parse with regex
Failed to load latest commit information.
.travis Ensure ssh-agent environment available to all Dec 16, 2016
build python modules installer updated Jun 22, 2016
charts.d fixed typo in chart title Dec 24, 2016
conf.d added missing files for automake Jan 22, 2017
contrib Ensure netdata owns /var/lib/netdata/. Dec 8, 2016
diagrams split diagrams to config and actual diagram info Oct 17, 2016
hooks Add hooks and packaging scripts Jan 24, 2016
m4 added autotools rule to enable profiling/debugging Jan 22, 2017
node.d improvements suggested by codeclimate Jan 7, 2017
packaging Stop tag-signing attempt in travis build Jan 22, 2017
plugins.d added PR number Jan 12, 2017
profile allow expressions to test for inf and nan values Aug 15, 2016
python.d tomcat plugin: replace xml parse with regex Jan 23, 2017
src added ARL debugging info and errors on common pitfalls (only when -DN… Jan 22, 2017
system properly set ownership of /var/log/netdata to allow all versions of l… Dec 28, 2016
tests Fix #282 use modern arithmetic expansion in shell Apr 29, 2016
web updated copyright dates Jan 21, 2017
.codeclimate.yml improvements suggested by codeclimate Jan 7, 2017
.csslintrc added codeclimate coverage Jan 6, 2017
.eslintignore added codeclimate coverage Jan 6, 2017
.eslintrc added codeclimate coverage Jan 6, 2017
.gitignore Ignore .DS_Store Jan 10, 2017
.travis.yml Ensure ssh-agent environment available to all Dec 16, 2016
CMakeLists.txt adaptive resortable list implementation; used it in cgroups and vmstat Jan 20, 2017
COPYING added COPYING, fixed a few typos #182 Apr 5, 2016
ChangeLog Prepare release 1.5.0 Jan 22, 2017
Dockerfile Do not reclone the current project from github, as it's already here Sep 20, 2016 updated copyright dates Jan 21, 2017 Prepare release 1.5.0 Jan 22, 2017 Prepare release 1.5.0 Jan 22, 2017 build: migrate to autotools Nov 15, 2015
configs.signatures updated configs.signatures Jan 22, 2017 Post release 1.5.0 Jan 22, 2017 updated version Jan 2, 2017 Do not reclone the current project from github, as it's already here Sep 20, 2016 Merge pull request #1594 from ktsaou/master Jan 22, 2017 Prepare release 1.5.0 Jan 22, 2017

netdata Build Status Coverity Scan Build Status Code Climate Docker Pulls

New to netdata? Here is a live demo:

netdata is a system for distributed real-time performance and health monitoring. It provides unparalleled insights, in real-time, of everything happening on the system it runs (including applications such as web and database servers), using modern interactive web dashboards.

netdata is fast and efficient, designed to permanently run on all systems (physical & virtual servers, containers, IoT devices), without disrupting their core function.

User base

Since May 16th 2016 (the date the global public netdata registry was released):
User Base Monitored Servers Sessions Served

in the last 24 hours:
New Users Today New Machines Today Sessions Today


Netdata is featured at GitHub's State Of The Octoverse 2016

Jan 22nd, 2017 - netdata v1.5.0 released!

  • netdata now runs on FreeBSD and MacOS
  • netdata now supports Graphite, OpenTSDB, Prometheus and compatible backends
  • netdata now monitors SystemD Services
  • new plugins: fping, postgres, varnish, elasticsearch, haproxy, freeradius, mdstat, ISC dhcpd, fail2ban, openvpn, NUMA memory, CPU Idle States, gunicorn, ECC memory errors, IPC semaphores, uptime
  • improved plugins: netfilter conntrack, mysql/mariadb, ipfs, cpufreq, hddtemp, sensors, nginx, nginx_log, phpfpm, redis, dovecot, containers and cgroups, disk space, apps.plugin, tc (QoS) and almost all internal plugins (memory, IPv4 and IPv6, network interfaces, QoS, etc)
  • dozens of new and improved alarms (including performance monitoring alarms for mysql)
  • new alarm notifications:,,,, hipchat, kafka
  • dozens more improvements and performance optimizations


  • Stunning interactive bootstrap dashboards
    mouse and touch friendly, in 2 themes: dark, light

  • Amazingly fast
    responds to all queries in less than 0.5 ms per metric, even on low-end hardware

  • Highly efficient
    collects thousands of metrics per server per second, with just 1% CPU utilization of a single core, a few MB of RAM and no disk I/O at all

  • Sophisticated alarming
    supports dynamic thresholds, hysteresis, alarm templates, multiple role-based notification methods (such as email,,,,,

  • Extensible
    you can monitor anything you can get a metric for, using its Plugin API (anything can be a netdata plugin, BASH, python, perl, node.js, java, Go, ruby, etc)

  • Embeddable
    it can run anywhere a Linux kernel runs (even IoT) and its charts can be embedded on your web pages too

  • Customizable
    custom dashboards can be built using simple HTML (no javascript necessary)

  • Zero configuration
    auto-detects everything, it can collect up to 5000 metrics per server out of the box

  • Zero dependencies
    it is even its own web server, for its static web files and its web API

  • Zero maintenance
    you just run it, it does the rest

  • scales to infinity
    requiring minimal central resources

  • back-ends supported
    can archive its metrics on graphite or opentsdb, in the same or lower detail (lower: to prevent it from congesting these servers due to the amount of data collected)


What does it monitor?

netdata monitors several thousands of metrics per device. All these metrics are collected and visualized in real-time.

Almost all metrics are auto-detected, without any configuration.

This is a list of what it currently monitors:

  • CPU
    usage, interrupts, softirqs, frequency, total and per core

  • Memory
    RAM, swap and kernel memory usage, KSM (Kernel Samepage Merging), NUMA

  • Disks
    per disk: I/O, operations, backlog, utilization, space


  • Network interfaces
    per interface: bandwidth, packets, errors, drops


  • IPv4 networking
    bandwidth, packets, errors, fragments, tcp: connections, packets, errors, handshake, udp: packets, errors, broadcast: bandwidth, packets, multicast: bandwidth, packets

  • IPv6 networking
    bandwidth, packets, errors, fragments, ECT, udp: packets, errors, udplite: packets, errors, broadcast: bandwidth, multicast: bandwidth, packets, icmp: messages, errors, echos, router, neighbor, MLDv2, group membership, break down by type

  • Interprocess Communication - IPC
    such as semaphores and semaphores arrays

  • netfilter / iptables Linux firewall
    connections, connection tracker events, errors

  • Linux DDoS protection
    SYNPROXY metrics

  • fping latencies
    for any number of hosts, showing latency, packets and packet loss


  • Processes
    running, blocked, forks, active

  • Entropy
    random numbers pool, using in cryptography

  • NFS file servers and clients
    NFS v2, v3, v4: I/O, cache, read ahead, RPC calls

  • Network QoS
    the only tool that visualizes network tc classes in realtime


  • Linux Control Groups
    containers: systemd, lxc, docker

  • Applications
    by grouping the process tree and reporting CPU, memory, disk reads, disk writes, swap, threads, pipes, sockets - per group


  • Users and User Groups resource usage
    by summarizing the process tree per user and group, reporting: CPU, memory, disk reads, disk writes, swap, threads, pipes, sockets

  • Apache and lighttpd web servers
    mod-status (v2.2, v2.4) and cache log statistics, for multiple servers

  • Nginx web servers
    stub-status, for multiple servers

  • Tomcat
    accesses, threads, free memory, volume

  • mySQL databases
    multiple servers, each showing: bandwidth, queries/s, handlers, locks, issues, tmp operations, connections, binlog metrics, threads, innodb metrics, and more

  • Postgres databases
    multiple servers, each showing: per database statistics (connections, tuples read - written - returned, transactions, locks), backend processes, indexes, tables, write ahead, background writer and more

  • Redis databases
    multiple servers, each showing: operations, hit rate, memory, keys, clients, slaves

  • memcached databases
    multiple servers, each showing: bandwidth, connections, items

  • ISC Bind name servers
    multiple servers, each showing: clients, requests, queries, updates, failures and several per view metrics

  • Postfix email servers
    message queue (entries, size)

  • exim email servers
    message queue (emails queued)

  • Dovecot POP3/IMAP servers

  • IPFS
    bandwidth, peers

  • Squid proxy servers
    multiple servers, each showing: clients bandwidth and requests, servers bandwidth and requests

  • Hardware sensors
    temperature, voltage, fans, power, humidity

  • NUT and APC UPSes
    load, charge, battery voltage, temperature, utility metrics, output metrics

    multiple instances, each reporting connections, requests, performance

  • hddtemp
    disk temperatures

  • SNMP devices
    can be monitored too (although you will need to configure these)

And you can extend it, by writing plugins that collect data from any source, using any computer language.


Use our automatic installer to build and install it on your system.

It should run on any Linux system (including IoT). It has been tested on:

  • Alpine
  • Arch Linux
  • CentOS
  • Debian
  • Fedora
  • Gentoo
  • openSUSE
  • PLD Linux
  • RedHat Enterprise Linux
  • SUSE
  • Ubuntu


Check the netdata wiki.


netdata is GPLv3+.

It re-distributes other open-source tools and libraries. Please check its License Statement.