Monitor your servers, containers, and applications, in high-resolution and in real-time! https://www.netdata.cloud/

Costa Tsaousis (ktsaou) cd7b862c4e files should be dist_noinst_* 7 years ago
.travis 5d420d2bec Enable build and deploy of self-extractor 8 years ago
build fa2b4faf58 python modules installer updated 8 years ago
charts.d cdcb97f918 fix division by zero in charts.d ap module - also optimize it to call awk once per iteration; fixes #1897 8 years ago
conf.d 4016e2d9e3 Prepare release 1.7.0 7 years ago
contrib 39cf80338c use nc -l -p PORT for compatibility 7 years ago
diagrams cd7b862c4e files should be dist_noinst_* 7 years ago
hooks 85b6ae6329 Add hooks and packaging scripts 9 years ago
installer 43d9f5c94f install openrc file on alpine; fixes #2476 7 years ago
m4 2d7028c2ab database flags are now using atomic operations when available 7 years ago
makeself cd7b862c4e files should be dist_noinst_* 7 years ago
node.d 4016e2d9e3 Prepare release 1.7.0 7 years ago
packaging 135d0107de Fix script to build release correctly on OSX 7 years ago
plugins.d 47c1365347 alarm-notify.sh now enables debug mode when NETDATA_ALARM_NOTIFY_DEBUG=1 7 years ago
profile b689036d47 operational statsd with custom apps 7 years ago
python.d b7e6ad1abe python.d.plugin bugfix: wrap urllib3.disable_warnings in try/except 7 years ago
src 18c948e369 allow boolean config options to accept: yes, true, on, auto, on demand as positive - also case incesitive; fixes #2493 7 years ago
system 1e453fb9c0 add mysql.service to the list of services that should be started before netdata; fixes #1945 8 years ago
tests cd7b862c4e files should be dist_noinst_* 7 years ago
web 4b921e491f containers and VMs now have gauge charts monitoring their CPU, memory and disk I/O 7 years ago
.codacy.yml 9057cf2743 updated .codacy.yml to ignore all third-party files 7 years ago
.codeclimate.yml 5b3806aac0 urllib3 directory added to the codeclimate excluded paths 7 years ago
.csslintrc 9a7c81208d added codeclimate coverage 8 years ago
.eslintignore 9a7c81208d added codeclimate coverage 8 years ago
.eslintrc 9a7c81208d added codeclimate coverage 8 years ago
.gitignore e2b1a8d825 makefiles re-organization 7 years ago
.travis.yml 2260cea186 Fix build with latest travis images 7 years ago
CMakeLists.txt d3679c1d71 prometheus support all data sources netdata supports for the other backends: as collected, average, sum. The prometheus metrics format differs between as collected and the other types so that average and sum fixe #1519 7 years ago
COPYING 248f78f2e4 added COPYING, fixed a few typos #182 9 years ago
ChangeLog 4016e2d9e3 Prepare release 1.7.0 7 years ago
Dockerfile f4d5d6b4c8 Do not reclone the current project from github, as it's already here 8 years ago
LICENSE 1c4ac67196 Rename LICENSE.txt to LICENSE 7 years ago
LICENSE-REDISTRIBUTED.md b18b6585e7 bundle urrlib3: license-redistributed update 7 years ago
LICENSE.md 3ed012abe7 minor aesthetic changes to license files 7 years ago
Makefile.am e2b1a8d825 makefiles re-organization 7 years ago
README.md a4181fd61e updated readme for v1.7 release 7 years ago
autogen.sh b773ed768e make sure /etc/profile does not change the working directory; fixes #1715 8 years ago
configs.signatures 70cb41c1af updated configs.signatures 7 years ago
configure.ac e2b1a8d825 makefiles re-organization 7 years ago
coverity-scan.sh 4098feb547 use all cpus for coverity scan 7 years ago
docker-build.sh f4d5d6b4c8 Do not reclone the current project from github, as it's already here 8 years ago
kickstart-static64.sh 6050b1fa1a allow kickstart-static64.sh to run non-interactive; fixes #2305 7 years ago
kickstart.sh 8385d20e06 kickstart.sh should also run the installer; fixes #2387 7 years ago
netdata-installer.sh d2704cbfe6 uninstaller removes netdata-updater from cron 7 years ago
netdata.spec.in 4016e2d9e3 Prepare release 1.7.0 7 years ago

README.md

netdata Build Status Coverity Scan Build Status Codacy Badge Code Climate license

New to netdata? Here is a live demo: http://my-netdata.io

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.

netdata runs on Linux, FreeBSD, and MacOS.

Twitter Follow [analytics]()


User base

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

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


News

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

Jul 16th, 2017 - netdata v1.7.0 released!

  • netdata is now a fully featured statsd server - read more here
  • netdata now monitors ZFS of Linux and FreeBSD
  • netdata now monitors ElasticSearch
  • netdata now monitors RabbitMQ
  • netdata now monitors Go applications (via expvar) - read more here
  • netdata now monitors squid logs
  • netdata now monitors samba
  • several backends improvements and enhancements, including metrics filtering
  • prometheus backend support has been rewritten
  • alarm notifications now support custom hooks to execute shell commands in parallel with all other notification methods
  • dozens of new and improved plugins
  • dozens of new and improved alarms
  • dozens more improvements and performance optimizations

Features

  • 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
    hundreds of alarms, out of the box!
    supports dynamic thresholds, hysteresis, alarm templates, multiple role-based notification methods (such as email, slack.com, pushover.net, pushbullet.com, telegram.org, twilio.com, messagebird.com)

  • 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

  • several operating modes
    autonomous host monitoring, headless data collector, forwarding proxy, store and forward proxy, central multi-host monitoring, in all possible configurations. Each node may have different metrics retention policy and run with or without health monitoring.

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

netdata


What does it monitor?

netdata collects 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, CPU states

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

  • Disks
    per disk: I/O, operations, backlog, utilization, space, software RAID (md)

sda

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

dsl0

  • 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

image

  • 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

qos-tc-classes

  • 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

apps

  • 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

  • web server log files
    extracting in real-time, web server performance metrics and applying several health checks

  • 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

  • mongodb
    operations, clients, transactions, cursors, connections, asserts, locks, etc

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

  • elasticsearch
    search and index performance, latency, timings, cluster statistics, threads statistics, etc

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

  • NSD name servers
    queries, zones, protocols, query types, transfers, etc.

  • Postfix email servers
    message queue (entries, size)

  • exim email servers
    message queue (emails queued)

  • Dovecot POP3/IMAP servers

  • ISC dhcpd
    pools utilization, leases, etc.

  • IPFS
    bandwidth, peers

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

  • HAproxy
    bandwidth, sessions, backends, etc

  • varnish
    threads, sessions, hits, objects, backends, etc

  • OpenVPN
    status per tunnel

  • Hardware sensors
    lm_sensors and IPMI: temperature, voltage, fans, power, humidity

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

  • PHP-FPM
    multiple instances, each reporting connections, requests, performance

  • hddtemp
    disk temperatures

  • smartd
    disk S.M.A.R.T. values

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

  • statsd
    netdata is a fully featured statsd server

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


netdata infographic

This is a high level overview of netdata feature set and architecture. Click it to to interact with it (it has direct links to documentation).

netdata-overview


Installation

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

Documentation

Check the netdata wiki.

License

netdata is GPLv3+.

It re-distributes other open-source tools and libraries. Please check the third party licenses.