]> arthur.barton.de Git - netdata.git/blob - README.md
Merge pull request #1589 from l2isbad/varnish_plugin
[netdata.git] / README.md
1 # netdata [![Build Status](https://travis-ci.org/firehol/netdata.svg?branch=master)](https://travis-ci.org/firehol/netdata) [![Coverity Scan Build Status](https://scan.coverity.com/projects/9140/badge.svg)](https://scan.coverity.com/projects/firehol-netdata) [![Code Climate](https://codeclimate.com/github/firehol/netdata/badges/gpa.svg)](https://codeclimate.com/github/firehol/netdata) [![Docker Pulls](https://img.shields.io/docker/pulls/titpetric/netdata.svg)](https://hub.docker.com/r/titpetric/netdata/)
2 > *New to netdata? Here is a live demo: [http://my-netdata.io](http://my-netdata.io)*
3
4 **netdata** is a system for **distributed real-time performance and health monitoring**.
5 It provides **unparalleled insights, in real-time**, of everything happening on the
6 system it runs (including applications such as web and database servers), using
7 **modern interactive web dashboards**.
8
9 _netdata is **fast** and **efficient**, designed to permanently run on all systems
10 (**physical** & **virtual** servers, **containers**, **IoT** devices), without
11 disrupting their core function._
12
13 ---
14
15 ## User base
16
17 *Since May 16th 2016 (the date the [global public netdata registry](https://github.com/firehol/netdata/wiki/mynetdata-menu-item) was released):*<br/>
18 [![User Base](https://registry.my-netdata.io/api/v1/badge.svg?chart=netdata.registry_entries&dimensions=persons&label=user%20base&units=null&value_color=blue&precision=0&v42)](https://registry.my-netdata.io/#menu_netdata_submenu_registry) [![Monitored Servers](https://registry.my-netdata.io/api/v1/badge.svg?chart=netdata.registry_entries&dimensions=machines&label=servers%20monitored&units=null&value_color=orange&precision=0&v42)](https://registry.my-netdata.io/#menu_netdata_submenu_registry) [![Sessions Served](https://registry.my-netdata.io/api/v1/badge.svg?chart=netdata.registry_sessions&label=sessions%20served&units=null&value_color=yellowgreen&precision=0&v42)](https://registry.my-netdata.io/#menu_netdata_submenu_registry)
19
20 *in the last 24 hours:*<br/>
21 [![New Users Today](http://registry.my-netdata.io/api/v1/badge.svg?chart=netdata.registry_entries&dimensions=persons&after=-86400&options=unaligned&group=incremental-sum&label=new%20users%20today&units=null&value_color=blue&precision=0&v42)](https://registry.my-netdata.io/#menu_netdata_submenu_registry) [![New Machines Today](https://registry.my-netdata.io/api/v1/badge.svg?chart=netdata.registry_entries&dimensions=machines&group=incremental-sum&after=-86400&options=unaligned&label=servers%20added%20today&units=null&value_color=orange&precision=0&v42)](https://registry.my-netdata.io/#menu_netdata_submenu_registry) [![Sessions Today](https://registry.my-netdata.io/api/v1/badge.svg?chart=netdata.registry_sessions&after=-86400&group=incremental-sum&options=unaligned&label=sessions%20served%20today&units=null&value_color=yellowgreen&precision=0&v42)](https://registry.my-netdata.io/#menu_netdata_submenu_registry)
22
23 ---
24
25 ## News
26
27 <p align="center">
28 Netdata is featured at <b><a href="https://octoverse.github.com/" target="_blank">GitHub's State Of The Octoverse 2016</a></b><br/>
29 <a href="https://octoverse.github.com/" target="_blank"><img src="https://cloud.githubusercontent.com/assets/2662304/21743260/23ebe62c-d507-11e6-80c0-76b95f53e464.png"/></a>
30 </p>
31
32 `Oct 4th, 2016` - **[netdata v1.4.0 released!](https://github.com/firehol/netdata/releases)**
33
34  - the **fastest** netdata ever (with a better look too)
35  - improved **IoT** and **containers** support
36  - **alarms** improved in almost every way
37  - new plugins: softnet netdev, extended TCP metrics, UDPLite, NFS v2, v3 client (server was there already), NFS v4 server & client, APCUPSd, RetroShare
38  - improved plugins: mysql, cgroups, hddtemp, sensors, phpfm, tc (QoS)
39
40 ---
41
42 ## Features
43
44 <p align="center">
45 <img src="https://cloud.githubusercontent.com/assets/2662304/19168687/f6a567be-8c19-11e6-8561-ce8d589e8346.gif"/>
46 </p>
47
48  - **Stunning interactive bootstrap dashboards**<br/>
49    mouse and touch friendly, in 2 themes: dark, light
50    
51  - **Amazingly fast**<br/>
52    responds to all queries in less than 0.5 ms per metric,
53    even on low-end hardware
54    
55  - **Highly efficient**<br/>
56    collects thousands of metrics per server per second,
57    with just 1% CPU utilization of a single core, a few MB of RAM and no disk I/O at all
58    
59  - **Sophisticated alarming**<br/>
60    supports dynamic thresholds, hysteresis, alarm templates,
61    multiple role-based notification methods (such as email, slack.com,
62    pushover.net, pushbullet.com telegram.org, twilio.com, messagebird.com)
63    
64  - **Extensible**<br/>
65    you can monitor anything you can get a metric for,
66    using its Plugin API (anything can be a netdata plugin,
67    BASH, python, perl, node.js, java, Go, ruby, etc)
68    
69  - **Embeddable**<br/>
70    it can run anywhere a Linux kernel runs (even IoT)
71    and its charts can be embedded on your web pages too
72    
73  - **Customizable**<br/>
74    custom dashboards can be built using simple HTML (no javascript necessary)
75    
76  - **Zero configuration**<br/>
77    auto-detects everything, it can collect up to 5000 metrics
78    per server out of the box
79    
80  - **Zero dependencies**<br/>
81    it is even its own web server, for its static web files and its web API
82    
83  - **Zero maintenance**<br/>
84    you just run it, it does the rest
85    
86  - **scales to infinity**<br/>
87    requiring minimal central resources
88    
89  - **back-ends supported**<br/>
90    can archive its metrics on `graphite` or `opentsdb`, in the same or lower detail
91    (lower: to prevent it from congesting these servers due to the amount of data collected)
92
93 ![netdata](https://cloud.githubusercontent.com/assets/2662304/14092712/93b039ea-f551-11e5-822c-beadbf2b2a2e.gif)
94
95 ---
96
97 ## What does it monitor?
98
99 netdata monitors several thousands of metrics per device.
100 All these metrics are collected and visualized in real-time.
101
102 > _Almost all metrics are auto-detected, without any configuration._
103
104 This is a list of what it currently monitors:
105
106 - **CPU**<br/>
107   usage, interrupts, softirqs, frequency, total and per core
108
109 - **Memory**<br/>
110   RAM, swap and kernel memory usage, KSM (Kernel Samepage Merging), NUMA
111
112 - **Disks**<br/>
113   per disk: I/O, operations, backlog, utilization, space
114
115    ![sda](https://cloud.githubusercontent.com/assets/2662304/14093195/c882bbf4-f554-11e5-8863-1788d643d2c0.gif)
116
117 - **Network interfaces**<br/>
118   per interface: bandwidth, packets, errors, drops
119
120    ![dsl0](https://cloud.githubusercontent.com/assets/2662304/14093128/4d566494-f554-11e5-8ee4-5392e0ac51f0.gif)
121
122 - **IPv4 networking**<br/>
123   bandwidth, packets, errors, fragments,
124   tcp: connections, packets, errors, handshake,
125   udp: packets, errors,
126   broadcast: bandwidth, packets,
127   multicast: bandwidth, packets
128
129 - **IPv6 networking**<br/>
130   bandwidth, packets, errors, fragments, ECT,
131   udp: packets, errors,
132   udplite: packets, errors,
133   broadcast: bandwidth,
134   multicast: bandwidth, packets,
135   icmp: messages, errors, echos, router, neighbor, MLDv2, group membership,
136   break down by type
137
138 - **Interprocess Communication - IPC**<br/>
139   such as semaphores and semaphores arrays
140
141 - **netfilter / iptables Linux firewall**<br/>
142   connections, connection tracker events, errors
143
144 - **Linux DDoS protection**<br/>
145   SYNPROXY metrics
146
147 - **fping** latencies</br>
148   for any number of hosts, showing latency, packets and packet loss
149
150    ![image](https://cloud.githubusercontent.com/assets/2662304/20464811/9517d2b4-af57-11e6-8361-f6cc57541cd7.png)
151
152
153 - **Processes**<br/>
154   running, blocked, forks, active
155
156 - **Entropy**<br/>
157   random numbers pool, using in cryptography
158
159 - **NFS file servers and clients**<br/>
160   NFS v2, v3, v4: I/O, cache, read ahead, RPC calls
161
162 - **Network QoS**<br/>
163   the only tool that visualizes network `tc` classes in realtime
164
165    ![qos-tc-classes](https://cloud.githubusercontent.com/assets/2662304/14093004/68966020-f553-11e5-98fe-ffee2086fafd.gif)
166
167 - **Linux Control Groups**<br/>
168   containers: systemd, lxc, docker
169
170 - **Applications**<br/>
171   by grouping the process tree and reporting CPU, memory, disk reads,
172   disk writes, swap, threads, pipes, sockets - per group
173
174    ![apps](https://cloud.githubusercontent.com/assets/2662304/14093565/67c4002c-f557-11e5-86bd-0154f5135def.gif)
175
176 - **Users and User Groups resource usage**<br/>
177   by summarizing the process tree per user and group,
178   reporting: CPU, memory, disk reads, disk writes, swap, threads, pipes, sockets
179
180 - **Apache and lighttpd web servers**<br/>
181    `mod-status` (v2.2, v2.4) and cache log statistics, for multiple servers
182
183 - **Nginx web servers**<br/>
184   `stub-status`, for multiple servers
185
186 - **Tomcat**<br/>
187   accesses, threads, free memory, volume
188
189 - **mySQL databases**<br/>
190   multiple servers, each showing: bandwidth, queries/s, handlers, locks, issues,
191   tmp operations, connections, binlog metrics, threads, innodb metrics, and more
192
193 - **Postgres databases**<br/>
194   multiple servers, each showing: per database statistics (connections, tuples
195   read - written - returned, transactions, locks), backend processes, indexes,
196   tables, write ahead, background writer and more
197
198 - **Redis databases**<br/>
199   multiple servers, each showing: operations, hit rate, memory, keys, clients, slaves
200
201 - **memcached databases**<br/>
202   multiple servers, each showing: bandwidth, connections, items
203
204 - **ISC Bind name servers**<br/>
205   multiple servers, each showing: clients, requests, queries, updates, failures and several per view metrics
206
207 - **Postfix email servers**<br/>
208   message queue (entries, size)
209
210 - **exim email servers**<br/>
211   message queue (emails queued)
212
213 - **Dovecot** POP3/IMAP servers<br/>
214
215 - **IPFS**<br/>
216   bandwidth, peers
217
218 - **Squid proxy servers**<br/>
219   multiple servers, each showing: clients bandwidth and requests, servers bandwidth and requests
220
221 - **Hardware sensors**<br/>
222   temperature, voltage, fans, power, humidity
223
224 - **NUT and APC UPSes**<br/>
225   load, charge, battery voltage, temperature, utility metrics, output metrics
226
227 - **PHP-FPM**<br/>
228   multiple instances, each reporting connections, requests, performance
229
230 - **hddtemp**<br/>
231   disk temperatures
232
233 - **SNMP devices**<br/>
234   can be monitored too (although you will need to configure these)
235
236 And you can extend it, by writing plugins that collect data from any source, using any computer language.
237
238 ---
239
240 ## Installation
241
242 Use our **[automatic installer](https://github.com/firehol/netdata/wiki/Installation)** to build and install it on your system.
243
244 It should run on **any Linux** system (including IoT). It has been tested on:
245
246 - Alpine
247 - Arch Linux
248 - CentOS
249 - Debian
250 - Fedora
251 - Gentoo
252 - openSUSE
253 - PLD Linux
254 - RedHat Enterprise Linux
255 - SUSE
256 - Ubuntu
257
258 ---
259
260 ## Documentation
261
262 Check the **[netdata wiki](https://github.com/firehol/netdata/wiki)**.
263
264 ## License
265
266 netdata is GPLv3+.
267
268 It re-distributes other open-source tools and libraries. Please check its [License Statement](https://github.com/firehol/netdata/blob/master/LICENSE.md).