diff options
61 files changed, 218 insertions, 162 deletions
diff --git a/Makefile.am b/Makefile.am index c90db5ca3c..82c98a4c13 100644 --- a/Makefile.am +++ b/Makefile.am @@ -81,8 +81,7 @@ dist_noinst_DATA= \ installer/README.md \ installer/UNINSTALL.md \ installer/UPDATE.md \ - requirements.txt \ - runtime.txt \ + netlify.toml \ $(NULL) # until integrated within build @@ -95,6 +94,9 @@ dist_noinst_SCRIPTS= \ installer/functions.sh \ htmldoc/buildhtml.sh \ htmldoc/buildyaml.sh \ + htmldoc/checklinks.sh \ + htmldoc/requirements.txt \ + htmldoc/runtime.txt \ $(NULL) # ----------------------------------------------------------------------------- @@ -69,7 +69,7 @@ We provide docker images for the most common architectures. These are statistics [![netdata/netdata (official)](https://img.shields.io/docker/pulls/netdata/netdata.svg?label=netdata/netdata+%28official%29)](https://hub.docker.com/r/netdata/netdata/) [![firehol/netdata (deprecated)](https://img.shields.io/docker/pulls/firehol/netdata.svg?label=firehol/netdata+%28deprecated%29)](https://hub.docker.com/r/firehol/netdata/) [![titpetric/netdata (donated)](https://img.shields.io/docker/pulls/titpetric/netdata.svg?label=titpetric/netdata+%28third+party%29)](https://hub.docker.com/r/titpetric/netdata/) ### Registry -When you install multiple netdata, they are integrated into **one distributed application**, via a [netdata registry](registry/#netdata-registry). This is a web browser feature and it allows us to count the number of unique users and unique netdata servers installed. The following information comes from the global public netdata registry we run: +When you install multiple netdata, they are integrated into **one distributed application**, via a [netdata registry](registry/#registry). This is a web browser feature and it allows us to count the number of unique users and unique netdata servers installed. The following information comes from the global public netdata registry we run: [![User Base](https://registry.my-netdata.io/api/v1/badge.svg?chart=netdata.registry_entries&dimensions=persons&label=user%20base&units=M&value_color=blue&precision=2÷=1000000&v43)](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=k÷=1000&value_color=orange&precision=2&v43)](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=M&value_color=yellowgreen&precision=2÷=1000000&v43)](https://registry.my-netdata.io/#menu_netdata_submenu_registry) @@ -180,11 +180,11 @@ This is how it works: Function|Description|Documentation :---:|:---|:---: **Collect**|Multiple independent data collection workers are collecting metrics from their sources using the optimal protocol for each application and push the metrics to the database. Each data collection worker has lockless write access to the metrics it collects.|[`collectors`](collectors/#data-collection-plugins) -**Store**|Metrics are stored in RAM in a round robin database (ring buffer), using a custom made floating point number for minimal footprint.|[`database`](database/#netdata-database) +**Store**|Metrics are stored in RAM in a round robin database (ring buffer), using a custom made floating point number for minimal footprint.|[`database`](database/#database) **Check**|A lockless independent watchdog is evaluating **health checks** on the collected metrics, triggers alarms, maintains a health transaction log and dispatches alarm notifications.|[`health`](health/#health-monitoring) -**Stream**|An lockless independent worker is streaming metrics, in full detail and in real-time, to remote netdata servers, as soon as they are collected.|[`streaming`](streaming/#metrics-streaming) +**Stream**|An lockless independent worker is streaming metrics, in full detail and in real-time, to remote netdata servers, as soon as they are collected.|[`streaming`](streaming/#streaming-and-replication) **Archive**|A lockless independent worker is down-sampling the metrics and pushes them to **backend** time-series databases.|[`backends`](backends/) -**Query**|Multiple independent workers are attached to the [internal web server](web/server/#netdata-web-server), servicing API requests, including [data queries](web/api/queries/#database-queries).|[`web/api`](web/api/#api) +**Query**|Multiple independent workers are attached to the [internal web server](web/server/#web-server), servicing API requests, including [data queries](web/api/queries/#database-queries).|[`web/api`](web/api/#api) The result is a highly efficient, low latency system, supporting multiple readers and one writer on each metric. @@ -253,7 +253,7 @@ Charts on netdata dashboards are synchronized to each other. There is no master *Charts are panned by dragging them with the mouse. Charts can be zoomed in/out with`SHIFT` + `mouse wheel` while the mouse pointer is over a chart.* -> The visible time-frame (pan and zoom) is propagated from netdata server to netdata server, when navigating via the [`my-netdata` menu](registry#netdata-registry). +> The visible time-frame (pan and zoom) is propagated from netdata server to netdata server, when navigating via the [`my-netdata` menu](registry#registry). ### Highlighted time-frame @@ -264,7 +264,7 @@ To improve visual anomaly detection across charts, the user can highlight a time *A highlighted time-frame can be given by pressing `ALT` + `mouse selection` on any chart. Netdata will highlight the same range on all charts.* -> Highlighted ranges are propagated from netdata server to netdata server, when navigating via the [`my-netdata` menu](registry#netdata-registry). +> Highlighted ranges are propagated from netdata server to netdata server, when navigating via the [`my-netdata` menu](registry#registry). ## What does it monitor diff --git a/REDISTRIBUTED.md b/REDISTRIBUTED.md index fbafa1abaf..2acc71f28f 100644 --- a/REDISTRIBUTED.md +++ b/REDISTRIBUTED.md @@ -1,18 +1,15 @@ -# Netdata +# Redistributed software -Copyright 2016-2017, Costa Tsaousis. -Copyright 2017-2018, Netdata Inc. -Released under [GPL v3 or later](http://www.gnu.org/licenses/gpl-3.0.en.html). +netdata copyright info: + Copyright 2016-2018, Costa Tsaousis. + Copyright 2018, Netdata Inc. + Released under [GPL v3 or later](LICENSE). -Netdata uses SPDX license tags to identify the license for its files. +netdata uses SPDX license tags to identify the license for its files. Individual licenses referenced in the tags are available on the [SPDX project site](http://spdx.org/licenses/). ---- - -## Re-distributed software - -Netdata re-distributes the following third-party software. -We have decided to re-distribute all these, instead of using them +netdata redistributes the following third-party software. +We have decided to redistribute all these, instead of using them through a CDN, to allow netdata to work in cases where Internet connectivity is not available. diff --git a/backends/README.md b/backends/README.md index cc943d4d71..67da7ad71c 100644 --- a/backends/README.md +++ b/backends/README.md @@ -1,4 +1,4 @@ -# Metrics Long Term Archiving +# Metrics long term archiving netdata supports backends for archiving the metrics, or providing long term dashboards, using Grafana or other tools, like this: diff --git a/collectors/README.md b/collectors/README.md index 83c92d9dda..318d91806d 100644 --- a/collectors/README.md +++ b/collectors/README.md @@ -1,4 +1,4 @@ -# Data Collection Plugins +# Data collection plugins netdata supports **internal** and **external** data collection plugins: diff --git a/collectors/charts.d.plugin/apcupsd/README.md b/collectors/charts.d.plugin/apcupsd/README.md index e69de29bb2..5a627d25c4 100644 --- a/collectors/charts.d.plugin/apcupsd/README.md +++ b/collectors/charts.d.plugin/apcupsd/README.md @@ -0,0 +1,5 @@ +# apcupsd + +*Under construction* + +Collects UPS metrics diff --git a/collectors/charts.d.plugin/example/README.md b/collectors/charts.d.plugin/example/README.md index bfd5e210ae..402ba760f1 100644 --- a/collectors/charts.d.plugin/example/README.md +++ b/collectors/charts.d.plugin/example/README.md @@ -1,2 +1,4 @@ +# Example + This is just an example charts.d data collector. diff --git a/collectors/charts.d.plugin/opensips/README.md b/collectors/charts.d.plugin/opensips/README.md index e69de29bb2..af9099b9a7 100644 --- a/collectors/charts.d.plugin/opensips/README.md +++ b/collectors/charts.d.plugin/opensips/README.md @@ -0,0 +1,5 @@ +# OpenSIPS + +*Under construction* + +Collects OpenSIPS metrics diff --git a/collectors/checks.plugin/README.md b/collectors/checks.plugin/README.md index 503b96adae..7d1b3081e1 100644 --- a/collectors/checks.plugin/README.md +++ b/collectors/checks.plugin/README.md @@ -1,3 +1,3 @@ -# Netdata internal checks +# checks.plugin A debugging plugin (by default it is disabled) diff --git a/collectors/freebsd.plugin/README.md b/collectors/freebsd.plugin/README.md index e6302f4209..591f605ff0 100644 --- a/collectors/freebsd.plugin/README.md +++ b/collectors/freebsd.plugin/README.md @@ -1,3 +1,3 @@ -# freebsd +# freebsd.plugin Collects resource usage and performance data on FreeBSD systems diff --git a/collectors/freeipmi.plugin/README.md b/collectors/freeipmi.plugin/README.md index 6d4ad1865f..1cebf54e11 100644 --- a/collectors/freeipmi.plugin/README.md +++ b/collectors/freeipmi.plugin/README.md @@ -1,8 +1,10 @@ -netdata has a [freeipmi](https://www.gnu.org/software/freeipmi/) plugin. +# freeipmi.plugin + +Netdata has a [freeipmi](https://www.gnu.org/software/freeipmi/) plugin. > FreeIPMI provides in-band and out-of-band IPMI software based on the IPMI v1.5/2.0 specification. The IPMI specification defines a set of interfaces for platform management and is implemented by a number vendors for system management. The features of IPMI that most users will be interested in are sensor monitoring, system event monitoring, power control, and serial-over-LAN (SOL). -## compile `freeipmi.plugin` +## Compile `freeipmi.plugin` 1. install `libipmimonitoring-dev` or `libipmimonitoring-devel` (`freeipmi-devel` on RHEL based OS) using the package manager of your system. @@ -12,7 +14,7 @@ Keep in mind IPMI requires root access, so the plugin is setuid to root. If you just installed the required IPMI tools, please run at least once the command `ipmimonitoring` and verify it returns sensors information. This command initialises IPMI configuration, so that the netdata plugin will be able to work. -## netdata use +## Netdata use The plugin creates (up to) 8 charts, based on the information collected from IPMI: @@ -101,7 +103,7 @@ You can set these options in `/etc/netdata/netdata.conf` at this section: Append to `command options = ` the settings you need. The minimum `update every` is 5 (enforced internally by the plugin). IPMI is slow and CPU hungry. So, once every 5 seconds is pretty acceptable. -## ignoring specific sensors +## Ignoring specific sensors Specific sensor IDs can be excluded from freeipmi tools by editing `/etc/freeipmi/freeipmi.conf` and setting the IDs to be ignored at `ipmi-sensors-exclude-record-ids`. **However this file is not used by `libipmimonitoring`** (the library used by netdata's `freeipmi.plugin`). @@ -135,7 +137,7 @@ ID | Name | Type | State | Reading | Unit ``` -## debugging +## Debugging You can run the plugin by hand: diff --git a/collectors/idlejitter.plugin/README.md b/collectors/idlejitter.plugin/README.md index 3c2080536d..f4fde54e5b 100644 --- a/collectors/idlejitter.plugin/README.md +++ b/collectors/idlejitter.plugin/README.md @@ -1,8 +1,8 @@ -## idlejitter.plugin +# idlejitter.plugin It works like this: -A thread is spawn that requests to sleep for 20000 microseconds (20ms). +A thread is spawned that requests to sleep for 20000 microseconds (20ms). When the system wakes it up, it measures how many microseconds have passed. The difference between the requested and the actual duration of the sleep, is the idle jitter. This is done at most 50 times per second, to ensure we have a good average. diff --git a/collectors/macos.plugin/README.md b/collectors/macos.plugin/README.md index ddbcc8f9b9..5f8851b452 100644 --- a/collectors/macos.plugin/README.md +++ b/collectors/macos.plugin/README.md @@ -1,3 +1,3 @@ -# macos +# macos.plugin Collects resource usage and performance data on MacOS systems diff --git a/collectors/plugins.d/README.md b/collectors/plugins.d/README.md index c5981803c6..b85cb5c38e 100644 --- a/collectors/plugins.d/README.md +++ b/collectors/plugins.d/README.md @@ -1,4 +1,4 @@ -# Netdata External Plugins +# External plugins overview `plugins.d` is the netdata internal plugin that collects metrics from external processes, thus allowing netdata to use **external plugins**. diff --git a/collectors/python.d.plugin/example/README.md b/collectors/python.d.plugin/example/README.md index f9f314ac43..4cb1432c4e 100644 --- a/collectors/python.d.plugin/example/README.md +++ b/collectors/python.d.plugin/example/README.md @@ -1 +1,3 @@ -An example python data collection module.
\ No newline at end of file +# example + +An example python data collection module. diff --git a/collectors/python.d.plugin/linux_power_supply/README.md b/collectors/python.d.plugin/linux_power_supply/README.md index 5cfbe41ce5..5636ce54c7 100644 --- a/collectors/python.d.plugin/linux_power_supply/README.md +++ b/collectors/python.d.plugin/linux_power_supply/README.md @@ -1,4 +1,4 @@ -# linux\_power\_supply +# Linux power supply This module monitors variosu metrics reported by power supply drivers on Linux. This allows tracking and alerting on things like remaining diff --git a/collectors/statsd.plugin/README.md b/collectors/statsd.plugin/README.md index 6ef038343a..43af241c6a 100644 --- a/collectors/statsd.plugin/README.md +++ b/collectors/statsd.plugin/README.md @@ -1,22 +1,20 @@ -# Netdata Statsd +# statsd.plugin statsd is a system to collect data from any application. Applications are sending metrics to it, usually via non-blocking UDP communication, and statsd servers collect these metrics, perform a few simple calculations on them and push them to backend time-series databases. There is a [plethora of client libraries](https://github.com/etsy/statsd/wiki#client-implementations) for embedding statsd metrics to any application framework. This makes statsd quite popular for custom application metrics. -## netdata statsd - netdata is a fully featured statsd server. It can collect statsd formatted metrics, visualize them on its dashboards, stream them to other netdata servers or archive them to backend time-series databases. -netdata statsd is inside netdata (an internal plugin, running inside the netdata daemon), it is configured via `netdata.conf` and by-default listens on standard statsd ports (tcp and udp 8125 - yes, netdata statsd server supports both tcp and udp at the same time). +Netdata statsd is inside Netdata (an internal plugin, running inside the Netdata daemon), it is configured via `netdata.conf` and by-default listens on standard statsd ports (tcp and udp 8125 - yes, Netdata statsd server supports both tcp and udp at the same time). -Since statsd is embedded in netdata, it means you now have a statsd server embedded on all your servers. So, the application can send its metrics to `localhost:8125`. This provides a distributed statsd implementation. +Since statsd is embedded in Netdata, it means you now have a statsd server embedded on all your servers. So, the application can send its metrics to `localhost:8125`. This provides a distributed statsd implementation. -netdata statsd is fast. It can collect more than **1.200.000 metrics per second** on modern hardware, more than **200Mbps of sustained statsd traffic**, using 1 CPU core (yes, it is single threaded - actually double-threaded, one thread collects metrics, another one updates the charts from the collected data). +Netdata statsd is fast. It can collect more than **1.200.000 metrics per second** on modern hardware, more than **200Mbps of sustained statsd traffic**, using 1 CPU core (yes, it is single threaded - actually double-threaded, one thread collects metrics, another one updates the charts from the collected data). -## metrics supported by netdata +## Metrics supported by Netdata -netdata fully supports the statsd protocol. All statsd client libraries can be used with netdata too. +Netdata fully supports the statsd protocol. All statsd client libraries can be used with Netdata too. - **Gauges** diff --git a/collectors/tc.plugin/README.md b/collectors/tc.plugin/README.md index a8b151de3c..5f893e030e 100644 --- a/collectors/tc.plugin/README.md +++ b/collectors/tc.plugin/README.md @@ -1,4 +1,4 @@ -## tc.plugin +# tc.plugin Live demo - **[see it in action here](https://registry.my-netdata.io/#menu_tc)** ! diff --git a/daemon/README.md b/daemon/README.md index 305fc961d9..930fbd0faf 100644 --- a/daemon/README.md +++ b/daemon/README.md @@ -1,4 +1,4 @@ -# Running the Netdata Daemon +# Netdata daemon ## Starting netdata diff --git a/daemon/config/README.md b/daemon/config/README.md index 5cd7844a24..1a64c45460 100755 --- a/daemon/config/README.md +++ b/daemon/config/README.md @@ -1,8 +1,8 @@ -# Configuration Guide +# Configuration guide Configuration files are placed in `/etc/netdata`. -## Netdata Daemon +## Netdata daemon The daemon configuration file is read from `/etc/netdata/netdata.conf`. @@ -23,7 +23,7 @@ The configuration file is a `name = value` dictionary. Netdata will not complain setting | default | info :------:|:-------:|:---- hostname|auto-detected|The hostname of the computer running netdata. -history|3600|The number of entries the netdata daemon will by default keep in memory for each chart dimension. This setting can also be configured per chart. Check [Memory Requirements](../../database/#netdata-database) for more information. +history|3600|The number of entries the netdata daemon will by default keep in memory for each chart dimension. This setting can also be configured per chart. Check [Memory Requirements](../../database/#database) for more information. config directory|`/etc/netdata`|The directory configuration files are kept. plugins directory|`/usr/libexec/netdata/plugins.d`|The directory plugin programs are kept. This setting supports multiple directories, space separated. If any directory path contains spaces, enclose it in single or double quotes. web files directory|`/usr/share/netdata/web`|The directory the web static files are kept. @@ -36,7 +36,7 @@ debug log|`/var/log/netdata/debug.log`|The filename to save debug information. T error log|`/var/log/netdata/error.log`|The filename to save error messages for netdata daemon and all plugins (`stderr` is sent here for all netdata programs, including the plugins). You can also set it to `syslog` to send the errors to syslog, or `none` to disable this log. access log|`/var/log/netdata/access.log`|The filename to save the log of web clients accessing netdata charts. You can also set it to `syslog` to send the access log to syslog, or `none` to disable this log. memory mode|save|When set to `save` netdata will save its round robin database on exit and load it on startup. When set to `map` the cache files will be updated in real time (check `man mmap` - do not set this on systems with heavy load or slow disks - the disks will continuously sync the in-memory database of netdata). When set to `ram` the round robin database will be temporary and it will be lost when netdata exits. -update every|1|The frequency in seconds, for data collection. For more information see [Performance](../../doc/Performance.md#netdata-performance). +update every|1|The frequency in seconds, for data collection. For more information see [Performance](../../doc/Performance.md#performance). run as user|`netdata`|The user netdata will run as. web files owner|`netdata`|The user that owns the web static files. Netdata will refuse to serve a file that is not owned by this user, even if it has read access to that file. If the user given is not found, netdata will only serve files owned by user given in `run as user`. http port listen backlog|100|The port backlog. Check `man 2 listen`. @@ -45,7 +45,7 @@ bind to|`*`|The IP address and port to listen to. This is a space separated list disconnect idle web clients after seconds|60|The time in seconds to disconnect web clients after being totally idle. enable web responses gzip compression|yes|When set to `yes`, netdata web responses will be GZIP compressed, if the web client accepts such responses. -##### netdata process priority +##### Netdata process priority By default, netdata runs with the `idle` process scheduler, which assigns CPU resources to netdata, only when the system has such resources to spare. @@ -92,22 +92,22 @@ checks|no|This is a debugging plugin for the internal latency of netdata. enable running new plugins|yes|When set to `yes`, netdata will enable plugins not configured specifically for them. Setting this to `no` will disable all plugins you have not set to `yes` explicitly. |