]> arthur.barton.de Git - netdata.git/blobdiff - README.md
Merge pull request #201 from firehol/autoconf-check
[netdata.git] / README.md
old mode 100755 (executable)
new mode 100644 (file)
index 144a337..1dd2bb0
--- a/README.md
+++ b/README.md
-netdata
-=======
+# netdata
 
-linux network traffic web monitoring
+#### 180.000+ views, 50.000+ visitors, 15.000+ downloads, 8.000+ github stars, 400+ forks, 7 days!
 
-This little program will allow you to create embedable live monitoring charts on any web page.
+And it still runs with 1.000+ git downloads... per day!
 
-![image](https://cloud.githubusercontent.com/assets/2662304/2593406/3c797e88-ba80-11e3-8ec7-c10174d59ad6.png)
+**[check what our users say about netdata](https://github.com/firehol/netdata/issues/148)**.
 
-# How it works
+Thank you!
 
-1. You run a daemon on your linux: netdata.
- This deamon is written in C and is extremely lightweight.
- netdata:
+---
 
-  - reads /proc/net/dev and for every interface present there it keeps in its memory a short history of its received and sent bytes.
-  - generates JSON HTTP responses containing all the data needed for the web graphs.
-  - is a web server. You can access JSON data by using:
- ```
- http://127.0.0.1:19999/data/net.eth0
- ```
- This will give you the JSON file for traffic on eth0.
- The above is equivalent to:
- ```
- http://127.0.0.1:19999/data/net.eth0/3600/1/average
- ```
- where:
+**Real-time performance monitoring, done right!**
 
-  - 3600 is the number of entries to generate (3600 is a default which can be overwritten by -l).
-  - 1 is grouping count, 1 = every single entry, 2 = half the entries, 3 = one every 3 entries, etc
-  - `average` is the grouping method. It can also be `max`.
+This is the default dashboard of **netdata**:
 
+ - real-time, per second updates, snappy refreshes!
+ - 300+ charts out of the box, 2000+ metrics monitored!
+ - zero configuration, zero maintenance, zero dependencies!
 
-2. On your web page, you add a few javascript lines and a DIV for every graph you need.
- Your browser will hit the web server to fetch the JSON data and refresh the graphs.
+Live demo: [http://netdata.firehol.org](http://netdata.firehol.org)
 
-3. Graphs are generated using Google Charts API.
+![netdata](https://cloud.githubusercontent.com/assets/2662304/14092712/93b039ea-f551-11e5-822c-beadbf2b2a2e.gif)
 
+---
 
+## Features
 
-# Installation
+**netdata** is a highly optimized Linux daemon providing **real-time performance monitoring for Linux systems, Applications, SNMP devices, over the web**!
 
-## Automatic installation
+It tries to visualize the **truth of now**, in its **greatest detail**, so that you can get insights of what is happening now and what just happened, on your systems and applications.
 
-1. Download everything in a directory inside your web server.
-2. cd to that directory
-3. run:
+This is what you get:
 
-```sh
-./netdata.start
-```
+- **Stunning bootstrap dashboards**, out of the box (themable: dark, light)
+- **Blazingly fast** and **super efficient**, mostly written in C (for default installations, expect just 2% of a single core CPU usage and a few MB of RAM)
+- **Zero configuration** - you just install it and it autodetects everything
+- **Zero dependencies**, it is its own web server for its static web files and its web API
+- **Zero maintenance**, you just run it, it does the rest
+- **Custom dashboards** that can be built using simple HTML (no javascript necessary)
+- **Extensible**, you can monitor anything you can get a metric for, using its Plugin API (anything can be a netdata plugin - from BASH to node.js, so you can easily monitor any application, any API)
+- **Embeddable**, it can run anywhere a Linux kernel runs and its charts can be embedded on your web pages too
 
-For this to work, you need to have persmission to create a directory in /run or /var/run or /tmp.
-If you run into problems, try to become root to verify it works. Please, do not run netdata are root permanently.
-Since netdata is a web server, the right thing to do, is to have a special user for it.
+---
 
-Once you run it, the file netdata.conf will be created. You can edit this file to set options for each graph.
-To apply the changes you made, you have to run netdata.start again.
+## What does it monitor?
 
-To access the panel for all graphs, go to:
+This is what it currently monitors (most with zero configuration):
 
- ```
- http://127.0.0.1:19999/
- ```
+- **CPU usage, interrupts, softirqs and frequency** (total and per core)
 
+- **RAM, swap and kernel memory usage** (including KSM and kernel memory deduper)
 
+- **Disks** (per disk: I/O, operations, backlog, utilization, etc)
 
----
+   ![sda](https://cloud.githubusercontent.com/assets/2662304/14093195/c882bbf4-f554-11e5-8863-1788d643d2c0.gif)
+
+- **Network interfaces** (per interface: bandwidth, packets, errors, drops, etc)
+
+   ![dsl0](https://cloud.githubusercontent.com/assets/2662304/14093128/4d566494-f554-11e5-8ee4-5392e0ac51f0.gif)
+
+- **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)
+
+- **netfilter / iptables Linux firewall** (connections, connection tracker events, errors, etc)
+
+- **Linux anti-DDoS protection** (SYNPROXY metrics)
+
+- **Processes** (running, blocked, forks, active, etc)
+
+- **Entropy** (random numbers pool, using in cryptography)
+
+- **NFS file servers**, v2, v3, v4 (I/O, cache, read ahead, RPC calls)
+
+- **Network QoS** (yes, the only tool that visualizes network `tc` classes in realtime)
+
+   ![qos-tc-classes](https://cloud.githubusercontent.com/assets/2662304/14093004/68966020-f553-11e5-98fe-ffee2086fafd.gif)
+
+- **Applications**, by grouping the process tree (CPU, memory, disk reads, disk writes, swap, threads, pipes, sockets, etc)
 
-## Installation by hand
+   ![apps](https://cloud.githubusercontent.com/assets/2662304/14093565/67c4002c-f557-11e5-86bd-0154f5135def.gif)
 
-### Compile netdata
-step into the directory you downloaded everything and compile netdata
+- **Users and User Groups resource usage**, by summarizing the process tree per user and group (CPU, memory, disk reads, disk writes, swap, threads, pipes, sockets, etc)
 
-```sh
-gcc -Wall -O3 -o netdata netdata.c -lpthread
-```
+- **Apache web server** mod-status (v2.2, v2.4)
 
-### run netdata
-Run netdata:
+- **Nginx web server** stub-status
 
-```sh
-./netdata -d -l 60 -u 1 -p 19999
-```
- - -d says to go daemon mode
- - -l 60 says to keep 60 history entries
- - -u 1 says to add a new history entry every second
- - -p 19999 is the port to listen for web clients
+- **mySQL databases** (multiple servers, each showing: bandwidth, queries/s, handlers, locks, issues, tmp operations, connections, binlog metrics, threads, innodb metrics, etc)
 
-### edit index.html
-Set in index.html the interfaces you would like to monitor on the web page.
+- **ISC Bind name server** (multiple servers, each showing: clients, requests, queries, updates, failures and several per view metrics)
 
-** REMEMBER: there are 2 sections in index.html to edit. A javascript section and an HTML section. **
+- **Postfix email server** message queue (entries, size)
 
-### open a web browser
+- **Squid proxy server** (clients bandwidth and requests, servers bandwidth and requests) 
 
- ```
- http://127.0.0.1:19999/
- ```
+- **Hardware sensors** (temperature, voltage, fans, power, humidity, etc)
+
+- **NUT UPSes** (load, charge, battery voltage, temperature, utility metrics, output metrics)
+
+- **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.
+
+---
+
+## Still not convinced?
+
+Read **[Why netdata?](https://github.com/firehol/netdata/wiki/Why-netdata%3F)**
+
+---
+
+## Installation
+
+Use our **[automatic installer](https://github.com/firehol/netdata/wiki/Installation)** to build and install it on your system
+
+It should run on **any Linux** system. It has been tested on:
+
+- Gentoo
+- ArchLinux
+- Ubuntu / Debian
+- CentOS
+- Fedora
+- RedHat Enterprise Linux
+- SUSE
+- Alpine Linux
+- PLD Linux
+
+---
 
+## Documentation
 
+Check the **[netdata wiki](https://github.com/firehol/netdata/wiki)**.