@cryptotaxi247 / netdata-1 / commits / 84ff2f70f

updated readme, added swagger docs

Costa Tsaousis (ktsaou) committed Dec 20, 2015 at 19:46 UTC 84ff2f70f35747c38532c278e651f2bd730ef4b0
2 files changed +34 -38
README.md
+33 -37
@@ -6,23 +6,26 @@ netdata
6
7 ### Realtime time data collection and charts!
8
9 -**Netdata** is a daemon that collects data in realtime (up to per second) and presents a web site to view and analyze them.
9 +**Netdata** is a daemon that collects data in realtime (per second) and presents a web site to view and analyze them.
10 The presentation is full of charts that precisely render all system values, in realtime.
11
12 -It has been designed to be installed on every system, without desrupting its operation:
12 +It has been designed to be installed **on every system**, without desrupting it:
13
14 1. It will just use some spare CPU cycles.
15
16 - You can even control its CPU consumption by lowering its data collection frequency.
17 - It is also running with the lowest possible priority.
16 + Although it is very light weight, on slow processors you can futher control its CPU consumption by lowering its data collection frequency.
17 + By default it is running with the lowest possible linux priority.
18
19 2. It will use the memory you want it have.
20
21 - You can control the memory it will use by sizing its round robin in memory database.
21 + Although we have made the most to make its memory footprint the smallest possible,
22 + you can further control the memory it will use, by sizing its round robin memory database.
23
24 3. It does not use disk I/O.
25
25 - All its database is in memory, and it is only saved on disk and loaded back when netdata restarts. You can also disable the access log of its embedded web server.
26 + All its round robin database is in memory.
27 + It is only saved on disk and loaded back when netdata restarts.
28 + You can also disable the access log of its embedded web server, so that netdata will not use any I/O at all while running.
29
30
31 You can use it to monitor all your applications, servers, linux PCs or linux embedded devices.
@@ -39,15 +42,15 @@ Out of the box, it comes with plugins for data collection about system informati
42
43 - **extremely lightweight**
44
42 - It only needs a few megabytes of memory to store all its round robin database.
45 + It only needs a few megabytes of memory to store its round robin database.
46
44 - Although `netdata` does all its calculation using `long double` (128 bit) arithmetics, it stores all values using a **custom-made 32-bit number**. This custom-made number can store in 29 bits values from -167772150000000.0 to 167772150000000.0 with a precision of 0.00001 (yes, it is a floating point number, meaning that higher integer values have less decimal precision) and 3 bits for flags (2 are currently used and 1 is reserved for future use). This provides an extremely optimized memory footprint with just 0.0001% max accuracy loss (run: `./netdata --unittest` to see it in action).
47 + Although `netdata` does all its calculation using `long double` (128 bit) arithmetics, it stores all values using a **custom-made 32-bit number**. This custom-made number can store in 29 bits values from -167772150000000.0 to 167772150000000.0 with a precision of 0.00001 (yes, it is a floating point number, meaning that higher integer values have less decimal precision) and 3 bits for flags. This provides an extremely optimized memory footprint with just 0.0001% max accuracy loss (run: `./netdata --unittest` to see it in action).
48
46 - It also supports KSM memory deduplication to lower its memory requirements even further.
49 + If your linux box has KSM enabled, netdata will give it all its round robbin database, to lower its memory requirements even further.
50
51 - **per second data collection**
52
50 - Every chart, every value, is updated every second. Of course, you can control collection period per module.
53 + Every chart, every value, is updated every second. Of course, you can control collection period per plugin.
54
55 **netdata** can perform several calculations on each value (dimension) collected:
56
@@ -65,13 +68,13 @@ Out of the box, it comes with plugins for data collection about system informati
68
69 - **appealing web site**
70
68 - The web site uses bootstrap and google charts for a very appealing result.
71 + The web site uses bootstrap and the excellent [dygraphs](http://dygraphs.com), for a very appealing and responsive result.
72 It works even on mobile devices and adapts to screen size changes and rotation (responsive design).
73
74 - **web charts do respect your browser resources**
75
76 The charts adapt to show only as many points are required to have a clear view.
74 - Also, the javascript code respects your browser resources (stops refreshing when the window looses focus, when scrolling, etc).
77 + Also, the javascript code respects your browser resources (stops refreshing when the window looses focus, when something is selected, when charts are not in the visible viewport, etc).
78
79 - **highly configurable**
80
@@ -89,6 +92,8 @@ Out of the box, it comes with plugins for data collection about system informati
92 - `/proc/meminfo` (memory information)
93 - `/proc/vmstat` (system performance)
94 - `/proc/net/rpc/nfsd` (NFS server statistics for both v3 and v4 NFS)
95 + - `/proc/interrupts` (total and per core hardware interrupts)
96 + - `/proc/softirqs` (total and per core software interrupts)
97 - `tc` classes (QoS classes - [with FireQOS class names](http://firehol.org/tutorial/fireqos-new-user/))
98
99 - It supports **plugins** for collecting information from other sources!
@@ -114,8 +119,8 @@ Out of the box, it comes with plugins for data collection about system informati
119 - netdata is a web server, supporting gzip compression
120
121 It serves its own static files and dynamic files for rendering the site.
117 - It does not support authentication or SSL - limit its access using your firewall.
118 - It does not allow ` .. ` or ` / ` in the files requested (so it can only serve files stored in the web directory `/usr/share/netdata/web`).
122 + It does not support authentication or SSL - limit its access using your firewall, or put it behind an authentication proxy.
123 + It does not allow ` .. ` in the files requested (so it can only serve files stored in the web directory `/usr/share/netdata/web`).
124
125
126 # How it works
@@ -133,27 +138,16 @@ Out of the box, it comes with plugins for data collection about system informati
138 For example, you can access JSON data by using:
139
140 ```
136 - http://127.0.0.1:19999/data/net.eth0
137 - ```
138 -
139 - This will give you the JSON file for traffic on eth0.
140 - The above is equivalent to:
141 +
142 + http://netdata.firehol.org/api/v1/data?chart=net.eth0&after=-300&before=0&points=120&group=average&format=json
143
144 ```
143 - http://127.0.0.1:19999/data/net.eth0/3600/1/average/0/0
144 - ```
145 -
146 - where:
145
148 - - 3600 is the number of entries to generate.
149 - - 1 is grouping count, 1 = every single entry, 2 = half the entries, 3 = one every 3 entries, etc
150 - - `average` is the grouping method. It can also be `max`.
151 - - 0/0 they are `before` and `after` timestamps, allowing panning on the data
146 + The above will give you the last 300 seconds of traffic for eth0, aggregated in 120 points, grouped as averages, in json format.
147 +
148 +2. If you need to embed a **netdata** chart on your web page, you can add a few javascript lines and a `div` for every graph you need. Check [this example](http://netdata.firehol.org/dashboard.html) (open it in a new tab and view its source to get the idea).
149
153 -
154 -2. If you need to embed a **netdata** chart on your web page, you can add a few javascript lines and a `div` for every graph you need. Check [this example](http://195.97.5.206:19999/datasource.html) (open it in a new tab and view its source to get the idea).
155 -
156 -3. Graphs are generated using Google Charts API (so, your client needs to have internet access).
150 +3. No internet access is required. Netdata is standalone.
151
152
153 # Installation
@@ -161,21 +155,22 @@ Out of the box, it comes with plugins for data collection about system informati
155 ## Automatic installation
156
157 Before you start, make sure you have `zlib` development files installed.
164 -To install it in Ubuntu, you need to run:
165 -
166 -```sh
167 -apt-get install zlib1g-dev
168 -```
158
159 You also need to have a basic build environment in place. You will need packages like
160 `gcc`, `autoconf`, `autogen`, `automake`, `pgk-config`, etc.
161
162 +To install them in debian/ubuntu, you need to run:
163 +
164 +```sh
165 +apt-get install zlib1g-dev gcc autoconf autogen automake pkg-config
166 +```
167 +
168 Then do this to install and run netdata:
169
170 ```sh
171
172 # download it
178 -git clone https://github.com/ktsaou/netdata.git netdata.git
173 +git clone https://github.com/firehol/netdata.git netdata.git
174 cd netdata.git
175
176 # build it
@@ -203,3 +198,4 @@ To access the web site for all graphs, go to:
198 You can get the running config file at any time, by accessing `http://127.0.0.1:19999/netdata.conf`.
199
200 To start it at boot, just run `/usr/sbin/netdata` from your `/etc/rc.local` or equivalent.
201 +
web/netdata-swagger.yaml
+1 -1
@@ -204,4 +204,4 @@ definitions:
204 name:
205 type: string
206 description: 'The name of the dimension'
207 -
207 +