0
0
Fork 0
mirror of https://github.com/netdata/netdata.git synced 2025-04-06 14:35:32 +00:00

Docs directory lint documentation and fix issues ()

* alerts-and-notifications broken link pass

* category-overview-pages pass

* dashboards and charts pass

* deployment-guides pass

* dev corner pass

* exporting metrics pass

* Netdata Agent pass

* Netdata Cloud pass

* observ centrl points pass

* sec and priv design pass

* final docs on docs/ folder

* web server readme fix

* fix broken link
This commit is contained in:
Fotis Voutsas 2024-10-03 12:05:07 +03:00 committed by GitHub
parent dbec34183b
commit a5460023bf
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
67 changed files with 664 additions and 871 deletions
docs
Demo-Sites.md
alerts-and-notifications/notifications
category-overview-pages
dashboards-and-charts
deployment-guides
developer-and-contributor-corner
glossary.mdguidelines.md
netdata-agent
netdata-assistant.md
netdata-cloud
observability-centralization-points
security-and-privacy-design
src
collectors
web/server

View file

@ -11,27 +11,27 @@ sidebar_position: "90"
# Live demos
See the live Netdata Cloud demo with Rooms (listed below) for specific use cases at **https://app.netdata.cloud/spaces/netdata-demo**
See the live Netdata Cloud demo with Rooms (listed below) for specific use cases at `https://app.netdata.cloud/spaces/netdata-demo`
| Location | Netdata Demo URL | 60 mins reqs | VM donated by |
| :------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| :------------------------------------------------- |
| Netdata Cloud | **[Netdata Demo - All nodes](https://app.netdata.cloud/spaces/netdata-demo/rooms/all-nodes/overview)** |||
| Netdata Cloud | **[Netdata Demo - Active Directory](https://app.netdata.cloud/spaces/netdata-demo/rooms/active-directory/overview)** |||
| Netdata Cloud | **[Netdata Demo - Apache](https://app.netdata.cloud/spaces/netdata-demo/rooms/apache/overview)** |||
| Netdata Cloud | **[Netdata Demo - Cassandra](https://app.netdata.cloud/spaces/netdata-demo/rooms/cassandra/overview)** |||
| Netdata Cloud | **[Netdata Demo - CoreDNS](https://app.netdata.cloud/spaces/netdata-demo/rooms/coredns/overview)** |||
| Netdata Cloud | **[Netdata Demo - DNS Query](https://app.netdata.cloud/spaces/netdata-demo/rooms/dns-query/overview)** |||
| Netdata Cloud | **[Netdata Demo - Docker](https://app.netdata.cloud/spaces/netdata-demo/rooms/docker/overview)** |||
| Netdata Cloud | **[Netdata Demo - Host Reachability](https://app.netdata.cloud/spaces/netdata-demo/rooms/host-reachability/overview)** |||
| Netdata Cloud | **[Netdata Demo - HTTP Endpoints](https://app.netdata.cloud/spaces/netdata-demo/rooms/http-endpoints/overview)** |||
| Netdata Cloud | **[Netdata Demo - IIS](https://app.netdata.cloud/spaces/netdata-demo/rooms/iis/overview)** |||
| Netdata Cloud | **[Netdata Demo - Kubernetes](https://app.netdata.cloud/spaces/netdata-demo/rooms/kubernetes/kubernetes)** |||
| Netdata Cloud | **[Netdata Demo - Machine Learning](https://app.netdata.cloud/spaces/netdata-demo/rooms/machine-learning/overview)** |||
| Netdata Cloud | **[Netdata Demo - MS Exchange](https://app.netdata.cloud/spaces/netdata-demo/rooms/ms-exchange/overview)** |||
| Netdata Cloud | **[Netdata Demo - Nginx](https://app.netdata.cloud/spaces/netdata-demo/rooms/nginx/overview)** |||
| Netdata Cloud | **[Netdata Demo - PostgreSQL](https://app.netdata.cloud/spaces/netdata-demo/rooms/postgresql/overview)** |||
| Netdata Cloud | **[Netdata Demo - Redis](https://app.netdata.cloud/spaces/netdata-demo/rooms/redis/overview)** |||
| Netdata Cloud | **[Netdata Demo - Windows](https://app.netdata.cloud/spaces/netdata-demo/rooms/windows/overview)** |||
|:--------------------|:------------------------------------------------------------------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------|
| Netdata Cloud | **[Netdata Demo - All nodes](https://app.netdata.cloud/spaces/netdata-demo/rooms/all-nodes/overview)** | | |
| Netdata Cloud | **[Netdata Demo - Active Directory](https://app.netdata.cloud/spaces/netdata-demo/rooms/active-directory/overview)** | | |
| Netdata Cloud | **[Netdata Demo - Apache](https://app.netdata.cloud/spaces/netdata-demo/rooms/apache/overview)** | | |
| Netdata Cloud | **[Netdata Demo - Cassandra](https://app.netdata.cloud/spaces/netdata-demo/rooms/cassandra/overview)** | | |
| Netdata Cloud | **[Netdata Demo - CoreDNS](https://app.netdata.cloud/spaces/netdata-demo/rooms/coredns/overview)** | | |
| Netdata Cloud | **[Netdata Demo - DNS Query](https://app.netdata.cloud/spaces/netdata-demo/rooms/dns-query/overview)** | | |
| Netdata Cloud | **[Netdata Demo - Docker](https://app.netdata.cloud/spaces/netdata-demo/rooms/docker/overview)** | | |
| Netdata Cloud | **[Netdata Demo - Host Reachability](https://app.netdata.cloud/spaces/netdata-demo/rooms/host-reachability/overview)** | | |
| Netdata Cloud | **[Netdata Demo - HTTP Endpoints](https://app.netdata.cloud/spaces/netdata-demo/rooms/http-endpoints/overview)** | | |
| Netdata Cloud | **[Netdata Demo - IIS](https://app.netdata.cloud/spaces/netdata-demo/rooms/iis/overview)** | | |
| Netdata Cloud | **[Netdata Demo - Kubernetes](https://app.netdata.cloud/spaces/netdata-demo/rooms/kubernetes/kubernetes)** | | |
| Netdata Cloud | **[Netdata Demo - Machine Learning](https://app.netdata.cloud/spaces/netdata-demo/rooms/machine-learning/overview)** | | |
| Netdata Cloud | **[Netdata Demo - MS Exchange](https://app.netdata.cloud/spaces/netdata-demo/rooms/ms-exchange/overview)** | | |
| Netdata Cloud | **[Netdata Demo - Nginx](https://app.netdata.cloud/spaces/netdata-demo/rooms/nginx/overview)** | | |
| Netdata Cloud | **[Netdata Demo - PostgreSQL](https://app.netdata.cloud/spaces/netdata-demo/rooms/postgresql/overview)** | | |
| Netdata Cloud | **[Netdata Demo - Redis](https://app.netdata.cloud/spaces/netdata-demo/rooms/redis/overview)** | | |
| Netdata Cloud | **[Netdata Demo - Windows](https://app.netdata.cloud/spaces/netdata-demo/rooms/windows/overview)** | | |
| London (UK) | **[london3.my-netdata.io](https://london3.my-netdata.io)**<br/>(this is the global Netdata **registry** and has **named** and **mysql** charts) | [![Requests Per Second](https://london3.my-netdata.io/api/v1/badge.svg?chart=netdata.requests&dimensions=requests&after=-3600&options=unaligned&group=sum&label=reqs&units=empty&value_color=blue&precision=0&v42)](https://london3.my-netdata.io) | [DigitalOcean.com](https://m.do.co/c/83dc9f941745) |
| Atlanta (USA) | **[cdn77.my-netdata.io](https://cdn77.my-netdata.io)**<br/>(with **named** and **mysql** charts) | [![Requests Per Second](https://cdn77.my-netdata.io/api/v1/badge.svg?chart=netdata.requests&dimensions=requests&after=-3600&options=unaligned&group=sum&label=reqs&units=empty&value_color=blue&precision=0&v42)](https://cdn77.my-netdata.io) | [CDN77.com](https://www.cdn77.com/) |
| Bangalore (India) | **[bangalore.my-netdata.io](https://bangalore.my-netdata.io)** | [![Requests Per Second](https://bangalore.my-netdata.io/api/v1/badge.svg?chart=netdata.requests&dimensions=requests&after=-3600&options=unaligned&group=sum&label=reqs&units=empty&value_color=blue&precision=0&v42)](https://bangalore.my-netdata.io) | [DigitalOcean.com](https://m.do.co/c/83dc9f941745) |

View file

@ -2,6 +2,8 @@
This section includes the documentation of the integrations for both of Netdata's notification methods.
<!-- following links are virtual links to a generated page, should not lead somewhere upon click from GitHub -->
- Netdata Cloud provides centralized alert notifications, utilizing the health status data already sent to Netdata Cloud from connected nodes to send alerts to configured integrations. [Supported integrations](/docs/alerts-&-notifications/notifications/centralized-cloud-notifications) include Amazon SNS, Discord, Slack, Splunk, and others.
- The Netdata Agent offers a [wider range of notification options](/docs/alerts-&-notifications/notifications/agent-dispatched-notifications) directly from the agent itself. You can choose from over a dozen services, including email, Slack, PagerDuty, Twilio, and others, for more granular control over notifications on each node.

View file

@ -6,4 +6,4 @@ The [systemd journal plugin](/src/collectors/systemd-journal.plugin/) is the cor
For structured logs, Netdata provides tools like [log2journal](/src/collectors/log2journal/README.md) and [systemd-cat-native](/src/libnetdata/log/systemd-cat-native.md) to convert them into compatible systemd journal entries.
You can also find useful guides on how to set up log centralization points in the [Observability Cetralization Points](/docs/observability-centralization-points/README.md) section of our docs.
You can also find useful guides on how to set up log centralization points in the [Observability Centralization Points](/docs/observability-centralization-points/README.md) section of our docs.

View file

@ -35,6 +35,6 @@ You can access the dashboard at <https://app.netdata.cloud/> and [sign-in with a
### Netdata Agent
To view your Netdata dashboard, open a web browser and enter the address `http://NODE:19999` - replace `NODE` with your Agent's IP address or hostname. If the Agent is on the same machine, use http://localhost:19999.
To view your Netdata dashboard, open a web browser and enter the address `http://NODE:19999` - replace `NODE` with your Agent's IP address or hostname. If the Agent is on the same machine, use `http://localhost:19999`.
Documentation for previous Agent dashboard can still be found [here](/src/web/gui/README.md).

View file

@ -2,7 +2,6 @@
The Anomaly Advisor tab lets you focus on potentially anomalous metrics and charts related to a particular highlighted window of interest. In addition to this tab, each chart in the [Metrics tab](/docs/dashboards-and-charts/metrics-tab-and-single-node-tabs.md) also has an [Anomaly Rate ribbon](/docs/dashboards-and-charts/netdata-charts.md#anomaly-rate-ribbon).
More details about configuration can be found in the [ML documentation](/src/ml/README.md).
This tab uses our [Anomaly Rate ML feature](/src/ml/README.md#anomaly-bit) to score metrics in terms of anomalous behavior.

View file

@ -66,8 +66,8 @@ All users will be able to see events from the Topology and Alerts domain but Aud
## How to use the events feed
1. Click on the **Events** tab (located near the top of your screen)
1. You will be presented with a table listing the events that occurred from the timeframe defined on the [date time picker](/docs/dashboards-and-charts/visualization-date-and-time-controls.md#date-and-time-selector)
1. You can use the filtering capabilities available on right-hand bar to slice through the results provided. See more details on [event types and filters](#event-types-and-filters)
2. You will be presented with a table listing the events that occurred from the timeframe defined on the [date time picker](/docs/dashboards-and-charts/visualization-date-and-time-controls.md#date-and-time-selector)
3. You can use the filtering capabilities available on right-hand bar to slice through the results provided
> **Note**
>

View file

@ -17,7 +17,6 @@ learn_rel_path: "Operations"
>❗This feature is only available on v1 dashboards, it hasn't been port-forwarded to v2.
> For more information on accessing dashboards check [this documentation](/docs/dashboards-and-charts/README.md).
Netdata can export snapshots of the contents of your dashboard at a given time, which you can then import into any other
node running Netdata. Or, you can create a print-ready version of your dashboard to save to PDF or actually print to
paper.

View file

@ -27,7 +27,6 @@ Netdata Cloud organizes and visualizes the following metrics from your Kubernete
| `k8s.cgroup.net_net` | Sum of `received` and `sent` bandwidth per second. |
| `k8s.cgroup.net_packets` | Sum of `multicast`, `received`, and `sent` packets. |
When viewing the [overview of this dashboard](#kubernetes-containers-overview), Netdata presents the above metrics per container, or aggregated based on
their associated pods.

View file

@ -19,14 +19,14 @@ These charts provide a lot of useful information, so that you can:
- View individual metric collection status about a chart
These charts are available on Netdata Cloud's
[Metrics tab](/docs/dashboards-and-charts/metrics-tab-and-single-node-tabs.md), [single sode tabs](/docs/dashboards-and-charts/metrics-tab-and-single-node-tabs.md) and
[Metrics tab](/docs/dashboards-and-charts/metrics-tab-and-single-node-tabs.md), [single node tabs](/docs/dashboards-and-charts/metrics-tab-and-single-node-tabs.md) and
on your [Custom Dashboards](/docs/dashboards-and-charts/dashboards-tab.md).
## Overview
A Netdata chart looks like this:
<img src="https://user-images.githubusercontent.com/70198089/236133212-353c102f-a6ed-45b7-9251-34e004c7a10a.png" width="900"/>
<img src="https://user-images.githubusercontent.com/70198089/236133212-353c102f-a6ed-45b7-9251-34e004c7a10a.png" width="900" alt="A Netdata Chart"/>
With a quick glance you have immediate information available at your disposal:
@ -37,7 +37,7 @@ With a quick glance you have immediate information available at your disposal:
- [Chart area](#hover-over-the-chart)
- [Legend with dimensions](#dimensions-bar)
## Fundemental elements
## Fundamental elements
While Netdata's charts require no configuration and are easy to interact with, they have a lot of underlying complexity. To meaningfully organize charts out of the box based on what's happening in your nodes, Netdata uses the concepts of [dimensions](#dimensions), [contexts](#contexts), and [families](#families).
@ -100,7 +100,7 @@ names:
When you start interacting with a chart, you'll notice valuable information on the Title bar:
<img src="https://github.com/netdata/netdata/assets/70198089/75d700de-bc7d-4b96-b73d-7b248b83afea" width="900"/>
<img src="https://github.com/netdata/netdata/assets/70198089/75d700de-bc7d-4b96-b73d-7b248b83afea" width="900" alt="Netdata Chart Title bar"/>
Title bar elements:
@ -110,8 +110,7 @@ Title bar elements:
Along with viewing chart type, context and units, on this bar you have access to immediate actions over the chart:
<img src="https://github.com/netdata/netdata/assets/70198089/d21f326e-065c-4a08-bee9-69ad23736e38" width="200" />
<img src="https://github.com/netdata/netdata/assets/70198089/d21f326e-065c-4a08-bee9-69ad23736e38" width="200" alt="Netdata Chart Title bar immediate actions"/>
- **Manage Alerts**: manage [Alert configurations](/docs/dashboards-and-charts/alerts-tab.md#alert-configurations-tab) for this chart.
- **Chart info**: get more information relevant to the chart you are interacting with.
@ -126,7 +125,7 @@ Along with viewing chart type, context and units, on this bar you have access to
Each composite chart has a definition bar to provide information and options about the following:
<img src="https://user-images.githubusercontent.com/70198089/236134615-e53a1d68-8a0f-466b-b2ef-1974085f0e8d.png" width="900"/>
<img src="https://user-images.githubusercontent.com/70198089/236134615-e53a1d68-8a0f-466b-b2ef-1974085f0e8d.png" width="900" alt="Netdata Chart Definition bar"/>
- Group by option
- Aggregate function to be applied in case multiple data sources exist
@ -145,14 +144,14 @@ To help users instantly understand and validate the data they see on charts, we
> allowing you to zoom in to the different parts of it.
>
> <a href="https://user-images.githubusercontent.com/2662304/235475061-44628011-3b1f-4c44-9528-34452018eb89.png" target="_blank">
> <img src="https://user-images.githubusercontent.com/2662304/235475061-44628011-3b1f-4c44-9528-34452018eb89.png" width="400" border="0" align="center"/>
> <img src="https://user-images.githubusercontent.com/2662304/235475061-44628011-3b1f-4c44-9528-34452018eb89.png" width="400" border="0" align="center" alt="Netdata NIDL Framework"/>
> </a>
You can rapidly access condensed information for collected metrics, grouped by node, monitored instances, dimension, or any key/value label pair.
At the Definition bar of each chart, there are a few dropdown menus:
<img src="https://user-images.githubusercontent.com/43294513/235470150-62a3b9ac-51ca-4c0d-81de-8804e3d733eb.png" width="900"/>
<img src="https://user-images.githubusercontent.com/43294513/235470150-62a3b9ac-51ca-4c0d-81de-8804e3d733eb.png" width="900" alt="Netdata Chart NIDL Dropdown menus"/>
These dropdown menus have 2 functions:
@ -171,7 +170,7 @@ All of these dropdown menus can be used for instantly filtering the information
The "Group by" dropdown menu allows selecting 1 or more groupings to be applied at once on the same dataset.
<img src="https://user-images.githubusercontent.com/43294513/235468819-3af5a1d3-8619-48fb-a8b7-8e8b4cf6a8ff.png" width="900"/>
<img src="https://user-images.githubusercontent.com/43294513/235468819-3af5a1d3-8619-48fb-a8b7-8e8b4cf6a8ff.png" width="900" alt="Netdata Chart Group by dropdown"/>
It supports:
@ -188,7 +187,7 @@ Using this menu, you can slice and dice the data in any possible way, to quickly
> You have the means to change the default group by or apply filtering to get a better view into what data your are trying to analyze.
> For example, if you change the group by to _instance_ you get a view with the data of all the instances (cgroups) that contribute to that chart.
> Then you can use further filtering tools to focus the data that is important to you and even save the result to your own dashboards.
>
> ### Tip
>
> Group by instance, dimension to see the time series of every individual collected metric participating in the chart.
@ -197,7 +196,7 @@ Using this menu, you can slice and dice the data in any possible way, to quickly
Each chart uses an opinionated-but-valuable default aggregate function over the data sources.
<img src="https://user-images.githubusercontent.com/70198089/236136725-778670b4-7e81-44a8-8d3d-f38ded823c94.png" width="500"/>
<img src="https://user-images.githubusercontent.com/70198089/236136725-778670b4-7e81-44a8-8d3d-f38ded823c94.png" width="500" alt="Netdata Chart Aggregate functions over data"/>
For example, the `system.cpu` chart shows the average for each dimension from every contributing chart, while the `net.net` chart shows the sum for each dimension from every contributing chart, which can also come from multiple networking interfaces.
@ -218,7 +217,7 @@ The following aggregate functions are available for each selected dimension:
In this dropdown, you can view or filter the nodes contributing time-series metrics to the chart.
This menu also provides the contribution of each node to the volume of the chart, and a break down of the anomaly rate of the queried data per node.
<img src="https://user-images.githubusercontent.com/70198089/236137765-b57d5443-3d4b-42f4-9e3d-db1eb606626f.png" width="900"/>
<img src="https://user-images.githubusercontent.com/70198089/236137765-b57d5443-3d4b-42f4-9e3d-db1eb606626f.png" width="900" alt="Netdata Chart Nodes dropdown"/>
If one or more nodes can't contribute to a given chart, the definition bar shows a warning symbol plus the number of
affected nodes, then lists them in the dropdown along with the associated error. Nodes might return errors because of
@ -229,38 +228,38 @@ networking issues, a stopped `netdata` service, or because that node does not ha
In this dropdown, you can view or filter the instances contributing time-series metrics to the chart.
This menu also provides the contribution of each instance to the volume of the chart, and a break down of the anomaly rate of the queried data per instance.
<img src="https://user-images.githubusercontent.com/70198089/236138302-4dd4072e-3a0d-43bb-a9d8-4dde79c65e92.png" width="900"/>
<img src="https://user-images.githubusercontent.com/70198089/236138302-4dd4072e-3a0d-43bb-a9d8-4dde79c65e92.png" width="900" alt="Netdata Chart Instances dropdown"/>
### Dimensions dropdown
In this dropdown, you can view or filter the original dimensions contributing time-series metrics to the chart.
This menu also presents the contribution of each original dimensions on the chart, and a break down of the anomaly rate of the data per dimension.
<img src="https://user-images.githubusercontent.com/70198089/236138796-08dc6ac6-9a50-4913-a46d-d9bbcedd48f6.png" width="900"/>
<img src="https://user-images.githubusercontent.com/70198089/236138796-08dc6ac6-9a50-4913-a46d-d9bbcedd48f6.png" width="900" alt="Netdata Chart Dimensions Dropdown"/>
### Labels dropdown
In this dropdown, you can view or filter the contributing time-series labels of the chart.
This menu also presents the contribution of each label on the chart,and a break down of the anomaly rate of the data per label.
<img src="https://user-images.githubusercontent.com/70198089/236139027-8a51a958-2074-4675-a41b-efff30d8f51a.png" width="900"/>
<img src="https://user-images.githubusercontent.com/70198089/236139027-8a51a958-2074-4675-a41b-efff30d8f51a.png" width="900" alt="Netdata Chart Labels Dropdown"/>
### Aggregate functions over time
When the granularity of the data collected is higher than the plotted points on the chart an aggregation function over
time is applied.
<img src="https://user-images.githubusercontent.com/70198089/236411297-e123db06-0117-4e24-a5ac-955b980a8f55.png" width="400"/>
<img src="https://user-images.githubusercontent.com/70198089/236411297-e123db06-0117-4e24-a5ac-955b980a8f55.png" width="400" alt="Netdata Chart Aggregate functions over time"/>
By default the aggregation applied is _average_ but the user can choose different options from the following:
- Min, Max, Average or Sum
- Percentile
- you can specify the percentile you want to focus on: 25th, 50th, 75th, 80th, 90th, 95th, 97th, 98th and 99th.
<img src="https://user-images.githubusercontent.com/70198089/236410299-de5f3367-f3b0-4beb-a73f-a49007c543d4.png" width="250"/>
<img src="https://user-images.githubusercontent.com/70198089/236410299-de5f3367-f3b0-4beb-a73f-a49007c543d4.png" width="250" alt="Netdata Chart Aggregate functions over time Percentile selection"/>
- Trimmed Mean or Trimmed Median
- you can choose the percentage of data tha you want to focus on: 1%, 2%, 3%, 5%, 10%, 15%, 20% and 25%.
<img src="https://user-images.githubusercontent.com/70198089/236410858-74b46af9-280a-4ab2-ad26-5a6aa9403aa8.png" width="250"/>
<img src="https://user-images.githubusercontent.com/70198089/236410858-74b46af9-280a-4ab2-ad26-5a6aa9403aa8.png" width="250" alt="Netdata Chart Aggregate functions over time Trimmed Mean or Median selection"/>
- Median
- Standard deviation
- Coefficient of variation
@ -280,7 +279,7 @@ It then uses these unique models during data collection to predict the value tha
If the value collected is an outlier, it is marked as anomalous.
<img src="https://user-images.githubusercontent.com/70198089/236139886-79d63cf6-61ed-4aa7-842c-b5a1728c870d.png" width="900"/>
<img src="https://user-images.githubusercontent.com/70198089/236139886-79d63cf6-61ed-4aa7-842c-b5a1728c870d.png" width="900" alt="Netdata Chart Anomaly Rate Ribbon"/>
This unmatched capability of real-time predictions as data is collected allows you to **detect anomalies for potentially millions of metrics across your entire infrastructure within a second of occurrence**.
@ -297,29 +296,29 @@ It includes a bar indicating the volume percentage of each time series compared
This overlay sorts all dimensions by value, makes bold the closest dimension to the mouse and presents a histogram based on the values of the dimensions.
<img src="https://user-images.githubusercontent.com/70198089/236141460-bfa66b99-d63c-4a2c-84b1-2509ed94857f.png" width="500"/>
<img src="https://user-images.githubusercontent.com/70198089/236141460-bfa66b99-d63c-4a2c-84b1-2509ed94857f.png" width="500" alt="Netdata Chart Hover over Chart"/>
When hovering the anomaly ribbon, the overlay sorts all dimensions by anomaly rate, and presents a histogram of these anomaly rates.
#### Info column
### Info column
Additionally, when hovering over the chart, the overlay may display an indication in the "Info" column.
Currently, this column is used to inform users of any data collection issues that might affect the chart.
Below each chart, there is an information ribbon. This ribbon currently shows 3 states related to the points presented in the chart:
1. **[P]: Partial Data**
1. **Partial Data**
At least one of the dimensions in the chart has partial data, meaning that not all instances available contributed data to this point. This can happen when a container is stopped, or when a node is restarted. This indicator helps to gain confidence of the dataset, in situations when unusual spikes or dives appear due to infrastructure maintenance, or due to failures to part of the infrastructure.
2. **[O]: Overflown**
2. **Overflown**
At least one of the data sources included in the chart has a counter that has overflowed at this point.
3. **[E]: Empty Data**
3. **Empty Data**
At least one of the dimensions included in the chart has no data at all for the given points.
All these indicators are also visualized per dimension, in the pop-over that appears when hovering the chart.
<img src="https://user-images.githubusercontent.com/70198089/236145768-8ffadd02-93a4-4e9e-b4ae-c1367f614a7e.png" width="700"/>
<img src="https://user-images.githubusercontent.com/70198089/236145768-8ffadd02-93a4-4e9e-b4ae-c1367f614a7e.png" width="700" alt="Netdata Chart Hover over the chart Info Column"/>
## Play, Pause and Reset
@ -346,7 +345,7 @@ Note: These interactions are available when the default "Pan" action is used fro
While exploring the chart, a tool bar will appear. This tool bar is there to support you on this task.
The available manipulation tools you can select are:
<img src="https://user-images.githubusercontent.com/70198089/236143292-c1d75528-263d-4ddd-9db8-b8d6a31cb83e.png" width="400" />
<img src="https://user-images.githubusercontent.com/70198089/236143292-c1d75528-263d-4ddd-9db8-b8d6a31cb83e.png" width="400" alt="Netdata Chart Tool bar"/>
- Pan
- Highlight
@ -383,7 +382,7 @@ Selecting timeframes is useful when you see an interesting spike or change in a
You can zoom to a specific timeframe, either horizontally of vertically, by selecting a timeframe.
| Interaction | Keyboard/mouse | Touchpad/touchscreen |
|:-------------------------------------------|:-------------------------------------|:-----------------------------------------------------|
|:-------------------------------------------|:-------------------------------------|:---------------------|
| **Zoom** to a specific timeframe | `Shift + mouse vertical selection` | `n/a` |
| **Horizontal Zoom** a specific Y-axis area | `Shift + mouse horizontal selection` | `n/a` |
@ -395,7 +394,7 @@ of an anomaly or outage.
Zooming out lets you see metrics within the larger context, such as the last hour, day, or week, which is useful in understanding what "normal" looks like, or to identify long-term trends, like a slow creep in memory usage.
| Interaction | Keyboard/mouse | Touchpad/touchscreen |
|:-------------------------------------------|:-------------------------------------|:-----------------------------------------------------|
|:-------------------|:----------------------------|:-----------------------------------------------------|
| **Zoom** in or out | `Shift + mouse scrollwheel` | `two-finger pinch` <br />`Shift + two-finger scroll` |
## Dimensions bar
@ -404,7 +403,7 @@ Zooming out lets you see metrics within the larger context, such as the last hou
The bottom legend where you can see the dimensions of the chart can be ordered by:
<img src="https://user-images.githubusercontent.com/70198089/236144658-6c3d0e31-9bcb-45f3-bb95-4eafdcbb0a58.png" width="300" />
<img src="https://user-images.githubusercontent.com/70198089/236144658-6c3d0e31-9bcb-45f3-bb95-4eafdcbb0a58.png" width="300" alt="Netdata Chart order dimensions legend"/>
- Dimension name (Ascending or Descending)
- Dimension value (Ascending or Descending)

View file

@ -12,4 +12,3 @@ tab, and then choose your preferred theme: **Light** or **Dark**.
**Light**:
![Light theme](https://github.com/netdata/netdata/assets/70198089/eb0fb8c1-5695-450a-8ba8-a185874e8496)

View file

@ -6,7 +6,7 @@ They can be used to retrieve additional information to help you troubleshoot or
> **Tip**
>
> You can also execute a Function from the [Nodes tab](/docs/dashboards-and-charts/nodes-tab.md), by pressing the `f(x)` button.
>
> **Note**
>
> If you get an error saying that your node can't execute Functions please check the [prerequisites](/docs/top-monitoring-netdata-functions.md#prerequisites).

View file

@ -77,7 +77,7 @@ To edit `stream.conf`, use again the [edit-config](/docs/netdata-agent/configura
#### Parent config
For the Parent, besides setting up streaming, this example also provides configuration for multiple [tiers of metrics storage](/docs/netdata-agent/configuration/optimizing-metrics-database/change-metrics-storage.md#calculate-the-system-resources-ram-disk-space-needed-to-store-metrics), for 10 Children, with about 2k metrics each. This allows for:
For the Parent, besides setting up streaming, this example also provides configuration for multiple [tiers of metrics storage](/docs/netdata-agent/configuration/optimizing-metrics-database/change-metrics-storage.md), for 10 Children, with about 2k metrics each. This allows for:
- 1s granularity at tier 0 for 1 week
- 1m granularity at tier 1 for 1 month

View file

@ -81,18 +81,13 @@ jobs:
log_type: auto
```
Restart Netdata with `sudo systemctl restart netdata`, or the [appropriate
method](/docs/netdata-agent/start-stop-restart.md)) for your system. Netdata should pick up your web server's access log and
begin showing real-time charts!
Restart Netdata with `sudo systemctl restart netdata`, or the [appropriate method](/docs/netdata-agent/start-stop-restart.md) for your system. Netdata should pick up your web server's access log and begin showing real-time charts!
### Custom log formats and fields
The web log collector is capable of parsing custom Nginx and Apache log formats and presenting them as charts, but we'll
leave that topic for a separate guide.
The web log collector is capable of parsing custom Nginx and Apache log formats and presenting them as charts, but we'll leave that topic for a separate guide.
We do have [extensive
documentation](/src/go/plugin/go.d/modules/weblog/README.md#custom-log-format) on how
to build custom parsing for Nginx and Apache logs.
We do have [extensive documentation](/src/go/plugin/go.d/modules/weblog/README.md) on how to build custom parsing for Nginx and Apache logs.
## Tweak web log collector alerts

View file

@ -137,5 +137,3 @@ Now that you're collecting metrics from your Unbound servers, let us know how it
for improvement or refinement based on real-world use cases. Feel free to [file an
issue](https://github.com/netdata/netdata/issues/new?assignees=&labels=bug%2Cneeds+triage&template=BUG_REPORT.yml) with your
thoughts.

View file

@ -1,10 +1,10 @@
# Customize the standard dashboard
> ### Disclaimer
> **Disclaimer**
>
> This document is only applicable to the v1 version of the dashboard and doesn't affect the [Netdata Dashboard](/docs/dashboards-and-charts/README.md).
While the [Netdata dashboard](/src/web/gui/README.md) comes preconfigured with hundreds of charts and
While the [Netdata dashboard](/src/web/gui/README.md) comes pre-configured with hundreds of charts and
thousands of metrics, you may want to alter your experience based on a particular use case or preferences.
## Dashboard settings
@ -24,7 +24,6 @@ Here are a few popular settings:
Find this setting under the **Visual** tab. By default, Netdata places the legend of dimensions _below_ charts.
Click this toggle to move the legend to the _right_ of charts.
### Change theme
Find this setting under the **Visual** tab. Choose between Dark (the default) and White.

View file

@ -39,7 +39,7 @@ To follow this tutorial, you need:
already.
- A working cluster running Kubernetes v1.9 or newer, with a Netdata deployment and connected parent/child nodes. See
our [Kubernetes deployment process](/packaging/installer/methods/kubernetes.md) for details on deployment and
conneting to Cloud.
connecting to Cloud.
- The [`kubectl`](https://kubernetes.io/docs/reference/kubectl/overview/) command line tool, within [one minor version
difference](https://kubernetes.io/docs/tasks/tools/install-kubectl/#before-you-begin) of your cluster, on an
administrative system.
@ -112,7 +112,6 @@ cluster](https://user-images.githubusercontent.com/1153921/109042169-19c8fa00-76
For example, the chart above shows a spike in the CPU utilization from `rabbitmq` every minute or so, along with a
baseline CPU utilization of 10-15% across the cluster.
## Pod and container metrics
Click on the **Kubernetes xxxxxxx...** section to jump down to Netdata Cloud's unique Kubernetes visualizations for view
@ -233,5 +232,3 @@ clusters of all sizes.
- [Netdata Agent · `kube-proxy`
collector](/src/go/plugin/go.d/modules/k8s_kubeproxy/README.md)
- [Netdata Agent · `cgroups.plugin`](/src/collectors/cgroups.plugin/README.md)

View file

@ -104,8 +104,7 @@ GRANT USAGE, REPLICATION CLIENT, PROCESS ON *.* TO 'netdata'@'localhost';
FLUSH PRIVILEGES;
```
Run `sudo systemctl restart netdata`, or the [appropriate alternative for your
system](/packaging/installer/README.md#maintaining-a-netdata-agent-installation), to collect dozens of metrics every second for robust MySQL monitoring.
Run `sudo systemctl restart netdata`, or the [appropriate alternative for your system](/docs/netdata-agent/start-stop-restart.md), to collect dozens of metrics every second for robust MySQL monitoring.
## Enable PHP monitoring

View file

@ -60,8 +60,7 @@ dev: custom-app
...
```
Restart Netdata with `sudo systemctl restart netdata`, or the [appropriate
method](/packaging/installer/README.md#maintaining-a-netdata-agent-installation) for your system, to begin seeing metrics for this particular
Restart Netdata with `sudo systemctl restart netdata`, or the [appropriate method](/docs/netdata-agent/start-stop-restart.md) for your system, to begin seeing metrics for this particular
group+process. You can also add additional processes to the same group.
You can set up `apps_groups.conf` to more show more precise eBPF metrics for any application or service running on your
@ -109,8 +108,7 @@ Replace `entry` with `return`:
network viewer = yes
```
Restart Netdata with `sudo systemctl restart netdata`, or the [appropriate
method](/packaging/installer/README.md#maintaining-a-netdata-agent-installation) for your system.
Restart Netdata with `sudo systemctl restart netdata`, or the [appropriate method](/docs/netdata-agent/start-stop-restart.md) for your system.
## Get familiar with per-application eBPF metrics and charts
@ -249,6 +247,3 @@ systems.
Now that you can see eBPF metrics in Netdata Cloud, you can [invite your
team](/docs/netdata-cloud/organize-your-infrastructure-invite-your-team.md#invite-your-team) and share your findings with others.

View file

@ -164,7 +164,7 @@ jobs:
address : 203.0.113.10:2182
```
Finally, [restart Netdata](/packaging/installer/README.md#maintaining-a-netdata-agent-installation).
Finally, [restart Netdata](/docs/netdata-agent/start-stop-restart.md).
```sh
sudo systemctl restart netdata
@ -187,5 +187,4 @@ sudo /etc/netdata/edit-config health.d/hdfs.conf
sudo /etc/netdata/edit-config health.d/zookeeper.conf
```
For more information about editing the defaults or writing new alert entities, see our
[health monitoring documentation](/src/health/README.md).
For more information about editing the defaults or writing new alert entities, see our [health monitoring documentation](/src/health/README.md).

View file

@ -17,12 +17,12 @@ execute. Python plugins require Python on the machine to be executed. Netdata us
production-grade collectors.
We generally do not accept contributions of Python modules to the GitHub project netdata/netdata. If you write a Python collector and
want to make it available for other users, you should create the pull request in https://github.com/netdata/community.
want to make it available for other users, you should create the pull request in <https://github.com/netdata/community>.
## What you need to get started
- A physical or virtual Linux system, which we'll call a _node_.
- A working [installation of Netdata](/packaging/installer/README.md) monitoring agent.
- A physical or virtual Linux system, which we'll call a _node_.
- A working [installation of Netdata](/packaging/installer/README.md) monitoring agent.
### Quick start
@ -81,7 +81,7 @@ Let's walk through these jobs and elements as independent elements first, then a
### Determine how to gather metrics data
Netdata can collect data from any program that can print to stdout. Common input sources for collectors can be logfiles,
Netdata can collect data from any program that can print to stdout. Common input sources for collectors can be log files,
HTTP requests, executables, and more. While this tutorial will offer some example inputs, your custom application will
have different inputs and metrics.
@ -117,13 +117,14 @@ context, charttype]`, where:
that is `A.B`, with `A` being the name of the collector, and `B` being the name of the specific metric.
- `charttype`: Either `line`, `area`, or `stacked`. If null line is the default value.
You can read more about `family` and `context` in the [web dashboard](/src/web/README.md#families) doc.
You can read more about `family` and `context` in the [Netdata Charts](/docs/dashboards-and-charts/netdata-charts.md) doc.
Once the chart has been defined, you should define the dimensions of the chart. Dimensions are basically the metrics to
be represented in this chart and each chart can have more than one dimension. In order to define the dimensions, the
"lines" list should be filled in with the required dimensions. Each dimension is a list:
`dimension: [id, name, algorithm, multiplier, divisor]`
- `id` : The id of the dimension. Mandatory unique field (string) required in order to set a value.
- `name`: The name to be presented in the chart. If null id will be used.
- `algorithm`: Can be absolute or incremental. If null absolute is used. Incremental shows the difference from the
@ -145,6 +146,7 @@ Once you have process your data and get the required values, you need to assign
This is done using the `data` dictionary, which is in the form:
`"data": {dimension_id: value }`, where:
- `dimension_id`: The id of a defined dimension in a created chart.
- `value`: The numerical value to associate with this dimension.
@ -153,6 +155,7 @@ This is done using the `data` dictionary, which is in the form:
Next, set the order of chart appearance with the `ORDER` list, which is in the form:
`"ORDER": [chart_name_1,chart_name_2, …., chart_name_X]`, where:
- `chart_name_x`: is the chart name to be shown in X order.
### Give the charts data to Netdata for visualization
@ -233,6 +236,7 @@ Every collector must implement `_get_data`. This method should grab raw data fro
parse it, and return a dictionary where keys are unique dimension names, or `None` if no data is collected.
For example:
```py
def _get_data(self):
try:
@ -410,7 +414,7 @@ ORDER = [
]
```
[Restart Netdata](/packaging/installer/README.md#maintaining-a-netdata-agent-installation) with `sudo systemctl restart netdata` to see the new humidity
[Restart Netdata](/docs/netdata-agent/start-stop-restart.md) to see the new humidity
chart:
![A snapshot of the modified chart](https://i.imgur.com/XOeCBmg.png)
@ -467,8 +471,7 @@ ORDER = [
]
```
[Restart Netdata](/packaging/installer/README.md#maintaining-a-netdata-agent-installation) with `sudo systemctl restart netdata` to see the new
min/max/average temperature chart with multiple dimensions:
[Restart Netdata](/docs/netdata-agent/start-stop-restart.md) to see the new min/max/average temperature chart with multiple dimensions:
![A snapshot of the modified chart](https://i.imgur.com/g7E8lnG.png)
@ -527,7 +530,7 @@ You can find the source code for the above examples on [GitHub](https://github.c
## Pull Request Checklist for Python Plugins
Pull requests should be created in https://github.com/netdata/community.
Pull requests should be created in <https://github.com/netdata/community>.
This is a generic checklist for submitting a new Python plugin for Netdata. It is by no means comprehensive.

View file

@ -102,7 +102,7 @@ You can edit the configuration file using the `edit-config` script from the Netd
destination = tcp:127.0.0.1:19999
```
[Restart the Agents](/packaging/installer/README.md#maintaining-a-netdata-agent-installation), and you are done!
[Restart the Agents](/docs/netdata-agent/start-stop-restart.md), and you are done!
You should now be able to have a Local Dashboard that gets its metrics from Child instances, running through Cloudflare tunnels.

View file

@ -2,7 +2,7 @@
The _Netdata style guide_ establishes editorial guidelines for any writing produced by the Netdata team or the Netdata community, including documentation, articles, in-product UX copy, and more.
> ### Note
> **Note**
> This document is meant to be accompanied by the [Documentation Guidelines](/docs/guidelines.md). If you want to contribute to Netdata's documentation, please read it too.
Both internal Netdata teams and external contributors to any of Netdata's open-source projects should reference and adhere to this style guide as much as possible.
@ -30,7 +30,6 @@ you're around. In writing, you reflect tone in your word choice, punctuation, se
The same idea about voice and tone applies to organizations, too. Our voice shouldn't change much between two pieces of
content, no matter who wrote each, but the tone might be quite different based on who we think is reading.
### Voice
Netdata's voice is authentic, passionate, playful, and respectful.
@ -63,7 +62,7 @@ the [language, grammar, and mechanics](#language-grammar-and-mechanics) section
- Would this language make sense to someone who doesn't work here?
- Could someone quickly scan this document and understand the material?
- Create an information hierarchy with key information presented first and clearly called out to improve scannability.
- Create an information hierarchy with key information presented first and clearly called out to improve clarity and readability.
- Avoid directional language like "sidebar on the right of the page" or "header at the top of the page" since
presentation elements may adapt for devices.
- Use descriptive links rather than "click here" or "learn more".
@ -237,7 +236,7 @@ Every link should clearly state its destination. Don't use words like "here" to
reader.
| | |
|-----------------|-----------------------------------------------------------------------------------------------------------------------------------------|
|-----------------|-------------------------------------------------------------------------------------------|
| Not recommended | To install Netdata, click [here](/packaging/installer/README.md). |
| **Recommended** | To install Netdata, read the [installation instructions](/packaging/installer/README.md). |
@ -301,7 +300,7 @@ universal.
Don't include full paths, beginning from the system's root (`/`), as these might not work on certain systems.
| | |
|-----------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|-----------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Not recommended | Use `edit-config` to edit Netdata's configuration: `sudo /etc/netdata/edit-config netdata.conf`. |
| **Recommended** | Use `edit-config` to edit Netdata's configuration by first navigating to your [Netdata config directory](/docs/netdata-agent/configuration/README.md#the-netdata-config-directory), which is typically at `/etc/netdata`, then running `sudo edit-config netdata.conf`. |
@ -394,27 +393,26 @@ the [Docusaurus documentation](https://v2.docusaurus.io/docs/markdown-features#c
Notes inside files should render properly both in GitHub and in Learn, to do that, it is best to use the format listed below:
```
> ### Note
```md
> **Note**
> This is an info or a note block.
> ### Tip, Best Practice
> **Tip, Best Practice**
> This is a tip or a best practice block.
> ### Warning, Caution
> **Warning, Caution**
> This is a warning or a caution block.
```
Which renders into:
> ### Note
> **Note**
> This is an info or a note block.
> ### Tip, Best Practice
> **Tip, Best Practice**
> This is a tip or a best practice block.
> ### Warning, Caution
> **Warning, Caution**
> This is a warning or a caution block.
### Tabs
@ -450,15 +448,15 @@ The following tables describe the standard spelling, capitalization, and usage o
| Term | Definition |
|-----------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **claimed node** | A node that you've proved ownership of by completing the [connecting to Cloud process](/src/claim/README.md). The claimed node will then appear in your Space and any Rooms you added it to. |
| **Connected Node** | A node that you've proved ownership of by completing the [connecting to Cloud process](/src/claim/README.md). The claimed node will then appear in your Space and any Rooms you added it to. |
| **Netdata** | The company behind the open-source Netdata Agent and the Netdata Cloud web application. Never use _netdata_ or _NetData_. <br /><br />In general, focus on the user's goals, actions, and solutions rather than what the company provides. For example, write _Learn more about enabling alert notifications on your preferred platforms_ instead of _Netdata sends alert notifications to your preferred platforms_. |
| **Netdata Agent** | The free and open source [monitoring agent](https://github.com/netdata/netdata) that you can install on all of your distributed systems, whether they're physical, virtual, containerized, ephemeral, and more. The Agent monitors systems running Linux, Docker, Kubernetes, macOS, FreeBSD, and more, and collects metrics from hundreds of popular services and applications. |
| **Netdata Cloud** | The web application hosted at [https://app.netdata.cloud](https://app.netdata.cloud) that helps you monitor an entire infrastructure of distributed systems in real time. <br /><br />Never use _Cloud_ without the preceding _Netdata_ to avoid ambiguity. |
| **Netdata community forum** | The Discourse-powered forum for feature requests, Netdata Cloud technical support, and conversations about Netdata's monitoring and troubleshooting products. |
| **node** | A system on which the Netdata Agent is installed. The system can be physical, virtual, in a Docker container, and more. Depending on your infrastructure, you may have one, dozens, or hundreds of nodes. Some nodes are _ephemeral_, in that they're created/destroyed automatically by an orchestrator service. |
| **Node** | A system on which the Netdata Agent is installed. The system can be physical, virtual, in a Docker container, and more. Depending on your infrastructure, you may have one, dozens, or hundreds of nodes. Some nodes are _ephemeral_, in that they're created/destroyed automatically by an orchestrator service. |
| **Space** | The highest level container within Netdata Cloud for a user to organize their team members and nodes within their infrastructure. A Space likely represents an entire organization or a large team. <br /><br />_Space_ is always capitalized. |
| **unreachable node** | A connected node with a disrupted [Agent-Cloud link](/src/aclk/README.md). Unreachable could mean the node no longer exists or is experiencing network connectivity issues with Cloud. |
| **visited node** | A node which has had its Agent dashboard directly visited by a user. A list of these is maintained on a per-user basis. |
| **Unreachable node** | A connected node with a disrupted [Agent-Cloud link](/src/aclk/README.md). Unreachable could mean the node no longer exists or is experiencing network connectivity issues with Cloud. |
| **Visited Node** | A node which has had its Agent dashboard directly visited by a user. A list of these is maintained on a per-user basis. |
| **Room** | A smaller grouping of nodes where users can view key metrics in real-time and monitor the health of many nodes with their alert status. Rooms can be used to organize nodes in any way that makes sense for your infrastructure, such as by a service, purpose, physical location, and more. <br /><br />_Room_ is always capitalized. |
### Other technical terms
@ -466,5 +464,5 @@ The following tables describe the standard spelling, capitalization, and usage o
| Term | Definition |
|-----------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **filesystem** | Use instead of _file system_. |
| **preconfigured** | The concept that many of Netdata's features come with sane defaults that users don't need to configure to find immediate value. |
| **pre-configured** | The concept that many of Netdata's features come with sane defaults that users don't need to configure to find immediate value. |
| **real time**/**real-time** | Use _real time_ as a noun phrase, most often with _in_: _Netdata collects metrics in real time_. Use _real-time_ as an adjective: _Netdata collects real-time metrics from hundreds of supported applications and services. |

View file

@ -6,7 +6,7 @@ As such, we want to provide a little Glossary as a reference starting point for
If you're here looking for the definition of a term you heard elsewhere in our community or products, or if you just want to learn Netdata from the ground up, you've come to the right page.
Use the alphabatized list below to find the answer to your single-term questions, and click the bolded list items to explore more on the topics! We'll be sure to keep constantly updating this list, so if you hear a word that you would like for us to cover, just let us know or submit a request!
Use the alphabetized list below to find the answer to your single-term questions, and click the bolded list items to explore more on the topics! We'll be sure to keep constantly updating this list, so if you hear a word that you would like for us to cover, just let us know or submit a request!
[A](#a) | [B](#b) | [C](#c) | [D](#d)| [E](#e) | [F](#f) | [G](#g) | [H](#h) | [I](#i) | [J](#j) | [K](#k) | [L](#l) | [M](#m) | [N](#n) | [O](#o) | [P](#p)
| [Q](#q) | [R](#r) | [S](#s) | [T](#t) | [U](#u) | [V](#v) | [W](#w) | [X](#x) | [Y](#y) | [Z](#z)
@ -65,7 +65,7 @@ Use the alphabatized list below to find the answer to your single-term questions
## G
- [**Group by**](/docs/dashboards-and-charts/netdata-charts.md#group-by-dimension-node-or-chart): The drop-down on the dimension bar of a composite chart that allows you to group metrics by dimension, node, or chart.
- [**Group by**](/docs/dashboards-and-charts/netdata-charts.md#group-by-dropdown): The drop-down on the dimension bar of a composite chart that allows you to group metrics by dimension, node, or chart.
- [**Health Configuration Files**](/src/health/REFERENCE.md#edit-health-configuration-files): Files that you can edit to configure your Agent's health watchdog service.
@ -110,7 +110,7 @@ metrics, troubleshoot complex performance problems, and make data interoperable
## O
- [**Obsoletion**(of nodes)](/docs/netdata-cloud/organize-your-infrastructure-invite-your-team.md#obsoleting-offline-nodes-from-a-space): Removing nodes from a space.
- [**Obsoletion**(of nodes)](/docs/dashboards-and-charts/nodes-tab.md): Removing nodes from a space.
- [**Orchestrators**](/src/collectors/README.md#collector-architecture-and-terminology): External plugins that run and manage one or more modules. They run as independent processes.
@ -145,8 +145,8 @@ even thousands of nodes. There are no actual bottlenecks especially if you retai
## V
- [**Visualizations**](/docs/category-overview-pages/visualizations-overview.md): Netdata uses dimensions, contexts, and families to sort your metric data into graphs, charts, and alerts that maximize your understand of your infrastructure and your ability to troubleshoot it, along or on a team.
- [**Visualizations**](/docs/dashboards-and-charts/README.md): Netdata uses dimensions, contexts, and families to sort your metric data into graphs, charts, and alerts that maximize your understand of your infrastructure and your ability to troubleshoot it, along or on a team.
## Z
- **Zero Configuration**: Netdata is preconfigured and capable to autodetect and monitor any well known application that runs on your system. You just deploy and claim Netdata Agents in your Netdata space, and monitor them in seconds.
- **Zero Configuration**: Netdata is pre-configured and capable to autodetect and monitor any well known application that runs on your system. You just deploy and claim Netdata Agents in your Netdata space, and monitor them in seconds.

View file

@ -49,7 +49,7 @@ Please ensure that any links to a different documentation resource are fully exp
e.g.
```
```txt
[Correct link to this document](/docs/guidelines.md)
vs
[Incorrect link to this document](https://learn.netdata.cloud/XYZ)

View file

@ -9,12 +9,11 @@
When preparing to backup a Netdata Agent it is worth considering that there are different kinds of data that you may wish to backup independently or all together:
| Data type | Description | Location |
|---------------------|------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------|
|---------------------|------------------------------------------------------|-----------------------------------------------------------------|
| Agent configuration | Files controlling configuration of the Netdata Agent | [config directory](/docs/netdata-agent/configuration/README.md) |
| Metrics | Database files | /var/cache/netdata |
| Identity | Claim token, API key and some other files | /var/lib/netdata |
## Scenarios
### Backing up to restore data in case of a node failure
@ -31,7 +30,7 @@ In this standard scenario, you are backing up your Netdata Agent in case of a no
3. Using a backup tool such as `tar` you will need to run the backup as _root_ or as the _netdata_ user to access all the files in the directories.
```
```bash
sudo tar -cvpzf netdata_backup.tar.gz /etc/netdata/ /var/cache/netdata /var/lib/netdata
```
@ -50,21 +49,21 @@ If you want to minimize the gap in metrics caused by stopping the Netdata Agent,
If you plan to deploy the Agent and restore a backup on top of it, then you might find it helpful to use the [`--dont-start-it`](/packaging/installer/methods/kickstart.md#other-options) option upon installation.
```
```bash
wget -O /tmp/netdata-kickstart.sh https://get.netdata.cloud/kickstart.sh && sh /tmp/netdata-kickstart.sh --dont-start-it
```
> **Note**
> If you are going to restore the database files then you should first ensure that the Metrics directory is empty.
>
> ```
> ```bash
> sudo rm -Rf /var/cache/netdata
> ```
2. Restore the backup from the archive
```
```bash
sudo tar -xvpzf /path/to/netdata_backup.tar.gz -C /
```
3. [Start the Netdata agent](/docs/netdata-agent/start-stop-restart.md))
3. [Start the Netdata agent](/docs/netdata-agent/start-stop-restart.md)

View file

@ -4,7 +4,7 @@ The main Netdata Agent configuration is `netdata.conf`.
## The Netdata config directory
On most Linux systems, by using our [recommended one-line installation](/packaging/installer/README.md#install-on-linux-with-one-line-installer), the **Netdata config
On most Linux systems, the **Netdata config
directory** will be `/etc/netdata/`. The config directory contains several configuration files with the `.conf` extension, a
few directories, and a shell script named `edit-config`.
@ -33,7 +33,7 @@ Your editor will open.
The running version of `netdata.conf` can be downloaded from a running Netdata Agent, at this URL:
```
```url
http://agent-ip:19999/netdata.conf
```

View file

@ -1,14 +1,6 @@
<!--
title: "Anonymous telemetry events"
custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/anonymous-telemetry-events.md
sidebar_label: "Anonymous telemetry events"
learn_status: "Published"
learn_rel_path: "Configuration"
-->
# Anonymous telemetry events
By default, Netdata collects anonymous usage information from the open-source monitoring agent. For agent events like start,stop,crash etc we use our own cloud function in GCP. For frontend telemetry (pageviews etc.) on the agent dashboard itself we use the open-source
By default, Netdata collects anonymous usage information from the open-source monitoring agent. For agent events like start,stop,crash etc we use our own cloud function in GCP. For frontend telemetry (page views etc.) on the agent dashboard itself we use the open-source
product analytics platform [PostHog](https://github.com/PostHog/posthog).
We are strongly committed to your [data privacy](https://netdata.cloud/privacy/).
@ -99,5 +91,3 @@ Each of these opt-out processes does the following:
- Prevents the daemon from executing the anonymous statistics script.
- Forces the anonymous statistics script to exit immediately.
- Stops the PostHog JavaScript snippet, which remains on the dashboard, from firing and sending any data to the Netdata PostHog.

View file

@ -2,7 +2,7 @@
Below you will find some of the most common actions that one can take while using Netdata. You can use this page as a quick reference for installing Netdata, connecting a node to the Cloud, properly editing the configuration, accessing Netdata's API, and more!
### Install Netdata
## Install Netdata
```bash
wget -O /tmp/netdata-kickstart.sh https://get.netdata.cloud/kickstart.sh && sh /tmp/netdata-kickstart.sh
@ -11,12 +11,12 @@ wget -O /tmp/netdata-kickstart.sh https://get.netdata.cloud/kickstart.sh && sh /
curl https://get.netdata.cloud/kickstart.sh > /tmp/netdata-kickstart.sh && sh /tmp/netdata-kickstart.sh
```
#### Connect a node to Netdata Cloud
### Connect a node to Netdata Cloud
To do so, sign in to Netdata Cloud, on your Space under the Nodes tab, click `Add Nodes` and paste the provided command into your nodes terminal and run it.
You can also copy the Claim token and pass it to the installation script with `--claim-token` and re-run it.
### Configuration
## Configuration
**Netdata's config directory** is `/etc/netdata/` but in some operating systems it might be `/opt/netdata/etc/netdata/`.
Look for the `# config directory =` line over at `http://NODE_IP:19999/netdata.conf` to find your config directory.
@ -25,51 +25,7 @@ From within that directory you can run `sudo ./edit-config netdata.conf` **to ed
You can edit other config files too, by specifying their filename after `./edit-config`.
You are expected to use this method in all following configuration changes.
<!-- #### Edit Netdata's other config files (examples):
- `$ sudo ./edit-config apps_groups.conf`
- `$ sudo ./edit-config ebpf.conf`
- `$ sudo ./edit-config health.d/load.conf`
- `$ sudo ./edit-config go.d/prometheus.conf`
#### View the running Netdata configuration: `http://NODE:19999/netdata.conf`
> Replace `NODE` with the IP address or hostname of your node. Often `localhost`.
## Metrics collection & retention
You can tweak your settings in the netdata.conf file.
📄 [Find your netdata.conf file](/src/daemon/config/README.md)
Open a new terminal and navigate to the netdata.conf file. Use the edit-config script to make changes: `sudo ./edit-config netdata.conf`
The most popular settings to change are:
#### Increase metrics retention (4GiB)
```
sudo ./edit-config netdata.conf
```
```
[global]
dbengine multihost disk space = 4096
```
#### Reduce the collection frequency (every 5 seconds)
```
sudo ./edit-config netdata.conf
```
```
[global]
update every = 5
``` -->
---
#### Enable/disable plugins (groups of collectors)
### Enable/disable plugins (groups of collectors)
```bash
sudo ./edit-config netdata.conf
@ -81,7 +37,7 @@ sudo ./edit-config netdata.conf
node.d = no # disabled
```
#### Enable/disable specific collectors
### Enable/disable specific collectors
```bash
sudo ./edit-config go.d.conf # edit a plugin's config
@ -93,20 +49,14 @@ modules:
cockroachdb: yes # enabled
```
#### Edit a collector's config
### Edit a collector's config
```bash
sudo ./edit-config go.d/mysql.conf
```
### Alerts & notifications
## Alerts & notifications
<!-- #### Add a new alert
```
sudo touch health.d/example-alert.conf
sudo ./edit-config health.d/example-alert.conf
``` -->
After any change, reload the Netdata health configuration:
```bash
@ -115,32 +65,23 @@ netdatacli reload-health
killall -USR2 netdata
```
#### Configure a specific alert
### Configure a specific alert
```bash
sudo ./edit-config health.d/example-alert.conf
```
#### Silence a specific alert
### Silence a specific alert
```bash
sudo ./edit-config health.d/example-alert.conf
```
```
```txt
to: silent
```
<!-- #### Disable alerts and notifications
```conf
[health]
enabled = no
``` -->
---
### Manage the daemon
## Manage the daemon
| Intent | Action |
|:----------------------------|------------------------------------------------------------:|
@ -151,65 +92,22 @@ sudo ./edit-config health.d/example-alert.conf
| View error logs | `less /var/log/netdata/error.log` |
| View collectors logs | `less /var/log/netdata/collector.log` |
#### Change the port Netdata listens to (example, set it to port 39999)
### Change the port Netdata listens to (example, set it to port 39999)
```conf
[web]
default port = 39999
```
### See metrics and dashboards
## See metrics and dashboards
#### Netdata Cloud: `https://app.netdata.cloud`
### Netdata Cloud: `https://app.netdata.cloud`
#### Local dashboard: `https://NODE:19999`
### Local dashboard: `https://NODE:19999`
> Replace `NODE` with the IP address or hostname of your node. Often `localhost`.
### Access the Netdata API
## Access the Netdata API
You can access the API like this: `http://NODE:19999/api/VERSION/REQUEST`.
If you want to take a look at all the API requests, check our API page at <https://learn.netdata.cloud/api>
<!--
## Interact with charts
| Intent | Action |
| -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
| Stop a chart from updating | `click` |
| Zoom | **Cloud** <br/> use the `zoom in` and `zoom out` buttons on any chart (upper right corner) <br/><br/> **Agent**<br/>`SHIFT` or `ALT` + `mouse scrollwheel` <br/> `SHIFT` or `ALT` + `two-finger pinch` (touchscreen) <br/> `SHIFT` or `ALT` + `two-finger scroll` (touchscreen) |
| Zoom to a specific timeframe | **Cloud**<br/>use the `select and zoom` button on any chart and then do a `mouse selection` <br/><br/> **Agent**<br/>`SHIFT` + `mouse selection` |
| Pan forward or back in time | `click` & `drag` <br/> `touch` & `drag` (touchpad/touchscreen) |
| Select a certain timeframe | `ALT` + `mouse selection` <br/> WIP need to evaluate this `command?` + `mouse selection` (macOS) |
| Reset to default auto refreshing state | `double click` | -->
<!-- ## Dashboards
#### Disable the local dashboard
Use the `edit-config` script to edit the `netdata.conf` file.
```
[web]
mode = none
``` -->
<!-- #### Opt out from anonymous statistics
```
sudo touch .opt-out-from-anonymous-statistics
``` -->
<!-- ## Understanding the dashboard
**Charts**: A visualization displaying one or more collected/calculated metrics in a time series. Charts are generated
by collectors.
**Dimensions**: Any value shown on a chart, which can be raw or calculated values, such as percentages, averages,
minimums, maximums, and more.
**Families**: One instance of a monitored hardware or software resource that needs to be monitored and displayed
separately from similar instances. Example, disks named
**sda**, **sdb**, **sdc**, and so on.
**Contexts**: A grouping of charts based on the types of metrics collected and visualized.
**disk.io**, **disk.ops**, and **disk.backlog** are all contexts. -->

View file

@ -52,7 +52,7 @@ for that specific module. Uncomment the line and change its value to `no`.
## Modify alerts and notifications
Netdata's health monitoring watchdog uses hundreds of preconfigured health entities, with intelligent thresholds, to
Netdata's health monitoring watchdog uses hundreds of pre-configured health entities, with intelligent thresholds, to
generate warning and critical alerts for most production systems and their applications without configuration. However,
each alert and notification method is completely customizable.
@ -107,7 +107,7 @@ section of `netdata.conf`.
### Enable alert notifications
Open `health_alarm_notify.conf` for editing. First, read the [enabling notifications](/docs/alerts-and-notifications/notifications/README.md#netdata-agent) doc
Open `health_alarm_notify.conf` for editing. First, read the [enabling notifications](/src/health/notifications/README.md) doc
for an example of the process using Slack, then
click on the link to your preferred notification method to find documentation for that specific endpoint.

View file

@ -88,7 +88,6 @@ require disk I/O may stop and show gaps in charts.
To optimize your disk footprint in any aspect described below you can:
To configure retention, you can:
1. [Change how long Netdata stores metrics](/docs/netdata-agent/configuration/optimizing-metrics-database/change-metrics-storage.md).
@ -97,7 +96,6 @@ To control disk I/O:
1. [Use a different metric storage database](/src/database/README.md),
Minimize deployment impact on the production system by optimizing disk footprint:
1. [Using streaming and replication](#use-streaming-and-replication)
@ -263,4 +261,3 @@ Or to lower the default compression level:
enable gzip compression = yes
gzip compression level = 1
```

View file

@ -32,7 +32,7 @@ retention strategies as shown in the table below:
You can change these limits in `netdata.conf`:
```
```text
[db]
mode = dbengine
storage tiers = 3
@ -63,7 +63,7 @@ your storage space (disk space limits) and time (time limits) are used for metri
Netdata prior to v2 supports the following configuration options in `netdata.conf`.
They have the same defaults as the latest v2, but the unit of each value is given in the option name, not at the value.
```
```text
storage tiers = 3
# Tier 0, per second data. Set to 0 for no limit.
dbengine tier 0 disk space MB = 1024
@ -90,7 +90,7 @@ Netdata versions prior to v1.46.0 relied on a disk space-based retention.
You can change these limits in `netdata.conf`:
```
```text
[db]
mode = dbengine
storage tiers = 3
@ -128,7 +128,6 @@ If `dbengine disk space MB`(**deprecated**) is set to the default `256`, each in
which means the total disk space required to store all instances is,
roughly, `256 MiB * 1 parent * 4 child nodes = 1280 MiB`.
#### Backward compatibility
All existing metrics belonging to child nodes are automatically converted to legacy dbengine instances and the localhost

View file

@ -21,15 +21,17 @@ individual node that matters.
To define your windows server as a virtual node you need to:
* Define virtual nodes in `/etc/netdata/vnodes/vnodes.conf`
* Define virtual nodes in `/etc/netdata/vnodes/vnodes.conf`
```yaml
- hostname: win_server1
guid: <value>
```
Just remember to use a valid guid (On Linux you can use `uuidgen` command to generate one, on Windows just use the `[guid]::NewGuid()` command in PowerShell)
* Add the vnode config to the data collection job. e.g. in `go.d/windows.conf`:
* Add the vnode config to the data collection job. e.g. in `go.d/windows.conf`:
```yaml
jobs:
- name: win_server1
@ -41,9 +43,9 @@ To define your windows server as a virtual node you need to:
Host labels can be extremely useful when:
- You need alerts that adapt to the system's purpose
- You need properly-labeled metrics archiving so you can sort, correlate, and mash-up your data to your heart's content.
- You need to keep tabs on ephemeral Docker containers in a Kubernetes cluster.
* You need alerts that adapt to the system's purpose
* You need properly-labeled metrics archiving so you can sort, correlate, and mash-up your data to your heart's content.
* You need to keep tabs on ephemeral Docker containers in a Kubernetes cluster.
Let's take a peek into how to create host labels and apply them across a few of Netdata's features to give you more
organization power over your infrastructure.
@ -56,16 +58,17 @@ parent-child status, and more.
They capture the following:
- Kernel version
- Operating system name and version
- CPU architecture, system cores, CPU frequency, RAM, and disk space
- Whether Netdata is running inside of a container, and if so, the OS and hardware details about the container's host
- Whether Netdata is running inside K8s node
- What virtualization layer the system runs on top of, if any
- Whether the system is a streaming parent or child
* Kernel version
* Operating system name and version
* CPU architecture, system cores, CPU frequency, RAM, and disk space
* Whether Netdata is running inside of a container, and if so, the OS and hardware details about the container's host
* Whether Netdata is running inside K8s node
* What virtualization layer the system runs on top of, if any
* Whether the system is a streaming parent or child
If you want to organize your systems without manually creating host labels, try the automatic labels in some of the
features below. You can see them under `http://HOST-IP:19999/api/v1/info`, beginning with an underscore `_`.
```json
{
...
@ -126,7 +129,6 @@ read the status of your agent. For example, from a VPS system running Debian 10:
}
```
### Host labels in streaming
You may have noticed the `_is_parent` and `_is_child` automatic labels from above. Host labels are also now
@ -138,8 +140,7 @@ Now, if you'd like to remind yourself of how much RAM a certain child node has,
child system. It's a vastly simplified way of accessing critical information about your infrastructure.
> ⚠️ Because automatic labels for child nodes are accessible via API calls, and contain sensitive information like
> kernel and operating system versions, you should secure streaming connections with SSL. See the [streaming
> documentation](/src/streaming/README.md#securing-streaming-communications) for details. You may also want to use
> kernel and operating system versions, you should secure streaming connections with SSL. See the [streaming documentation](/src/streaming/README.md#securing-streaming-with-tlsssl) for details. You may also want to use
> [access lists](/src/web/server/README.md#access-lists) or [expose the API only to LAN/localhost
> connections](/docs/netdata-agent/securing-netdata-agents.md#expose-netdata-only-in-a-private-lan).
@ -236,14 +237,14 @@ The web servers are load balanced and provide access to the service "Payments".
You can define the following in `go.d.conf`, to be able to group the web requests by service or location:
```
```yaml
jobs:
- name: mywebserver1
- name: my_webserver1
url: http://host1/server-status?auto
labels:
service: "Payments"
location: "Atlanta"
- name: mywebserver2
- name: my_webserver2
url: http://host2/server-status?auto
labels:
service: "Payments"

View file

@ -26,7 +26,7 @@ The above will prevent anyone except your web server to access a Netdata dashboa
You can also use `netdata.conf`:
```
```txt
[web]
allow connections from = localhost 1.2.3.4
```

View file

@ -1,4 +1,4 @@
# Netdata via Apache's mod_proxy
# Running Netdata behind Apache's mod_proxy
Below you can find instructions for configuring an apache server to:
@ -29,6 +29,7 @@ Also, enable the rewrite module:
```sh
sudo a2enmod rewrite
```
## Netdata on an existing virtual host
On any **existing** and already **working** apache virtual host, you can redirect requests for URL `/netdata/` to one or more Netdata servers.
@ -97,7 +98,7 @@ Add the following on top of any existing virtual host. It will allow you to acce
If you want to control the servers your users can connect to, replace the `ProxyPassMatch` line with the following. This allows only `server1`, `server2`, `server3` and `server4`.
```
```txt
ProxyPassMatch "^/netdata/(server1|server2|server3|server4)/(.*)" "http://$1:19999/$2" connectiontimeout=5 timeout=30 keepalive=on
```
@ -145,10 +146,10 @@ _Assuming the main goal is to make Netdata running in HTTPS._
1. Make a subdomain for Netdata on which you enable and force HTTPS - You can use a free Let's Encrypt certificate
2. Go to "Apache & nginx Settings", and in the following section, add:
```conf
RewriteEngine on
RewriteRule (.*) http://localhost:19999/$1 [P,L]
```
```conf
RewriteEngine on
RewriteRule (.*) http://localhost:19999/$1 [P,L]
```
3. Optional: If your server is remote, then just replace "localhost" with your actual hostname or IP, it just works.
@ -217,7 +218,7 @@ Note: Changes are applied by reloading or restarting Apache.
If you want to enable CSP within your Apache, you should consider some special requirements of the headers. Modify your configuration like that:
```
```txt
Header always set Content-Security-Policy "default-src http: 'unsafe-inline' 'self' 'unsafe-eval'; script-src http: 'unsafe-inline' 'self' 'unsafe-eval'; style-src http: 'self' 'unsafe-inline'"
```
@ -268,87 +269,79 @@ following:
See issues [#2011](https://github.com/netdata/netdata/issues/2011) and
[#7658](https://github.com/netdata/netdata/issues/7568) for more information.
# Netdata configuration
## Netdata configuration
You might edit `/etc/netdata/netdata.conf` to optimize your setup a bit. For applying these changes you need to restart Netdata.
## Response compression
### Response compression
If you plan to use Netdata exclusively via apache, you can gain some performance by preventing double compression of its output (Netdata compresses its response, apache re-compresses it) by editing `/etc/netdata/netdata.conf` and setting:
```
```txt
[web]
enable gzip compression = no
```
Once you disable compression at Netdata (and restart it), please verify you receive compressed responses from apache (it is important to receive compressed responses - the charts will be more snappy).
## Limit direct access to Netdata
### Limit direct access to Netdata
You would also need to instruct Netdata to listen only on `localhost`, `127.0.0.1` or `::1`.
```
```txt
[web]
bind to = localhost
```
or
```
```txt
[web]
bind to = 127.0.0.1
```
or
```
```txt
[web]
bind to = ::1
```
You can also use a unix domain socket. This will also provide a faster route between apache and Netdata:
```
```txt
[web]
bind to = unix:/tmp/netdata.sock
```
Apache 2.4.24+ can not read from `/tmp` so create your socket in `/var/run/netdata`
```
```txt
[web]
bind to = unix:/var/run/netdata/netdata.sock
```
_note: Netdata v1.8+ support unix domain sockets_
At the apache side, prepend the 2nd argument to `ProxyPass` with `unix:/tmp/netdata.sock|`, like this:
```
```txt
ProxyPass "/netdata/" "unix:/tmp/netdata.sock|http://localhost:19999/" connectiontimeout=5 timeout=30 keepalive=on
```
If your apache server is not on localhost, you can set:
```
```txt
[web]
bind to = *
allow connections from = IP_OF_APACHE_SERVER
```
*note: Netdata v1.9+ support `allow connections from`*
`allow connections from` accepts [Netdata simple patterns](/src/libnetdata/simple_pattern/README.md) to match against the connection IP address.
## Prevent the double access.log
apache logs accesses and Netdata logs them too. You can prevent Netdata from generating its access log, by setting this in `/etc/netdata/netdata.conf`:
```
```txt
[logs]
access = off
```
@ -359,5 +352,3 @@ Make sure the requests reach Netdata, by examining `/var/log/netdata/access.log`
1. if the requests do not reach Netdata, your apache does not forward them.
2. if the requests reach Netdata but the URLs are wrong, you have not re-written them properly.

View file

@ -1,15 +1,6 @@
<!--
title: "Netdata via Caddy"
custom_edit_url: "https://github.com/netdata/netdata/edit/master/docs/Running-behind-caddy.md"
sidebar_label: "Netdata via Caddy"
learn_status: "Published"
learn_topic_type: "Tasks"
learn_rel_path: "Configuration/Secure your nodes"
-->
# Running Netdata behind Caddy
# Netdata via Caddy
To run Netdata via [Caddy v2 proxying,](https://caddyserver.com/docs/caddyfile/directives/reverse_proxy) set your Caddyfile up like this:
To run Netdata via [Caddy v2 reverse proxy,](https://caddyserver.com/docs/caddyfile/directives/reverse_proxy) set your Caddyfile up like this:
```caddyfile
netdata.domain.tld {
@ -34,5 +25,3 @@ netdata.domain.tld {
You would also need to instruct Netdata to listen only to `127.0.0.1` or `::1`.
To limit access to Netdata only from localhost, set `bind socket to IP = 127.0.0.1` or `bind socket to IP = ::1` in `/etc/netdata/netdata.conf`.

View file

@ -21,7 +21,7 @@ It is notable for having much simpler configuration than many popular HTTP serve
- Password protect access to the Netdata dashboard without requiring Netdata Cloud.
## H2O configuration file.
## H2O configuration file
On most systems, the H2O configuration is found under `/etc/h2o`. H2O uses [YAML 1.1](https://yaml.org/spec/1.1/), with a few special extensions, for its configuration files, with the main configuration file being `/etc/h2o/h2o.conf`.
@ -72,7 +72,7 @@ hosts:
### As a subfolder for multiple Netdata servers, via one H2O instance
This is the recommended configuration when one H2O instance will be used to manage multiple Netdata servers via subfolders.
This is the recommended configuration when one H2O instance will be used to manage multiple Netdata servers via sub-folders.
```yaml
hosts:
@ -105,7 +105,7 @@ Using the above, you access Netdata on the backend servers, like this:
### Encrypt the communication between H2O and Netdata
In case Netdata's web server has been [configured to use TLS](/src/web/server/README.md#enabling-tls-support), it is
In case Netdata's web server has been [configured to use TLS](/src/web/server/README.md#enable-httpstls-support), it is
necessary to specify inside the H2O configuration that the final destination is using TLS. To do this, change the
`http://` on the `proxy.reverse.url` line in your H2O configuration with `https://`
@ -141,31 +141,27 @@ For more information on using basic authentication with H2O, see [their official
If your H2O server is on `localhost`, you can use this to ensure external access is only possible through H2O:
```
```txt
[web]
bind to = 127.0.0.1 ::1
```
You can also use a unix domain socket. This will provide faster communication between H2O and Netdata as well:
```
```txt
[web]
bind to = unix:/run/netdata/netdata.sock
```
In the H2O configuration, use a line like the following to connect to Netdata via the unix socket:
```yaml
```txt
proxy.reverse.url http://[unix:/run/netdata/netdata.sock]
```
If your H2O server is not on localhost, you can set:
```
```txt
[web]
bind to = *
allow connections from = IP_OF_H2O_SERVER
@ -181,7 +177,7 @@ the connection IP address.
H2O logs accesses and Netdata logs them too. You can prevent Netdata from generating its access log, by setting
this in `/etc/netdata/netdata.conf`:
```
```txt
[logs]
access = off
```

View file

@ -1,16 +1,6 @@
<!--
title: "Netdata via HAProxy"
custom_edit_url: "https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/running-the-netdata-agent-behind-a-reverse-proxy/Running-behind-haproxy.md"
sidebar_label: "Netdata via HAProxy"
learn_status: "Published"
learn_topic_type: "Tasks"
learn_rel_path: "Configuration/Secure your nodes"
-->
# Running Netdata behind HAProxy
# Netdata via HAProxy
> HAProxy is a free, very fast and reliable solution offering high availability, load balancing,
> and proxying for TCP and HTTP-based applications. It is particularly suited for very high traffic websites
> HAProxy is a free, very fast and reliable solution offering high availability, load balancing, and proxying for TCP and HTTP-based applications. It is particularly suited for very high traffic websites
> and powers quite a number of the world's most visited ones.
If Netdata is running on a host running HAProxy, rather than connecting to Netdata from a port number, a domain name can
@ -177,17 +167,17 @@ To use basic HTTP Authentication, create an authentication list:
userlist basic-auth-list
group is-admin
# Plaintext password
user admin password passwordhere groups is-admin
user admin password YOUR_PASSWORD groups is-admin
```
You can create a hashed password using the `mkpassword` utility.
```sh
printf "passwordhere" | mkpasswd --stdin --method=sha-256
printf "YOUR_PASSWORD" | mkpasswd --stdin --method=sha-256
$5$l7Gk0VPIpKO$f5iEcxvjfdF11khw.utzSKqP7W.0oq8wX9nJwPLwzy1
```
Replace `passwordhere` with hash:
Replace `YOUR_PASSWORD` with hash:
```conf
user admin password $5$l7Gk0VPIpKO$f5iEcxvjfdF11khw.utzSKqP7W.0oq8wX9nJwPLwzy1 groups is-admin
@ -293,5 +283,3 @@ backend netdata_backend
http-request set-header X-Forwarded-Port %[dst_port]
http-request set-header Connection "keep-alive"
```

View file

@ -1,13 +1,4 @@
<!--
title: "Netdata via lighttpd v1.4.x"
custom_edit_url: "https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/running-the-netdata-agent-behind-a-reverse-proxy/Running-behind-lighttpd.md"
sidebar_label: "Netdata via lighttpd v1.4.x"
learn_status: "Published"
learn_topic_type: "Tasks"
learn_rel_path: "Configuration/Secure your nodes"
-->
# Netdata via lighttpd v1.4.x
# Running Netdata behind lighttpd v1.4.x
Here is a config for accessing Netdata in a suburl via lighttpd 1.4.46 and newer:
@ -18,7 +9,7 @@ $HTTP["url"] =~ "^/netdata/" {
}
```
If you have older lighttpd you have to use a chain (such as below), as explained [at this stackoverflow answer](http://stackoverflow.com/questions/14536554/lighttpd-configuration-to-proxy-rewrite-from-one-domain-to-another).
If you have older lighttpd you have to use a chain (such as below), as explained [at this Stack Overflow answer](http://stackoverflow.com/questions/14536554/lighttpd-configuration-to-proxy-rewrite-from-one-domain-to-another).
```txt
$HTTP["url"] =~ "^/netdata/" {
@ -31,19 +22,16 @@ $SERVER["socket"] == ":19998" {
}
```
If the only thing the server is exposing via the web is Netdata (and thus no suburl rewriting required),
then you can get away with just
```
```txt
proxy.server = ( "" => ( ( "host" => "127.0.0.1", "port" => 19999 )))
```
Though if it's public facing you might then want to put some authentication on it. htdigest support
looks like:
Though if it's public facing you might then want to put some authentication on it. `htdigest` support looks like:
```
```txt
auth.backend = "htdigest"
auth.backend.htdigest.userfile = "/etc/lighttpd/lighttpd.htdigest"
auth.require = ( "" => ( "method" => "digest",
@ -55,14 +43,12 @@ auth.require = ( "" => ( "method" => "digest",
other auth methods, and more info on htdigest, can be found in lighttpd's [mod_auth docs](http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs_ModAuth).
It seems that lighttpd (or some versions of it), fail to proxy compressed web responses.
To solve this issue, disable web response compression in Netdata.
Open `/etc/netdata/netdata.conf` and set in [global]\:
Open `/etc/netdata/netdata.conf` and set in `[global]`:
```
```txt
enable web responses gzip compression = no
```
@ -71,5 +57,3 @@ enable web responses gzip compression = no
You would also need to instruct Netdata to listen only to `127.0.0.1` or `::1`.
To limit access to Netdata only from localhost, set `bind socket to IP = 127.0.0.1` or `bind socket to IP = ::1` in `/etc/netdata/netdata.conf`.

View file

@ -112,7 +112,7 @@ server {
### As a subfolder for multiple Netdata servers, via one Nginx
This is the recommended configuration when one Nginx will be used to manage multiple Netdata servers via subfolders.
This is the recommended configuration when one Nginx will be used to manage multiple Netdata servers via sub-folders.
```conf
upstream backend-server1 {
@ -164,7 +164,7 @@ Using the above, you access Netdata on the backend servers, like this:
### Encrypt the communication between Nginx and Netdata
In case Netdata's web server has been [configured to use TLS](/src/web/server/README.md#enabling-tls-support), it is
In case Netdata's web server has been [configured to use TLS](/src/web/server/README.md#enable-httpstls-support), it is
necessary to specify inside the Nginx configuration that the final destination is using TLS. To do this, please, append
the following parameters in your `nginx.conf`
@ -202,20 +202,18 @@ server {
If your Nginx is on `localhost`, you can use this to protect your Netdata:
```
```txt
[web]
bind to = 127.0.0.1 ::1
```
You can also use a unix domain socket. This will also provide a faster route between Nginx and Netdata:
```
```txt
[web]
bind to = unix:/var/run/netdata/netdata.sock
```
*note: Netdata v1.8+ support unix domain sockets*
At the Nginx side, use something like this to use the same unix domain socket:
```conf
@ -225,17 +223,14 @@ upstream backend {
}
```
If your Nginx server is not on localhost, you can set:
```
```txt
[web]
bind to = *
allow connections from = IP_OF_NGINX_SERVER
```
*note: Netdata v1.9+ support `allow connections from`*
`allow connections from` accepts [Netdata simple patterns](/src/libnetdata/simple_pattern/README.md) to match against the
connection IP address.
@ -243,7 +238,7 @@ connection IP address.
Nginx logs accesses and Netdata logs them too. You can prevent Netdata from generating its access log, by setting this in `/etc/netdata/netdata.conf`:
```
```txt
[logs]
access = off
```
@ -278,5 +273,3 @@ If you get an 502 Bad Gateway error you might check your Nginx error log:
```
If you see something like the above, chances are high that SELinux prevents nginx from connecting to the backend server. To fix that, just use this policy: `setsebool -P httpd_can_network_connect true`.

View file

@ -60,9 +60,7 @@ static-threaded` setting, and change it to `none`.
mode = none
```
Save and close the editor, then [restart your Agent](/packaging/installer/README.md#maintaining-a-netdata-agent-installation)
using `sudo systemctl
restart netdata`. If you try to visit the local dashboard to `http://NODE:19999` again, the connection will fail because
Save and close the editor, then [restart your Agent](/docs/netdata-agent/start-stop-restart.md). If you try to visit the local dashboard to `http://NODE:19999` again, the connection will fail because
that node no longer serves its local dashboard.
> See the [configuration basics doc](/docs/netdata-agent/configuration/README.md) for details on how to find
@ -71,13 +69,12 @@ that node no longer serves its local dashboard.
If you are using Netdata with Docker, make sure to set the `NETDATA_HEALTHCHECK_TARGET` environment variable to `cli`.
## Expose Netdata only in a private LAN
If your organisation has a private administration and management LAN, you can bind Netdata on this network interface on all your servers.
If your organization has a private administration and management LAN, you can bind Netdata on this network interface on all your servers.
This is done in `Netdata.conf` with these settings:
```
```txt
[web]
bind to = 10.1.1.1:19999 localhost:19999
```
@ -137,9 +134,7 @@ The `allow connections from` setting is global and restricts access to the dashb
allow management from = localhost
```
See the [web server](/src/web/server/README.md#access-lists) docs for additional details
about access lists. You can take
access lists one step further by [enabling SSL](/src/web/server/README.md#enabling-tls-support) to encrypt data from local
See the [web server](/src/web/server/README.md#access-lists) docs for additional details about access lists. You can take access lists one step further by [enabling SSL](/src/web/server/README.md#enable-httpstls-support) to encrypt data from local
dashboard in transit. The connection to Netdata Cloud is always secured with TLS.
## Use an authenticating web server in proxy mode

View file

@ -23,7 +23,7 @@ The expected bandwidth consumption using `zstd` for 1 million samples per second
The order compression algorithms is selected is configured in `stream.conf`, per `[API KEY]`, like this:
```
```txt
compression algorithms order = zstd lz4 brotli gzip
```

View file

@ -14,7 +14,7 @@ This number can be lowered by limiting the number of database tier or switching
The general formula, with the default configuration of database tiers, is:
```
```txt
memory = UNIQUE_METRICS x 16KiB + CONFIGURED_CACHES
```
@ -22,7 +22,7 @@ The default `CONFIGURED_CACHES` is 32MiB.
For 1 million concurrently collected time-series (independently of their data collection frequency), the memory required is:
```
```txt
UNIQUE_METRICS = 1000000
CONFIGURED_CACHES = 32MiB

View file

@ -41,7 +41,6 @@ The following distributions always provide the latest stable version of Netdata:
| Arch Linux | Latest | All the Arch supported architectures |
| MacOS Brew | Latest | All the Brew supported architectures |
## Builds from Source
We guarantee Netdata builds from source for the platforms we provide automated binary packages. These platforms are automatically checked via our CI, and fixes are always applied to allow merging new code into the nightly versions.

View file

@ -7,14 +7,14 @@ The Netdata Assistant is a feature that uses large language models and the Netda
- Navigate to the alerts tab
- If there are active alerts, the `Actions` column will have an Assistant button
![](https://github-production-user-asset-6210df.s3.amazonaws.com/24860547/253559075-815ca123-e2b6-4d44-a780-eeee64cca420.png)
![actions column](https://github-production-user-asset-6210df.s3.amazonaws.com/24860547/253559075-815ca123-e2b6-4d44-a780-eeee64cca420.png)
- Clicking on the Assistant button opens up as a floating window with customized information and troubleshooting tips for this alert (note that the window can follow you through your troubleshooting journey on Netdata dashboards)
![](https://github-production-user-asset-6210df.s3.amazonaws.com/24860547/253559645-62850c7b-cd1d-45f2-b2dd-474ecbf2b713.png)
![Netdata Assistant popup](https://github-production-user-asset-6210df.s3.amazonaws.com/24860547/253559645-62850c7b-cd1d-45f2-b2dd-474ecbf2b713.png)
- In case you need more information, or want to understand deeper, Netdata Assistant also provides useful web links to resources that can help.
![](https://github-production-user-asset-6210df.s3.amazonaws.com/24860547/253560071-e768fa6d-6c9a-4504-bb1f-17d5f4707627.png)
![useful resources](https://github-production-user-asset-6210df.s3.amazonaws.com/24860547/253560071-e768fa6d-6c9a-4504-bb1f-17d5f4707627.png)
- If there are no active alerts, you can still use Netdata Assistant by clicking the Assistant button on the Alert Configuration view.

View file

@ -30,5 +30,5 @@ Currently, the Netdata Cloud is not exposing stable API.
* get the cloud space list
```console
$ curl -H 'Accept: application/json' -H "Authorization: Bearer <token>" https://app.netdata.cloud/api/v2/spaces
curl -H 'Accept: application/json' -H "Authorization: Bearer <token>" https://app.netdata.cloud/api/v2/spaces
```

View file

@ -1,35 +1,36 @@
# Enterprise SSO Authentication
Netdata provides you with means to streamline and control how your team connects and authenticates to Netdata Cloud. We provide
diferent Single Sign-On (SSO) integrations that allow you to connect with the tool that your organization is using to manage your
different Single Sign-On (SSO) integrations that allow you to connect with the tool that your organization is using to manage your
user accounts.
> ❗ This feature focus is on the Authentication flow, it doesn't support the Authorization with managing Users and Roles.
> **Note** This feature focus is on the Authentication flow, it doesn't support the Authorization with managing Users and Roles.
## How to set it up?
If you want to setup your Netdata Space to allow user Authentication through an Enterprise SSO tool you need to:
* Confirm the integration to the tool you want is available ([Authentication integations](https://learn.netdata.cloud/docs/netdata-cloud/authentication-&-authorization/cloud-authentication-&-authorization-integrations))
* Confirm the integration to the tool you want is available ([Authentication integrations](https://learn.netdata.cloud/docs/netdata-cloud/authentication-&-authorization/cloud-authentication-&-authorization-integrations))
* Have a Netdata Cloud account
* Have Access to the Space as an administrator
* Your Space needs to be on the Business plan or higher
Once you ensure the above prerequisites you need to:
1. Click on the Space settings cog (located above your profile icon)
2. Click on the Authentication tab
3. Select the card for the integration you are looking for, click on Configure
4. Fill the required attributes need to establish the integration with the tool
## How to authenticate to Netdata?
### From Netdata Sign-up page
If you're starting your flow from Netdata sign-in page you need to:
1. Click on the link `Sign-in with an Enterprise Signle Sign-On (SSO)`
1. Click on the link `Sign-in with an Enterprise Single Sign-On (SSO)`
2. Enter your email address
3. Go to your mailbox and check the `Sign In to Nedata` email that you have received
3. Go to your mailbox and check the `Sign In to Netdata` email that you have received
4. Click on the **Sign In** button
Note: If you're not authenticated on the Enterprise SSO tool you'll be prompted to authenticate there

View file

@ -108,9 +108,9 @@ In more detail, you can find on the following tables which functionalities are a
| **Functionality** | **Admin** | **Manager** | **Troubleshooter** | **Observer** | **Billing** | **Member** | Notes |
|:-------------------------------|:------------------:|:------------------:|:------------------:|:------------------:|:-----------:|:------------------:|:---------------------------------------------------------------------|
| See all functions in Room | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | - | :heavy_check_mark: |
| Run any function in Room | :heavy_check_mark: | :heavy_check_mark: | - | - | - | - |
| Run read-only function in Room | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | - | :heavy_check_mark: | |
| See all functions in Room | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | - | :heavy_check_mark: | :: |
| Run any function in Room | :heavy_check_mark: | :heavy_check_mark: | - | - | - | - | :: |
| Run read-only function in Room | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | - | :heavy_check_mark: | :: |
| Run sensitive function in Room | :heavy_check_mark: | :heavy_check_mark: | - | - | - | - | There isn't any function on this category yet, so subject to change. |
### Events feed

View file

@ -11,11 +11,13 @@ The following components are required to install Netdata Cloud On-Prem:
- **Kubectl**
The minimum requirements for Netdata-Cloud are:
- 4 CPU cores
- 15GiB of memory
- Cloud services are ephemeral
The requirements for the non-production Dependencies helm chart:
- 8 CPU cores
- 14GiB of memory
- 160GiB for PVCs (SSD)
@ -115,39 +117,40 @@ helm upgrade --wait --install netdata-cloud-onprem -n netdata-cloud --create-nam
## Short description of Netdata Cloud microservices
#### cloud-accounts-service
### cloud-accounts-service
Responsible for user registration & authentication. Manages user account information.
#### cloud-agent-data-ctrl-service
### cloud-agent-data-ctrl-service
Forwards request from the cloud to the relevant agents.
The requests include:
- Fetching chart metadata from the agent
- Fetching chart data from the agent
- Fetching function data from the agent
#### cloud-agent-mqtt-input-service
### cloud-agent-mqtt-input-service
Forwards MQTT messages emitted by the agent related to the agent entities to the internal Pulsar broker. These include agent connection state updates.
#### cloud-agent-mqtt-output-service
### cloud-agent-mqtt-output-service
Forwards Pulsar messages emitted in the cloud related to the agent entities to the MQTT broker. From there, the messages reach the relevant agent.
#### cloud-alarm-config-mqtt-input-service
### cloud-alarm-config-mqtt-input-service
Forwards MQTT messages emitted by the agent related to the alarm-config entities to the internal Pulsar broker. These include the data for the alarm configuration as seen by the agent.
#### cloud-alarm-log-mqtt-input-service
### cloud-alarm-log-mqtt-input-service
Forwards MQTT messages emitted by the agent related to the alarm-log entities to the internal Pulsar broker. These contain data about the alarm transitions that occurred in an agent.
#### cloud-alarm-mqtt-output-service
### cloud-alarm-mqtt-output-service
Forwards Pulsar messages emitted in the cloud related to the alarm entities to the MQTT broker. From there, the messages reach the relevant agent.
#### cloud-alarm-processor-service
### cloud-alarm-processor-service
Persists latest alert statuses received from the agent in the cloud.
Aggregates alert statuses from relevant node instances.
@ -155,69 +158,69 @@ Exposes API endpoints to fetch alert data for visualization on the cloud.
Determines if notifications need to be sent when alert statuses change and emits relevant messages to Pulsar.
Exposes API endpoints to store and return notification-silencing data.
#### cloud-alarm-streaming-service
### cloud-alarm-streaming-service
Responsible for starting the alert stream between the agent and the cloud.
Ensures that messages are processed in the correct order, and starts a reconciliation process between the cloud and the agent if out-of-order processing occurs.
#### cloud-charts-mqtt-input-service
### cloud-charts-mqtt-input-service
Forwards MQTT messages emitted by the agent related to the chart entities to the internal Pulsar broker. These include the chart metadata that is used to display relevant charts on the cloud.
#### cloud-charts-mqtt-output-service
### cloud-charts-mqtt-output-service
Forwards Pulsar messages emitted in the cloud related to the charts entities to the MQTT broker. From there, the messages reach the relevant agent.
#### cloud-charts-service
### cloud-charts-service
Exposes API endpoints to fetch the chart metadata.
Forwards data requests via the `cloud-agent-data-ctrl-service` to the relevant agents to fetch chart data points.
Exposes API endpoints to call various other endpoints on the agent, for instance, functions.
#### cloud-custom-dashboard-service
### cloud-custom-dashboard-service
Exposes API endpoints to fetch and store custom dashboard data.
#### cloud-environment-service
### cloud-environment-service
Serves as the first contact point between the agent and the cloud.
Returns authentication and MQTT endpoints to connecting agents.
#### cloud-feed-service
### cloud-feed-service
Processes incoming feed events and stores them in Elasticsearch.
Exposes API endpoints to fetch feed events from Elasticsearch.
#### cloud-frontend
### cloud-frontend
Contains the on-prem cloud website. Serves static content.
#### cloud-iam-user-service
### cloud-iam-user-service
Acts as a middleware for authentication on most of the API endpoints. Validates incoming token headers, injects the relevant ones, and forwards the requests.
#### cloud-metrics-exporter
### cloud-metrics-exporter
Exports various metrics from an On-Prem Cloud installation. Uses the Prometheus metric exposition format.
#### cloud-netdata-assistant
### cloud-netdata-assistant
Exposes API endpoints to fetch a human-friendly explanation of various netdata configuration options, namely the alerts.
#### cloud-node-mqtt-input-service
### cloud-node-mqtt-input-service
Forwards MQTT messages emitted by the agent related to the node entities to the internal Pulsar broker. These include the node metadata as well as their connectivity state, either direct or via parents.
#### cloud-node-mqtt-output-service
### cloud-node-mqtt-output-service
Forwards Pulsar messages emitted in the cloud related to the charts entities to the MQTT broker. From there, the messages reach the relevant agent.
#### cloud-notifications-dispatcher-service
### cloud-notifications-dispatcher-service
Exposes API endpoints to handle integrations.
Handles incoming notification messages and uses the relevant channels(email, slack...) to notify relevant users.
#### cloud-spaceroom-service
### cloud-spaceroom-service
Exposes API endpoints to fetch and store relations between agents, nodes, spaces, users, and rooms.
Acts as a provider of authorization for other cloud endpoints.

View file

@ -47,7 +47,7 @@ sudo systemctl enable --now systemd-journal-gatewayd.socket
To use it, open your web browser and navigate to:
```
```txt
http://server.ip:19531/browse
```

View file

@ -26,7 +26,7 @@ This helps to also automate the distribution of the certificates to your servers
We suggest to keep this script and all the involved certificates at the journals centralization server, in the directory `/etc/ssl/systemd-journal`, so that you can make future changes as required. If you prefer to keep the certificate authority and all the certificates at a more secure location, just use the script on that location.
On the server that will issue the certificates (usually the centralizaton server), do the following:
On the server that will issue the certificates (usually the centralization server), do the following:
```bash
# install systemd-journal-remote to add the users and groups required and openssl for the certs

View file

@ -80,8 +80,6 @@ This example uses self-signed certificates.
3. Restart the Netdata Agent on both the parent and child nodes, to stream encrypted metrics using TLS/SSL.
## Troubleshooting Streaming Connections
You can find any issues related to streaming at Netdata logs.

View file

@ -152,7 +152,7 @@ include:
rate-limiting and automated blacklisting.
7. **Security-Focused Development Process** :
To ensure a secure environment, Netdata employs a security-focused development process. This includes the use of
static code analysers to identify potential security vulnerabilities in the codebase.
static code analyzers to identify potential security vulnerabilities in the codebase.
8. **High Security Standards** :
Netdata Cloud maintains high security standards and can provide additional customization on a per contract basis.
9. **Employee Security Practices** :

View file

@ -14,7 +14,6 @@ databases, sent to upstream Netdata servers, or archived to external time-series
>
> Users are responsible for backing up, recovering, and ensuring their data's availability because Netdata stores data locally on each system due to its decentralized architecture.
The Netdata Agent is programmed to safeguard user data. When collecting data, the raw data does not leave the host. All
plugins, even those running with escalated capabilities or privileges, perform a hard-coded data collection job. They do
not accept commands from Netdata, and the original application data collected do not leave the process they are
@ -60,7 +59,7 @@ information can be found [here](https://github.com/netdata/netdata/security/poli
The Netdata agent is resilient against common security threats such as DDoS attacks and SQL injections. For DDoS,
Netdata agent uses a fixed number of threads for processing requests, providing a cap on the resources that can be
consumed. It also automatically manages its memory to prevent overutilization. SQL injections are prevented as nothing
consumed. It also automatically manages its memory to prevent over-utilization. SQL injections are prevented as nothing
from the UI is passed back to the data collection plugins accessing databases.
Additionally, the Netdata agent is running as a normal, unprivileged, operating system user (a few data collections

View file

@ -44,7 +44,7 @@ Netdata Cloud does not store user credentials.
Netdata Cloud offers a variety of security features, including infrastructure-level dashboards, centralized alerts
notifications, auditing logs, and role-based access to different segments of the infrastructure. The cloud service
employs several protection mechanisms against DDoS attacks, such as rate-limiting and automated blacklisting. It also
uses static code analysers to prevent other types of attacks.
uses static code analyzers to prevent other types of attacks.
In the event of potential security vulnerabilities or incidents, Netdata Cloud follows the same process as the Netdata
agent. Every report is acknowledged and analyzed by the Netdata team within three working days, and the team keeps the

View file

@ -23,8 +23,6 @@ If you don't see the app/service you'd like to monitor in this list:
- If you don't see the collector there, you can make a [feature request](https://github.com/netdata/netdata/issues/new/choose) on GitHub.
- If you have basic software development skills, you can add your own plugin in [Go](/src/go/plugin/go.d/README.md#how-to-develop-a-collector) or [Python](/docs/developer-and-contributor-corner/python-collector.md)
## Available Data Collection Integrations
<!-- AUTOGENERATED PART BY integrations/gen_doc_collector_page.py SCRIPT, DO NOT EDIT MANUALLY -->
### APM

View file

@ -9,19 +9,14 @@ This web server respects the `keep-alive` HTTP header to serve multiple HTTP req
## Configuration
From within your Netdata config directory (typically `/etc/netdata`), [use `edit-config`](/docs/netdata-agent/configuration/README.md) to
open `netdata.conf`.
```
sudo ./edit-config netdata.conf
```
Edit `netdata.conf` using the [`edit-config` script](/docs/netdata-agent/configuration/README.md)
Scroll down to the `[web]` section to find the following settings.
## Settings
| Setting | Default | Description |
|:-----------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|:-----------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `ssl key` | `/etc/netdata/ssl/key.pem` | Declare the location of an SSL key to [enable HTTPS](#enable-httpstls-support). |
| `ssl certificate` | `/etc/netdata/ssl/cert.pem` | Declare the location of an SSL certificate to [enable HTTPS](#enable-httpstls-support). |
| `tls version` | `1.3` | Choose which TLS version to use. While all versions are allowed (`1` or `1.0`, `1.1`, `1.2` and `1.3`), we recommend `1.3` for the most secure encryption. If left blank, Netdata uses the highest available protocol version on your system. |
@ -37,7 +32,7 @@ Scroll down to the `[web]` section to find the following settings.
| `timeout for first request` | `1m` | How long to wait for a client to send a request before closing the socket. Prevents slow request attacks. |
| `accept a streaming request every` | `off` | Can be used to set a limit on how often a parent node will accept streaming requests from child nodes in a [streaming and replication setup](/src/streaming/README.md). |
| `respect do not track policy` | `no` | If set to `yes`, Netdata will respect the user's browser preferences for [Do Not Track](https://www.eff.org/issues/do-not-track) (DNT) and storing cookies. If DNT is _enabled_ in the browser, and this option is set to `yes`, nodes will not connect to any [registry](/src/registry/README.md). For certain browsers, users must disable DNT and change this option to `yes` for full functionality. |
| `x-frame-options response header` | ` ` | Avoid [clickjacking attacks](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options), by ensuring that the content is not embedded into other sites. |
| `x-frame-options response header` | `` | Avoid [clickjacking attacks](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options), by ensuring that the content is not embedded into other sites. |
| `allow connections from` | `localhost *` | Declare which IP addresses or full-qualified domain names (FQDNs) are allowed to connect to the web server, including the [dashboard](/docs/dashboards-and-charts/README.md) or [HTTP API](/src/web/api/README.md). This is a global setting with higher priority to any of the ones below. |
| `allow connections by dns` | `heuristic` | See the [access list examples](#access-lists) for details on using `allow` settings. |
| `allow dashboard from` | `localhost *` | |
@ -53,9 +48,9 @@ Scroll down to the `[web]` section to find the following settings.
| `enable gzip compression` | `yes` | When set to `yes`, Netdata web responses will be GZIP compressed, if the web client accepts such responses. |
| `gzip compression strategy` | `default` | Valid settings are `default`, `filtered`, `huffman only`, `rle` and `fixed`. |
| `gzip compression level` | `3` | Valid settings are 1 (fastest) to 9 (best ratio). |
| `web server threads` | ` ` | How many processor threads the web server is allowed. The default is system-specific, the minimum of `6` or the number of CPU cores. |
| `web server max sockets` | ` ` | Available sockets. The default is system-specific, automatically adjusted to 50% of the max number of open files Netdata is allowed to use (via `/etc/security/limits.conf` or systemd), to allow enough file descriptors to be available for data collection. |
| `custom dashboard_info.js` | ` ` | Specifies the location of a custom `dashboard.js` file. See [customizing the standard dashboard](/docs/developer-and-contributor-corner/customize.md#customize-the-standard-dashboard) for details. |
| `web server threads` | `` | How many processor threads the web server is allowed. The default is system-specific, the minimum of `6` or the number of CPU cores. |
| `web server max sockets` | `` | Available sockets. The default is system-specific, automatically adjusted to 50% of the max number of open files Netdata is allowed to use (via `/etc/security/limits.conf` or systemd), to allow enough file descriptors to be available for data collection. |
| `custom dashboard_info.js` | `` | Specifies the location of a custom `dashboard.js` file. See [customizing the standard dashboard](/docs/developer-and-contributor-corner/customize.md#customize-the-standard-dashboard) for details. |
## Examples
@ -63,7 +58,7 @@ Scroll down to the `[web]` section to find the following settings.
Disable the web server by editing `netdata.conf` and setting:
```
```txt
[web]
mode = none
```
@ -72,7 +67,7 @@ Disable the web server by editing `netdata.conf` and setting:
Control the number of threads and sockets with the following settings:
```
```txt
[web]
web server threads = 4
web server max sockets = 512
@ -84,7 +79,7 @@ Netdata can bind to multiple IPs and ports, offering access to different service
The ports to bind are controlled via `[web].bind to`, like this:
```
```txt
[web]
default port = 19999
bind to = 127.0.0.1=dashboard^SSL=optional 10.1.1.1:19998=management|netdata.conf hostname:19997=badges [::]:19996=streaming^SSL=force localhost:19995=registry *:http=dashboard unix:/run/netdata/netdata.sock
@ -169,24 +164,24 @@ When the certificates are defined and unless any other options are provided, a N
To change this behavior, you need to modify the `bind to` setting in the `[web]` section of `netdata.conf`. At the end of each port definition, append `^SSL=force` or `^SSL=optional`. What happens with these settings differs, depending on whether the port is used for HTTP/S requests, or for streaming.
| SSL setting | HTTP requests|HTTPS requests|Unencrypted Streams|Encrypted Streams|
|:---------:|:-----------:|:------------:|:-----------------:|:----------------|
| none | Redirected to HTTPS|Accepted|Accepted|Accepted|
| `force`| Redirected to HTTPS|Accepted|Denied|Accepted|
| `optional`| Accepted|Accepted|Accepted|Accepted|
| SSL setting | HTTP requests | HTTPS requests | Unencrypted Streams | Encrypted Streams |
|:-----------:|:-------------------:|:--------------:|:-------------------:|:------------------|
| none | Redirected to HTTPS | Accepted | Accepted | Accepted |
| `force` | Redirected to HTTPS | Accepted | Denied | Accepted |
| `optional` | Accepted | Accepted | Accepted | Accepted |
Example:
```
```txt
[web]
bind to = *=dashboard|registry|badges|management|streaming|netdata.conf^SSL=force
```
For information how to configure the child to use TLS, check [securing the communication](/src/streaming/README.md#securing-streaming-communications) in the streaming documentation. There you will find additional details on the expected behavior for client and server nodes, when their respective TLS options are enabled.
For information how to configure the child to use TLS, check [securing the communication](/src/streaming/README.md#securing-streaming-with-tlsssl) in the streaming documentation. There you will find additional details on the expected behavior for client and server nodes, when their respective TLS options are enabled.
When we define the use of SSL in a Netdata agent for different ports, Netdata will apply the behavior specified on each port. For example, using the configuration line below:
```
```txt
[web]
bind to = *=dashboard|registry|badges|management|streaming|netdata.conf^SSL=force *:20000=netdata.conf^SSL=optional *:20001=dashboard|registry
```
@ -210,7 +205,7 @@ In the near future, Netdata will allow our users to change the internal configur
Netdata supports access lists in `netdata.conf`:
```
```txt
[web]
allow connections from = localhost *
allow dashboard from = localhost *
@ -247,7 +242,7 @@ a forward DNS resolution is made to validate the IP address against the name-pat
Please note that this process can be expensive on a machine that is serving many connections. Each access list has an
associated configuration option to turn off DNS-based patterns completely to avoid incurring this cost at run-time:
```
```conf
allow connections by dns = heuristic
allow dashboard by dns = heuristic
allow badges by dns = heuristic