From 1fc9102e64dbf6c353f6f6fa8c2682e4e2c1849d Mon Sep 17 00:00:00 2001 From: netdatabot <43409846+netdatabot@users.noreply.github.com> Date: Thu, 11 Jun 2026 22:54:51 +0000 Subject: [PATCH] Ingest new documentation --- .../Alert Configuration Reference.mdx | 2 +- .../Agent Notifications Reference.mdx | 50 +- .../Applications/Alamos FE2 server.mdx | 81 +- .../Collectors/Applications/AuthLog.mdx | 81 +- .../Collectors/Applications/BungeeCord.mdx | 81 +- .../Collectors/Applications/Celery.mdx | 81 +- .../Collectors/Applications/Chia.mdx | 81 +- .../Collectors/Applications/ClamAV daemon.mdx | 81 +- .../Applications/Clamscan results.mdx | 81 +- .../Collectors/Applications/Collectd.mdx | 81 +- .../Collectors/Applications/Crowdsec.mdx | 81 +- .../Collectors/Applications/Cryptowatch.mdx | 81 +- .../Collectors/Applications/DMARC.mdx | 81 +- .../Collectors/Applications/Discourse.mdx | 81 +- .../Applications/GitHub API rate limit.mdx | 81 +- .../Applications/GitHub repository.mdx | 81 +- .../Applications/Google Pagespeed.mdx | 81 +- .../Collectors/Applications/Grafana.mdx | 81 +- .../Applications/Graylog Server.mdx | 81 +- .../Collectors/Applications/Halon.mdx | 81 +- .../Collectors/Applications/Homebridge.mdx | 81 +- .../Collectors/Applications/Homey.mdx | 81 +- .../Collectors/Applications/Honeypot.mdx | 81 +- .../Applications/IBM AIX systems Njmon.mdx | 81 +- .../Collectors/Applications/JMX.mdx | 81 +- .../Collectors/Applications/Kannel.mdx | 81 +- .../Applications/Lynis audit reports.mdx | 81 +- .../Collectors/Applications/Minecraft.mdx | 81 +- .../Collectors/Applications/NRPE daemon.mdx | 81 +- .../Applications/Nextcloud servers.mdx | 81 +- .../Collectors/Applications/OBS Studio.mdx | 81 +- .../Applications/OpenWeatherMap.mdx | 81 +- .../Collectors/Applications/ProFTPD.mdx | 81 +- .../Applications/Prometheus endpoint.mdx | 81 +- .../Collectors/Applications/RADIUS.mdx | 81 +- .../Collectors/Applications/SABnzbd.mdx | 81 +- .../Collectors/Applications/Slurm.mdx | 81 +- .../Collectors/Applications/StatusPage.mdx | 81 +- .../Collectors/Applications/Steam.mdx | 81 +- .../Collectors/Applications/Suricata.mdx | 81 +- .../Collectors/Applications/Sysload.mdx | 81 +- .../Collectors/Applications/TACACS.mdx | 81 +- .../Applications/Tankerkoenig API.mdx | 81 +- .../Collectors/Applications/Twitch.mdx | 81 +- .../Collectors/Applications/VSCode.mdx | 81 +- .../Collectors/Applications/Vault PKI.mdx | 81 +- .../Applications/YOURLS URL Shortener.mdx | 81 +- .../Collectors/Applications/etcd.mdx | 81 +- .../Collectors/Applications/gpsd.mdx | 81 +- .../Collectors/Applications/journald.mdx | 81 +- .../Collectors/Applications/loki.mdx | 81 +- .../Collectors/Applications/mtail.mdx | 81 +- .../AWS EC2 Compute instances.mdx | 81 +- .../Collectors/Cloud and DevOps/AWS Quota.mdx | 81 +- .../Collectors/Cloud and DevOps/BOSH.mdx | 81 +- .../Cloud Foundry Firehose.mdx | 81 +- .../Cloud and DevOps/Cloud Foundry.mdx | 81 +- .../Cloud and DevOps/CloudWatch.mdx | 81 +- .../Collectors/Cloud and DevOps/Concourse.mdx | 81 +- .../Collectors/Cloud and DevOps/Dynatrace.mdx | 81 +- .../Collectors/Cloud and DevOps/GCP GCE.mdx | 81 +- .../Cloud and DevOps/GitLab Runner.mdx | 81 +- .../Google Cloud Platform.mdx | 81 +- .../Cloud and DevOps/Google Stackdriver.mdx | 81 +- .../Collectors/Cloud and DevOps/Hubble.mdx | 81 +- .../Collectors/Cloud and DevOps/Jenkins.mdx | 81 +- .../Collectors/Cloud and DevOps/Linode.mdx | 81 +- .../Collectors/Cloud and DevOps/Spacelift.mdx | 81 +- .../Collectors/Cloud and DevOps/Zerto.mdx | 81 +- .../Collectors/Collectors.mdx | 4 + .../Containers and VMs/AWS ECS Containers.mdx | 4 + .../Containers and VMs/Cilium Agent.mdx | 81 +- .../Containers and VMs/Cilium Operator.mdx | 81 +- .../Containers and VMs/Cilium Proxy.mdx | 81 +- .../Containers and VMs/Containers.mdx | 6 +- .../Containers and VMs/Docker Containers.mdx | 4 + .../Collectors/Containers and VMs/Hyper-V.mdx | 4 +- .../Kubernetes Containers.mdx | 2 +- .../Containers and VMs/LXC Containers.mdx | 4 + .../Libvirt VMs and Containers.mdx | 4 + .../Collectors/Containers and VMs/Mesos.mdx | 81 +- .../Containers and VMs/Nomad Containers.mdx | 4 + .../Containers and VMs/OpenStack VMs.mdx | 4 + .../Containers and VMs/Podman Containers.mdx | 4 + .../Collectors/Containers and VMs/Podman.mdx | 81 +- .../Containers and VMs/Proxmox VE.mdx | 81 +- .../Proxmox VMs and Containers.mdx | 4 + .../Containers and VMs/Virtual Machines.mdx | 4 + .../containerd Containers.mdx | 4 + .../Containers and VMs/oVirt VMs.mdx | 4 + .../systemd-nspawn Containers.mdx | 4 + .../Collectors/Databases/4D Server.mdx | 81 +- .../Collectors/Databases/AWS RDS.mdx | 81 +- .../Databases/ClusterControl CMON.mdx | 81 +- .../Collectors/Databases/HANA.mdx | 81 +- .../Collectors/Databases/IBM MQ.mdx | 81 +- .../Collectors/Databases/InfluxDB.mdx | 81 +- .../Databases/Kafka Consumer Lag.mdx | 81 +- .../Collectors/Databases/Kafka ZooKeeper.mdx | 81 +- .../Collectors/Databases/Kafka.mdx | 81 +- .../Collectors/Databases/Meilisearch.mdx | 81 +- .../Collectors/Databases/Patroni.mdx | 81 +- .../Collectors/Databases/Pgpool-II.mdx | 81 +- .../Collectors/Databases/Redis Queue.mdx | 81 +- .../Collectors/Databases/ScyllaDB.mdx | 81 +- .../Collectors/Databases/Sphinx.mdx | 81 +- .../Collectors/Databases/Vertica.mdx | 81 +- .../Collectors/Databases/Warp10.mdx | 81 +- .../Collectors/Databases/mosquitto.mdx | 81 +- .../Collectors/Databases/pgBackRest.mdx | 81 +- .../Hardware and Sensors/AMD CPU & GPU.mdx | 81 +- .../Christ Elektronik CLM5IP power panel.mdx | 81 +- .../Hardware and Sensors/CraftBeerPi.mdx | 81 +- .../Dutch Electricity Smart Meter.mdx | 81 +- .../Elgato Key Light devices..mdx | 81 +- .../Energomera smart power meters.mdx | 81 +- .../IBM CryptoExpress CEX cards.mdx | 81 +- .../IBM Z Hardware Management Console.mdx | 81 +- .../Jarvis Standing Desk.mdx | 81 +- .../Hardware and Sensors/Modbus protocol.mdx | 81 +- .../Nature Remo E lite devices.mdx | 81 +- .../Hardware and Sensors/Netatmo sensors.mdx | 81 +- .../Personal Weather Station.mdx | 81 +- .../Hardware and Sensors/Philips Hue.mdx | 81 +- .../Hardware and Sensors/Pimoroni Enviro+.mdx | 81 +- .../Hardware and Sensors/Powerpal devices.mdx | 81 +- .../Hardware and Sensors/Radio Thermostat.mdx | 81 +- .../Hardware and Sensors/Raritan PDU.mdx | 81 +- .../Hardware and Sensors/SMA Inverters.mdx | 81 +- .../Salicru EQX inverter.mdx | 81 +- .../Hardware and Sensors/Sense Energy.mdx | 81 +- .../Shelly humidity sensor.mdx | 81 +- .../Hardware and Sensors/Siemens S7 PLC.mdx | 81 +- .../Hardware and Sensors/Smart meters SML.mdx | 81 +- .../Solar logging stick.mdx | 81 +- .../Solis Ginlong 5G inverters.mdx | 81 +- .../Sunspec Solar Energy.mdx | 81 +- .../Tado smart heating solution.mdx | 81 +- .../Tesla Wall Connector.mdx | 81 +- .../Hardware and Sensors/Tesla vehicle.mdx | 81 +- .../Hardware and Sensors/Xiaomi Mi Flora.mdx | 81 +- .../Collectors/Networking/8430FT modem.mdx | 81 +- .../Networking/Bird Routing Daemon.mdx | 81 +- .../Collectors/Networking/Clash.mdx | 81 +- .../Collectors/Networking/DNSBL.mdx | 81 +- .../Collectors/Networking/FRRouting.mdx | 81 +- .../Collectors/Networking/Fastd.mdx | 81 +- .../Networking/Freifunk network.mdx | 81 +- .../Networking/Hitron CODA Cable Modem.mdx | 81 +- .../Collectors/Networking/Keepalived.mdx | 81 +- .../Networking/Network Connections.mdx | 50 +- .../Collectors/Networking/Networking.mdx | 4 + .../Collectors/Networking/NextDNS.mdx | 81 +- .../Collectors/Networking/Open vSwitch.mdx | 81 +- .../Networking/OpenROADM devices.mdx | 81 +- .../Collectors/Networking/RIPE Atlas.mdx | 81 +- .../Networking/SNMP trap listener.mdx | 669 ++++ .../Collectors/Networking/SONiC NOS.mdx | 83 +- .../Networking/Socket statistics.mdx | 2 +- .../Networking/SoftEther VPN Server.mdx | 83 +- .../Networking/Softnet Statistics.mdx | 2 +- .../Collectors/Networking/Starlink SpaceX.mdx | 83 +- .../Collectors/Networking/Synproxy.mdx | 2 +- .../Collectors/Networking/Timex.mdx | 2 +- .../Collectors/Networking/Tor.mdx | 2 +- .../Networking/Ubiquiti UFiber OLT.mdx | 83 +- .../Collectors/Networking/Unbound.mdx | 2 +- .../Networking/Windows Network Protocols.mdx | 2 +- .../Collectors/Networking/WireGuard.mdx | 2 +- .../Wireless network interfaces.mdx | 2 +- .../Collectors/Networking/strongSwan.mdx | 83 +- .../Collectors/Networking/tc QoS classes.mdx | 2 +- .../Operating Systems/Applications.mdx | 4 + .../Operating Systems/FreeBSD RCTL-RACCT.mdx | 81 +- .../Collectors/Operating Systems/OpenRC.mdx | 81 +- .../Operating Systems/Systemd Services.mdx | 6 +- .../Operating Systems/eBPF Cachestat.mdx | 34 - .../Dell PowerStore.mdx | 40 + .../Storage and Filesystems/EOS.mdx | 81 +- .../Storage and Filesystems/FreeBSD NFS.mdx | 81 +- .../Generic storage enclosure tool.mdx | 81 +- .../IBM Spectrum Virtualize.mdx | 81 +- .../Storage and Filesystems/IBM Spectrum.mdx | 81 +- .../Lustre metadata.mdx | 81 +- .../Storage and Filesystems/MogileFS.mdx | 81 +- .../NetApp Solidfire.mdx | 81 +- .../Netapp ONTAP API.mdx | 81 +- .../Storage and Filesystems/Storidge.mdx | 81 +- .../Synology ActiveBackup.mdx | 81 +- .../Collectors/Synthetic Testing/Blackbox.mdx | 81 +- .../Synthetic Testing/MQTT Blackbox.mdx | 81 +- .../Synthetic Testing/Site 24x7.mdx | 81 +- .../Synthetic Testing/Uptimerobot.mdx | 81 +- .../Web Servers and Proxies/APIcast.mdx | 81 +- .../Web Servers and Proxies/Gobetween.mdx | 81 +- .../Service Discovery/SNMP.mdx | 2 +- docs/Netdata Agent/Configuration/Daemon.mdx | 1 + ...re Netdata for cybersecurity platforms.mdx | 36 + .../Node States and Transitions.mdx | 11 + .../Node Types and Lifecycle Reference.mdx | 66 + docs/Welcome to Netdata/Monitor Anything.mdx | 8 +- ingest/generated_map.yaml | 29 +- ingest/one_commit_back_file-dict.yaml | 2918 +++++++++-------- 203 files changed, 15293 insertions(+), 1691 deletions(-) create mode 100644 docs/Collecting Metrics/Collectors/Networking/SNMP trap listener.mdx diff --git a/docs/Alerts & Notifications/Alert Configuration Reference.mdx b/docs/Alerts & Notifications/Alert Configuration Reference.mdx index 445c40ac2d..405f1f83a8 100644 --- a/docs/Alerts & Notifications/Alert Configuration Reference.mdx +++ b/docs/Alerts & Notifications/Alert Configuration Reference.mdx @@ -1038,7 +1038,7 @@ Several stock health configurations use host variables to reference dimensions f ##### Prometheus Collector Variables -For metrics collected by the go.d `prometheus` collector, each unique Prometheus label set usually produces a separate chart. The chart ID is built from the metric name followed by `-label=value` pairs for every label (e.g. `kubelet_volume_stats_used_bytes-persistentvolumeclaim=my-pvc`). In the Netdata chart registry, the prefix comes from the go.d job `FullName`: it is `prometheus.-` only when the job name is literally `prometheus`; otherwise it is `prometheus_.-` (for example, `prometheus_local.-` or `prometheus_kubelet.-`). For summary and histogram metric families, the collector may also emit related chart IDs such as ``, `_sum`, and `_count`, so verify the exact chart ID you want to reference. +For metrics collected by the go.d `prometheus` collector, each unique Prometheus label set usually produces a separate chart. The chart ID is built from the metric name followed by `-label=value` pairs for every label (e.g. `kubelet_volume_stats_used_bytes-persistentvolumeclaim=my-pvc`); characters in a label value that are not chart-ID-safe, such as `.`, are replaced with `_` in the chart ID, while the chart's label keeps the original value (so `addr="10.0.0.1"` yields `…-addr=10_0_0_1`). In the Netdata chart registry, the prefix comes from the go.d job `FullName`: it is `prometheus.-` only when the job name is literally `prometheus`; otherwise it is `prometheus_.-` (for example, `prometheus_local.-` or `prometheus_kubelet.-`). Summary and histogram families also emit separate `_sum` and `_count` charts; the suffix is part of the metric name, so the IDs are `_sum-` and `_count-` (just `_sum` / `_count` when the series has no labels), while histogram buckets are dimensions of the base `` chart. Verify the exact chart ID you want to reference. Because Prometheus chart IDs typically contain hyphens and `=` characters, use the `${...}` brace form to reference them in `calc`/`warn`/`crit` expressions — the unbraced `$var` form stops parsing at `-`. Apply the same rule for both the common `prometheus_` prefix and the special-case plain `prometheus` prefix, including any `_sum` or `_count` chart variants. diff --git a/docs/Alerts & Notifications/Notifications/Agent Dispatched Notifications/Agent Notifications Reference.mdx b/docs/Alerts & Notifications/Notifications/Agent Dispatched Notifications/Agent Notifications Reference.mdx index 7a66ad8cd5..06f7681bef 100644 --- a/docs/Alerts & Notifications/Notifications/Agent Dispatched Notifications/Agent Notifications Reference.mdx +++ b/docs/Alerts & Notifications/Notifications/Agent Dispatched Notifications/Agent Notifications Reference.mdx @@ -100,6 +100,7 @@ Use the `edit-config` script to safely edit configuration files. It automaticall ::: 1. Open the Agent's health notification config: + ```bash sudo ./edit-config health_alarm_notify.conf ``` @@ -109,6 +110,7 @@ Use the `edit-config` script to safely edit configuration files. It automaticall 3. Define recipients per **role** (see below). 4. Restart the Agent for changes to take effect: + ```bash sudo systemctl restart netdata ``` @@ -286,7 +288,7 @@ role_recipients_email[sysadmin]="disabled" If left empty, the default recipient for that method is used. -
+
Alert Severity Filtering
You can limit certain recipients to only receive **critical** alerts: @@ -298,11 +300,47 @@ role_recipients_email[sysadmin]="user1@example.com user2@example.com|critical" This setup: - Sends all alerts to `user1@example.com` -- Sends only critical-related alerts to `user2@example.com` +- Sends notifications to `user2@example.com` only once the alarm reaches CRITICAL, then continues sending status changes (including WARNING and CLEAR) until the alarm is cleared. Works for all supported methods: email, Slack, Telegram, Twilio, Discord, etc.
+
+Controlling Recovered (CLEAR) Notifications
+ +When an alert returns to normal, Netdata sends a **CLEAR** (recovered) notification. You can control when and whether these are sent. + +**Default behavior:** Netdata suppresses CLEAR notifications when the alert was never in a WARNING or CRITICAL state. If `old_status` was not WARNING or CRITICAL and the alert transitions to CLEAR, no notification is sent. This prevents noise from alerts that flap without ever reaching a problem state. + +**Enable CLEAR for all transitions:** If your downstream system handles deduplication, set `clear_alarm_always` in `health_alarm_notify.conf` to override the default suppression and send a CLEAR notification regardless of the previous status: + +```ini +clear_alarm_always='YES' +``` + +**Filter by CRITICAL history with the `|critical` modifier:** As described in [Alert Severity Filtering](#alert-severity-filtering) above, `|critical` forwards notifications only for alerts that have reached CRITICAL status. This affects both WARNING and CLEAR: + +- **WARNING** notifications are suppressed unless the alarm has previously reached CRITICAL. +- **CLEAR** notifications are only sent when the alert previously passed through CRITICAL. If the alert only went through WARNING → CLEAR, the CLEAR is not forwarded. + +```ini +role_recipients_email[sysadmin]="admin@example.com|critical" +``` + +**Suppress all CLEAR notifications:** Use the `|noclear` modifier to completely block CLEAR notifications for a recipient while still receiving WARNING and CRITICAL alerts: + +```ini +role_recipients_email[sysadmin]="admin@example.com|noclear" +``` + +You can combine modifiers. This example notifies only for alarms that have reached CRITICAL (WARNING is suppressed until then), and excludes CLEAR notifications entirely: + +```ini +role_recipients_email[sysadmin]="admin@example.com|critical|noclear" +``` + +
+
Proxy Settings
@@ -411,21 +449,25 @@ Here are solutions for common alert notification issues: ### Email Notifications Not Working 1. Verify your email configuration: + ```bash grep -E "SEND_EMAIL|DEFAULT_RECIPIENT_EMAIL" /etc/netdata/health_alarm_notify.conf ``` 2. Check if the system can send mail: + ```bash echo "Test" | mail -s "Test Email" your@email.com ``` 3. Look for errors in the Netdata log: + ```bash tail -f /var/log/netdata/error.log | grep "alarm notify" ``` 4. Test with debugging enabled: + ```bash sudo su -s /bin/bash netdata export NETDATA_ALARM_NOTIFY_DEBUG=1 @@ -435,11 +477,13 @@ Here are solutions for common alert notification issues: ### Slack Notifications Failing 1. Verify your webhook URL is correct: + ```bash grep -E "SLACK_WEBHOOK_URL" /etc/netdata/health_alarm_notify.conf ``` 2. Check for network connectivity to Slack: + ```bash curl -X POST -H "Content-type: application/json" --data '{"text":"Test"}' YOUR_WEBHOOK_URL ``` @@ -449,11 +493,13 @@ Here are solutions for common alert notification issues: ### PagerDuty Integration Issues 1. Verify your service key: + ```bash grep -E "PAGERDUTY_SERVICE_KEY" /etc/netdata/health_alarm_notify.conf ``` 2. Test the PagerDuty API directly: + ```bash curl -H "Content-Type: application/json" -X POST -d '{"service_key":"YOUR_SERVICE_KEY","event_type":"trigger","description":"Test"}' https://events.pagerduty.com/generic/2010-04-15/create_event.json ``` diff --git a/docs/Collecting Metrics/Collectors/Applications/Alamos FE2 server.mdx b/docs/Collecting Metrics/Collectors/Applications/Alamos FE2 server.mdx index 368a35e631..2162151ca6 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Alamos FE2 server.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Alamos FE2 server.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + +
@@ -286,6 +316,55 @@ jobs: ```
+###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/AuthLog.mdx b/docs/Collecting Metrics/Collectors/Applications/AuthLog.mdx index a5e59bc99c..c7c1e81f46 100644 --- a/docs/Collecting Metrics/Collectors/Applications/AuthLog.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/AuthLog.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/BungeeCord.mdx b/docs/Collecting Metrics/Collectors/Applications/BungeeCord.mdx index 0c27ebb4fd..bede9737be 100644 --- a/docs/Collecting Metrics/Collectors/Applications/BungeeCord.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/BungeeCord.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Celery.mdx b/docs/Collecting Metrics/Collectors/Applications/Celery.mdx index 531a98c032..8f909035f1 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Celery.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Celery.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Chia.mdx b/docs/Collecting Metrics/Collectors/Applications/Chia.mdx index 0f0b5ef669..a2bee458e4 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Chia.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Chia.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/ClamAV daemon.mdx b/docs/Collecting Metrics/Collectors/Applications/ClamAV daemon.mdx index c1ade8e652..9c559e3f0a 100644 --- a/docs/Collecting Metrics/Collectors/Applications/ClamAV daemon.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/ClamAV daemon.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Clamscan results.mdx b/docs/Collecting Metrics/Collectors/Applications/Clamscan results.mdx index d8170679f6..262089a448 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Clamscan results.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Clamscan results.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Collectd.mdx b/docs/Collecting Metrics/Collectors/Applications/Collectd.mdx index 38570e2cd7..b4fa83c0c4 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Collectd.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Collectd.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Crowdsec.mdx b/docs/Collecting Metrics/Collectors/Applications/Crowdsec.mdx index 15a18ec76b..b75f5492a7 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Crowdsec.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Crowdsec.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Cryptowatch.mdx b/docs/Collecting Metrics/Collectors/Applications/Cryptowatch.mdx index 4e41d521a5..f00724283b 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Cryptowatch.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Cryptowatch.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/DMARC.mdx b/docs/Collecting Metrics/Collectors/Applications/DMARC.mdx index cd7302a32f..456229728a 100644 --- a/docs/Collecting Metrics/Collectors/Applications/DMARC.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/DMARC.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Discourse.mdx b/docs/Collecting Metrics/Collectors/Applications/Discourse.mdx index da5efdcd90..fd04455348 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Discourse.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Discourse.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/GitHub API rate limit.mdx b/docs/Collecting Metrics/Collectors/Applications/GitHub API rate limit.mdx index 4cda87ac32..6b21e0d35a 100644 --- a/docs/Collecting Metrics/Collectors/Applications/GitHub API rate limit.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/GitHub API rate limit.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/GitHub repository.mdx b/docs/Collecting Metrics/Collectors/Applications/GitHub repository.mdx index 6589f52a74..7389752e16 100644 --- a/docs/Collecting Metrics/Collectors/Applications/GitHub repository.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/GitHub repository.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Google Pagespeed.mdx b/docs/Collecting Metrics/Collectors/Applications/Google Pagespeed.mdx index d416574c60..3e0f58477f 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Google Pagespeed.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Google Pagespeed.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Grafana.mdx b/docs/Collecting Metrics/Collectors/Applications/Grafana.mdx index 8e3ed62481..b1638913a1 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Grafana.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Grafana.mdx @@ -94,7 +94,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -151,6 +151,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -282,6 +312,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Graylog Server.mdx b/docs/Collecting Metrics/Collectors/Applications/Graylog Server.mdx index 3c259d7f0f..3d82d0aa84 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Graylog Server.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Graylog Server.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Halon.mdx b/docs/Collecting Metrics/Collectors/Applications/Halon.mdx index 929e4cc719..abe6945052 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Halon.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Halon.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Homebridge.mdx b/docs/Collecting Metrics/Collectors/Applications/Homebridge.mdx index 103a4ebf8c..8bc3da61c9 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Homebridge.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Homebridge.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Homey.mdx b/docs/Collecting Metrics/Collectors/Applications/Homey.mdx index 02492b6de1..91131c69af 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Homey.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Homey.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Honeypot.mdx b/docs/Collecting Metrics/Collectors/Applications/Honeypot.mdx index 46a5e431b9..219d8150df 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Honeypot.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Honeypot.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/IBM AIX systems Njmon.mdx b/docs/Collecting Metrics/Collectors/Applications/IBM AIX systems Njmon.mdx index 0c4c3831e3..a5fee858c0 100644 --- a/docs/Collecting Metrics/Collectors/Applications/IBM AIX systems Njmon.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/IBM AIX systems Njmon.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/JMX.mdx b/docs/Collecting Metrics/Collectors/Applications/JMX.mdx index f4251a7993..46a0e885de 100644 --- a/docs/Collecting Metrics/Collectors/Applications/JMX.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/JMX.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Kannel.mdx b/docs/Collecting Metrics/Collectors/Applications/Kannel.mdx index 933697e1bc..77f4874b1c 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Kannel.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Kannel.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Lynis audit reports.mdx b/docs/Collecting Metrics/Collectors/Applications/Lynis audit reports.mdx index 1a2c4ea3e9..83ff7f7de6 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Lynis audit reports.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Lynis audit reports.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Minecraft.mdx b/docs/Collecting Metrics/Collectors/Applications/Minecraft.mdx index 8d981a29e9..e25a5e5b1a 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Minecraft.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Minecraft.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/NRPE daemon.mdx b/docs/Collecting Metrics/Collectors/Applications/NRPE daemon.mdx index 4c8d1eefa8..190c999858 100644 --- a/docs/Collecting Metrics/Collectors/Applications/NRPE daemon.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/NRPE daemon.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Nextcloud servers.mdx b/docs/Collecting Metrics/Collectors/Applications/Nextcloud servers.mdx index 77d7cbf243..34ff522c9e 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Nextcloud servers.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Nextcloud servers.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/OBS Studio.mdx b/docs/Collecting Metrics/Collectors/Applications/OBS Studio.mdx index d1bd23b807..144a3275da 100644 --- a/docs/Collecting Metrics/Collectors/Applications/OBS Studio.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/OBS Studio.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/OpenWeatherMap.mdx b/docs/Collecting Metrics/Collectors/Applications/OpenWeatherMap.mdx index 2988245c86..125660eec6 100644 --- a/docs/Collecting Metrics/Collectors/Applications/OpenWeatherMap.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/OpenWeatherMap.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/ProFTPD.mdx b/docs/Collecting Metrics/Collectors/Applications/ProFTPD.mdx index 43a7c80c61..f1528df50e 100644 --- a/docs/Collecting Metrics/Collectors/Applications/ProFTPD.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/ProFTPD.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Prometheus endpoint.mdx b/docs/Collecting Metrics/Collectors/Applications/Prometheus endpoint.mdx index 33419aabd0..c3d731e183 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Prometheus endpoint.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Prometheus endpoint.mdx @@ -95,7 +95,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -152,6 +152,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -283,6 +313,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/RADIUS.mdx b/docs/Collecting Metrics/Collectors/Applications/RADIUS.mdx index 3fafa202cf..5481b3218a 100644 --- a/docs/Collecting Metrics/Collectors/Applications/RADIUS.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/RADIUS.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/SABnzbd.mdx b/docs/Collecting Metrics/Collectors/Applications/SABnzbd.mdx index 566bc31ed0..0e12816590 100644 --- a/docs/Collecting Metrics/Collectors/Applications/SABnzbd.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/SABnzbd.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Slurm.mdx b/docs/Collecting Metrics/Collectors/Applications/Slurm.mdx index 35e67f7a79..0d930c415e 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Slurm.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Slurm.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/StatusPage.mdx b/docs/Collecting Metrics/Collectors/Applications/StatusPage.mdx index ff4072457c..5355b2a974 100644 --- a/docs/Collecting Metrics/Collectors/Applications/StatusPage.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/StatusPage.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Steam.mdx b/docs/Collecting Metrics/Collectors/Applications/Steam.mdx index e27968a002..44a1308530 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Steam.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Steam.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Suricata.mdx b/docs/Collecting Metrics/Collectors/Applications/Suricata.mdx index 2f683ebcba..9c2da2a4c5 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Suricata.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Suricata.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Sysload.mdx b/docs/Collecting Metrics/Collectors/Applications/Sysload.mdx index 88583dc5a1..9c08e3389a 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Sysload.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Sysload.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/TACACS.mdx b/docs/Collecting Metrics/Collectors/Applications/TACACS.mdx index b6e5db3553..f522fd7cf6 100644 --- a/docs/Collecting Metrics/Collectors/Applications/TACACS.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/TACACS.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Tankerkoenig API.mdx b/docs/Collecting Metrics/Collectors/Applications/Tankerkoenig API.mdx index 074f8bdfe1..d8a20a2c9f 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Tankerkoenig API.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Tankerkoenig API.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Twitch.mdx b/docs/Collecting Metrics/Collectors/Applications/Twitch.mdx index 92bb3745ff..204f38f6ba 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Twitch.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Twitch.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/VSCode.mdx b/docs/Collecting Metrics/Collectors/Applications/VSCode.mdx index 207fc43a54..89b42966a8 100644 --- a/docs/Collecting Metrics/Collectors/Applications/VSCode.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/VSCode.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/Vault PKI.mdx b/docs/Collecting Metrics/Collectors/Applications/Vault PKI.mdx index af8c9eb409..cbc77b3197 100644 --- a/docs/Collecting Metrics/Collectors/Applications/Vault PKI.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/Vault PKI.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/YOURLS URL Shortener.mdx b/docs/Collecting Metrics/Collectors/Applications/YOURLS URL Shortener.mdx index e56664968c..822e5f77af 100644 --- a/docs/Collecting Metrics/Collectors/Applications/YOURLS URL Shortener.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/YOURLS URL Shortener.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/etcd.mdx b/docs/Collecting Metrics/Collectors/Applications/etcd.mdx index 1dfbc07198..5bdbebc1d3 100644 --- a/docs/Collecting Metrics/Collectors/Applications/etcd.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/etcd.mdx @@ -94,7 +94,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -151,6 +151,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -282,6 +312,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/gpsd.mdx b/docs/Collecting Metrics/Collectors/Applications/gpsd.mdx index ea83b60c7d..c9cd6e6c5a 100644 --- a/docs/Collecting Metrics/Collectors/Applications/gpsd.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/gpsd.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/journald.mdx b/docs/Collecting Metrics/Collectors/Applications/journald.mdx index eb48804abc..5577aa3f7a 100644 --- a/docs/Collecting Metrics/Collectors/Applications/journald.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/journald.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/loki.mdx b/docs/Collecting Metrics/Collectors/Applications/loki.mdx index 04c4828790..afc02134b2 100644 --- a/docs/Collecting Metrics/Collectors/Applications/loki.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/loki.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Applications/mtail.mdx b/docs/Collecting Metrics/Collectors/Applications/mtail.mdx index 79fd96f3b4..e0f2dad9ec 100644 --- a/docs/Collecting Metrics/Collectors/Applications/mtail.mdx +++ b/docs/Collecting Metrics/Collectors/Applications/mtail.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/AWS EC2 Compute instances.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/AWS EC2 Compute instances.mdx index db54d327dd..9694c0fb02 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/AWS EC2 Compute instances.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/AWS EC2 Compute instances.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/AWS Quota.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/AWS Quota.mdx index 39c67c38c9..2265ffe897 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/AWS Quota.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/AWS Quota.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/BOSH.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/BOSH.mdx index 77d6f760ba..3654e8cff3 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/BOSH.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/BOSH.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Cloud Foundry Firehose.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Cloud Foundry Firehose.mdx index 7687b7459e..f5d53ca2ca 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Cloud Foundry Firehose.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Cloud Foundry Firehose.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Cloud Foundry.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Cloud Foundry.mdx index cb1eac26f9..b68cd5c3dc 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Cloud Foundry.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Cloud Foundry.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/CloudWatch.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/CloudWatch.mdx index b53e023617..b832d97b1e 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/CloudWatch.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/CloudWatch.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Concourse.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Concourse.mdx index 93745d1077..3dd64ace0a 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Concourse.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Concourse.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Dynatrace.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Dynatrace.mdx index fa5f41c3df..c9e9899f11 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Dynatrace.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Dynatrace.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/GCP GCE.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/GCP GCE.mdx index abfccb6ec5..63f1872fbe 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/GCP GCE.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/GCP GCE.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/GitLab Runner.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/GitLab Runner.mdx index 3d231d5294..9672fc9609 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/GitLab Runner.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/GitLab Runner.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Google Cloud Platform.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Google Cloud Platform.mdx index 1f6caa8656..4629f1e4fc 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Google Cloud Platform.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Google Cloud Platform.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Google Stackdriver.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Google Stackdriver.mdx index 283dec46b9..866357895c 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Google Stackdriver.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Google Stackdriver.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Hubble.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Hubble.mdx index 5c7667045e..c471c1de17 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Hubble.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Hubble.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Jenkins.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Jenkins.mdx index 29c47130c0..37fa68d4f8 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Jenkins.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Jenkins.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Linode.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Linode.mdx index a52b2c8792..07da870257 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Linode.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Linode.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Spacelift.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Spacelift.mdx index ea3a311e5a..fd1bd1a3aa 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Spacelift.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Spacelift.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Zerto.mdx b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Zerto.mdx index 83a2d0d1ae..63f5509c89 100644 --- a/docs/Collecting Metrics/Collectors/Cloud and DevOps/Zerto.mdx +++ b/docs/Collecting Metrics/Collectors/Cloud and DevOps/Zerto.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Collectors.mdx b/docs/Collecting Metrics/Collectors/Collectors.mdx index 9cca72d7b5..e0f5bf410b 100644 --- a/docs/Collecting Metrics/Collectors/Collectors.mdx +++ b/docs/Collecting Metrics/Collectors/Collectors.mdx @@ -1078,6 +1078,10 @@ import { Grid, Box } from '@site/src/components/Grid_integrations'; + + + + diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/AWS ECS Containers.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/AWS ECS Containers.mdx index bdc5440bb1..b9ef5ffb88 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/AWS ECS Containers.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/AWS ECS Containers.mdx @@ -146,6 +146,10 @@ Metrics: | cgroup.io_full_pressure | some10, some60, some300 | percentage | | cgroup.io_full_pressure_stall_time | time | ms | | cgroup.pids_current | pids | pids | +| cgroup.cachestat_ratio | ratio | % | +| cgroup.cachestat_dirties | dirty | page/s | +| cgroup.cachestat_hits | hit | hits/s | +| cgroup.cachestat_misses | miss | misses/s | ### Per cgroup network device diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Cilium Agent.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Cilium Agent.mdx index 59fc7ab030..9201b42035 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/Cilium Agent.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Cilium Agent.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Cilium Operator.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Cilium Operator.mdx index 39cb090cde..eb14ab8748 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/Cilium Operator.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Cilium Operator.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Cilium Proxy.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Cilium Proxy.mdx index 63b1d74595..8c091021ae 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/Cilium Proxy.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Cilium Proxy.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Containers.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Containers.mdx index 991820d8a8..9000624d46 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/Containers.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Containers.mdx @@ -26,7 +26,7 @@ Module: /sys/fs/cgroup ## Overview -Monitor containers and virtual machines resource utilization — CPU, memory, disk I/O, and network — via Linux cgroups. +Monitor containers and virtual machines resource utilization — CPU, memory, disk I/O, network, and page cache activity — via Linux cgroups. @@ -146,6 +146,10 @@ Metrics: | cgroup.io_full_pressure | some10, some60, some300 | percentage | | cgroup.io_full_pressure_stall_time | time | ms | | cgroup.pids_current | pids | pids | +| cgroup.cachestat_ratio | ratio | % | +| cgroup.cachestat_dirties | dirty | page/s | +| cgroup.cachestat_hits | hit | hits/s | +| cgroup.cachestat_misses | miss | misses/s | ### Per cgroup network device diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Docker Containers.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Docker Containers.mdx index 01a2f8c8b5..eb57aad018 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/Docker Containers.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Docker Containers.mdx @@ -146,6 +146,10 @@ Metrics: | cgroup.io_full_pressure | some10, some60, some300 | percentage | | cgroup.io_full_pressure_stall_time | time | ms | | cgroup.pids_current | pids | pids | +| cgroup.cachestat_ratio | ratio | % | +| cgroup.cachestat_dirties | dirty | page/s | +| cgroup.cachestat_hits | hit | hits/s | +| cgroup.cachestat_misses | miss | misses/s | ### Per cgroup network device diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Hyper-V.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Hyper-V.mdx index 87389a6f42..9fd8ffafe8 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/Hyper-V.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Hyper-V.mdx @@ -5,7 +5,7 @@ learn_status: "Published" toc_max_heading_level: "6" toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Containers and VMs" -keywords: [windows, microsoft, hyperv, virtualization, vm] +keywords: [windows, microsoft, hyperv, virtualization, vm, azure-local, azure-stack-hci] message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" sidebar_position: "110" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/containers-and-vms/hyper-v" @@ -26,7 +26,7 @@ Module: PerflibHyperV ## Overview -This collector monitors website requests and logins. +This collector monitors Hyper-V virtualization metrics including virtual machine health status, root partition virtualization layer statistics (TLB flushes, address spaces, attached devices, GPA space), per-VM CPU usage, memory allocation and pressure, storage device I/O and errors, network interface traffic and packets, and virtual switch traffic, packets, and dropped packets. It queries the 'HyperV' object from Perflib in order to gather the metrics. diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Kubernetes Containers.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Kubernetes Containers.mdx index 97a1eedaa9..27b74211f3 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/Kubernetes Containers.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Kubernetes Containers.mdx @@ -26,7 +26,7 @@ Module: /sys/fs/cgroup ## Overview -Monitor containers and virtual machines resource utilization — CPU, memory, disk I/O, and network — via Linux cgroups. +Monitor containers and virtual machines resource utilization — CPU, memory, disk I/O, network, and page cache activity — via Linux cgroups. diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/LXC Containers.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/LXC Containers.mdx index 829bab849a..f7e5fc4280 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/LXC Containers.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/LXC Containers.mdx @@ -146,6 +146,10 @@ Metrics: | cgroup.io_full_pressure | some10, some60, some300 | percentage | | cgroup.io_full_pressure_stall_time | time | ms | | cgroup.pids_current | pids | pids | +| cgroup.cachestat_ratio | ratio | % | +| cgroup.cachestat_dirties | dirty | page/s | +| cgroup.cachestat_hits | hit | hits/s | +| cgroup.cachestat_misses | miss | misses/s | ### Per cgroup network device diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Libvirt VMs and Containers.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Libvirt VMs and Containers.mdx index 5d82dd19e6..a52bab5bde 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/Libvirt VMs and Containers.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Libvirt VMs and Containers.mdx @@ -146,6 +146,10 @@ Metrics: | cgroup.io_full_pressure | some10, some60, some300 | percentage | | cgroup.io_full_pressure_stall_time | time | ms | | cgroup.pids_current | pids | pids | +| cgroup.cachestat_ratio | ratio | % | +| cgroup.cachestat_dirties | dirty | page/s | +| cgroup.cachestat_hits | hit | hits/s | +| cgroup.cachestat_misses | miss | misses/s | ### Per cgroup network device diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Mesos.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Mesos.mdx index d759c35bdf..d77cc81781 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/Mesos.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Mesos.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Nomad Containers.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Nomad Containers.mdx index 2da82ef0a5..f069bab23b 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/Nomad Containers.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Nomad Containers.mdx @@ -146,6 +146,10 @@ Metrics: | cgroup.io_full_pressure | some10, some60, some300 | percentage | | cgroup.io_full_pressure_stall_time | time | ms | | cgroup.pids_current | pids | pids | +| cgroup.cachestat_ratio | ratio | % | +| cgroup.cachestat_dirties | dirty | page/s | +| cgroup.cachestat_hits | hit | hits/s | +| cgroup.cachestat_misses | miss | misses/s | ### Per cgroup network device diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/OpenStack VMs.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/OpenStack VMs.mdx index 0192d600e1..4a85947c6a 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/OpenStack VMs.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/OpenStack VMs.mdx @@ -146,6 +146,10 @@ Metrics: | cgroup.io_full_pressure | some10, some60, some300 | percentage | | cgroup.io_full_pressure_stall_time | time | ms | | cgroup.pids_current | pids | pids | +| cgroup.cachestat_ratio | ratio | % | +| cgroup.cachestat_dirties | dirty | page/s | +| cgroup.cachestat_hits | hit | hits/s | +| cgroup.cachestat_misses | miss | misses/s | ### Per cgroup network device diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Podman Containers.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Podman Containers.mdx index c0607f6312..08d6b2a701 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/Podman Containers.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Podman Containers.mdx @@ -146,6 +146,10 @@ Metrics: | cgroup.io_full_pressure | some10, some60, some300 | percentage | | cgroup.io_full_pressure_stall_time | time | ms | | cgroup.pids_current | pids | pids | +| cgroup.cachestat_ratio | ratio | % | +| cgroup.cachestat_dirties | dirty | page/s | +| cgroup.cachestat_hits | hit | hits/s | +| cgroup.cachestat_misses | miss | misses/s | ### Per cgroup network device diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Podman.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Podman.mdx index 7bc72e147e..2859360802 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/Podman.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Podman.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Proxmox VE.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Proxmox VE.mdx index a0399518f2..3c434f2a82 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/Proxmox VE.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Proxmox VE.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Proxmox VMs and Containers.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Proxmox VMs and Containers.mdx index 4a9ba99ff4..fcef1420fd 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/Proxmox VMs and Containers.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Proxmox VMs and Containers.mdx @@ -146,6 +146,10 @@ Metrics: | cgroup.io_full_pressure | some10, some60, some300 | percentage | | cgroup.io_full_pressure_stall_time | time | ms | | cgroup.pids_current | pids | pids | +| cgroup.cachestat_ratio | ratio | % | +| cgroup.cachestat_dirties | dirty | page/s | +| cgroup.cachestat_hits | hit | hits/s | +| cgroup.cachestat_misses | miss | misses/s | ### Per cgroup network device diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Virtual Machines.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Virtual Machines.mdx index 63b91f19ad..57c9d87079 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/Virtual Machines.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Virtual Machines.mdx @@ -146,6 +146,10 @@ Metrics: | cgroup.io_full_pressure | some10, some60, some300 | percentage | | cgroup.io_full_pressure_stall_time | time | ms | | cgroup.pids_current | pids | pids | +| cgroup.cachestat_ratio | ratio | % | +| cgroup.cachestat_dirties | dirty | page/s | +| cgroup.cachestat_hits | hit | hits/s | +| cgroup.cachestat_misses | miss | misses/s | ### Per cgroup network device diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/containerd Containers.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/containerd Containers.mdx index da7f7705f4..adb746fb76 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/containerd Containers.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/containerd Containers.mdx @@ -146,6 +146,10 @@ Metrics: | cgroup.io_full_pressure | some10, some60, some300 | percentage | | cgroup.io_full_pressure_stall_time | time | ms | | cgroup.pids_current | pids | pids | +| cgroup.cachestat_ratio | ratio | % | +| cgroup.cachestat_dirties | dirty | page/s | +| cgroup.cachestat_hits | hit | hits/s | +| cgroup.cachestat_misses | miss | misses/s | ### Per cgroup network device diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/oVirt VMs.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/oVirt VMs.mdx index 5a6da54a4f..cb5d1eaae1 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/oVirt VMs.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/oVirt VMs.mdx @@ -146,6 +146,10 @@ Metrics: | cgroup.io_full_pressure | some10, some60, some300 | percentage | | cgroup.io_full_pressure_stall_time | time | ms | | cgroup.pids_current | pids | pids | +| cgroup.cachestat_ratio | ratio | % | +| cgroup.cachestat_dirties | dirty | page/s | +| cgroup.cachestat_hits | hit | hits/s | +| cgroup.cachestat_misses | miss | misses/s | ### Per cgroup network device diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/systemd-nspawn Containers.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/systemd-nspawn Containers.mdx index 1bb5558405..05c15a8308 100644 --- a/docs/Collecting Metrics/Collectors/Containers and VMs/systemd-nspawn Containers.mdx +++ b/docs/Collecting Metrics/Collectors/Containers and VMs/systemd-nspawn Containers.mdx @@ -146,6 +146,10 @@ Metrics: | cgroup.io_full_pressure | some10, some60, some300 | percentage | | cgroup.io_full_pressure_stall_time | time | ms | | cgroup.pids_current | pids | pids | +| cgroup.cachestat_ratio | ratio | % | +| cgroup.cachestat_dirties | dirty | page/s | +| cgroup.cachestat_hits | hit | hits/s | +| cgroup.cachestat_misses | miss | misses/s | ### Per cgroup network device diff --git a/docs/Collecting Metrics/Collectors/Databases/4D Server.mdx b/docs/Collecting Metrics/Collectors/Databases/4D Server.mdx index f4a514b318..8ab76c4bbf 100644 --- a/docs/Collecting Metrics/Collectors/Databases/4D Server.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/4D Server.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/AWS RDS.mdx b/docs/Collecting Metrics/Collectors/Databases/AWS RDS.mdx index fec5fcf679..9837774ae8 100644 --- a/docs/Collecting Metrics/Collectors/Databases/AWS RDS.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/AWS RDS.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/ClusterControl CMON.mdx b/docs/Collecting Metrics/Collectors/Databases/ClusterControl CMON.mdx index 71d735e839..57bb58f5b9 100644 --- a/docs/Collecting Metrics/Collectors/Databases/ClusterControl CMON.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/ClusterControl CMON.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/HANA.mdx b/docs/Collecting Metrics/Collectors/Databases/HANA.mdx index 4755b5d0be..a92d9e3aab 100644 --- a/docs/Collecting Metrics/Collectors/Databases/HANA.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/HANA.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/IBM MQ.mdx b/docs/Collecting Metrics/Collectors/Databases/IBM MQ.mdx index b0c1cdbd6e..bf86588323 100644 --- a/docs/Collecting Metrics/Collectors/Databases/IBM MQ.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/IBM MQ.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/InfluxDB.mdx b/docs/Collecting Metrics/Collectors/Databases/InfluxDB.mdx index b6bc02b19c..5006857364 100644 --- a/docs/Collecting Metrics/Collectors/Databases/InfluxDB.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/InfluxDB.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/Kafka Consumer Lag.mdx b/docs/Collecting Metrics/Collectors/Databases/Kafka Consumer Lag.mdx index 80d4d9ac70..3f0cb9bcc0 100644 --- a/docs/Collecting Metrics/Collectors/Databases/Kafka Consumer Lag.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/Kafka Consumer Lag.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/Kafka ZooKeeper.mdx b/docs/Collecting Metrics/Collectors/Databases/Kafka ZooKeeper.mdx index e3ec0007fb..dfe1abd78d 100644 --- a/docs/Collecting Metrics/Collectors/Databases/Kafka ZooKeeper.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/Kafka ZooKeeper.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/Kafka.mdx b/docs/Collecting Metrics/Collectors/Databases/Kafka.mdx index 36f74806bc..b28458ce8e 100644 --- a/docs/Collecting Metrics/Collectors/Databases/Kafka.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/Kafka.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/Meilisearch.mdx b/docs/Collecting Metrics/Collectors/Databases/Meilisearch.mdx index 90b4c801f4..0f783f05f3 100644 --- a/docs/Collecting Metrics/Collectors/Databases/Meilisearch.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/Meilisearch.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/Patroni.mdx b/docs/Collecting Metrics/Collectors/Databases/Patroni.mdx index d573f1c4cf..98d582b6bb 100644 --- a/docs/Collecting Metrics/Collectors/Databases/Patroni.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/Patroni.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/Pgpool-II.mdx b/docs/Collecting Metrics/Collectors/Databases/Pgpool-II.mdx index ca1ad75f3c..982cf3335b 100644 --- a/docs/Collecting Metrics/Collectors/Databases/Pgpool-II.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/Pgpool-II.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/Redis Queue.mdx b/docs/Collecting Metrics/Collectors/Databases/Redis Queue.mdx index 0c86896509..95fd027788 100644 --- a/docs/Collecting Metrics/Collectors/Databases/Redis Queue.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/Redis Queue.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/ScyllaDB.mdx b/docs/Collecting Metrics/Collectors/Databases/ScyllaDB.mdx index aa06d4e750..0cb9042635 100644 --- a/docs/Collecting Metrics/Collectors/Databases/ScyllaDB.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/ScyllaDB.mdx @@ -94,7 +94,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -151,6 +151,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -282,6 +312,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/Sphinx.mdx b/docs/Collecting Metrics/Collectors/Databases/Sphinx.mdx index 14cb940d24..28d71bbc1d 100644 --- a/docs/Collecting Metrics/Collectors/Databases/Sphinx.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/Sphinx.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/Vertica.mdx b/docs/Collecting Metrics/Collectors/Databases/Vertica.mdx index 18e87ec0bf..8acd7fc4e6 100644 --- a/docs/Collecting Metrics/Collectors/Databases/Vertica.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/Vertica.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/Warp10.mdx b/docs/Collecting Metrics/Collectors/Databases/Warp10.mdx index 3ba11f2715..f889899c72 100644 --- a/docs/Collecting Metrics/Collectors/Databases/Warp10.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/Warp10.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/mosquitto.mdx b/docs/Collecting Metrics/Collectors/Databases/mosquitto.mdx index 74bd3846e5..e4d141fae4 100644 --- a/docs/Collecting Metrics/Collectors/Databases/mosquitto.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/mosquitto.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Databases/pgBackRest.mdx b/docs/Collecting Metrics/Collectors/Databases/pgBackRest.mdx index 2181005a55..485358f2b4 100644 --- a/docs/Collecting Metrics/Collectors/Databases/pgBackRest.mdx +++ b/docs/Collecting Metrics/Collectors/Databases/pgBackRest.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/AMD CPU & GPU.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/AMD CPU & GPU.mdx index c2556de6e4..a6929cedd9 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/AMD CPU & GPU.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/AMD CPU & GPU.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Christ Elektronik CLM5IP power panel.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Christ Elektronik CLM5IP power panel.mdx index 800a49c28e..2749c05c02 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Christ Elektronik CLM5IP power panel.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Christ Elektronik CLM5IP power panel.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/CraftBeerPi.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/CraftBeerPi.mdx index 821fbbd58f..8535e8767a 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/CraftBeerPi.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/CraftBeerPi.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Dutch Electricity Smart Meter.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Dutch Electricity Smart Meter.mdx index 40525208b9..9e5b847a50 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Dutch Electricity Smart Meter.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Dutch Electricity Smart Meter.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Elgato Key Light devices..mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Elgato Key Light devices..mdx index fd9a582876..04a1d7278c 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Elgato Key Light devices..mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Elgato Key Light devices..mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Energomera smart power meters.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Energomera smart power meters.mdx index 5d78ec67cf..843e3cb20b 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Energomera smart power meters.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Energomera smart power meters.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/IBM CryptoExpress CEX cards.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/IBM CryptoExpress CEX cards.mdx index 09db8fe666..4ffaecc186 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/IBM CryptoExpress CEX cards.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/IBM CryptoExpress CEX cards.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/IBM Z Hardware Management Console.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/IBM Z Hardware Management Console.mdx index 408e7f5e45..ea5549531c 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/IBM Z Hardware Management Console.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/IBM Z Hardware Management Console.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Jarvis Standing Desk.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Jarvis Standing Desk.mdx index 87fbbb734d..c788233607 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Jarvis Standing Desk.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Jarvis Standing Desk.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Modbus protocol.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Modbus protocol.mdx index 0fd27b01b4..6691b0f57a 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Modbus protocol.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Modbus protocol.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Nature Remo E lite devices.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Nature Remo E lite devices.mdx index d6e7dffe25..844c63c518 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Nature Remo E lite devices.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Nature Remo E lite devices.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Netatmo sensors.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Netatmo sensors.mdx index a9d38bbc3b..8e1662fe30 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Netatmo sensors.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Netatmo sensors.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Personal Weather Station.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Personal Weather Station.mdx index 2f05aad1e7..4149e6a369 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Personal Weather Station.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Personal Weather Station.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Philips Hue.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Philips Hue.mdx index 8d80c7db06..71ad2092f0 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Philips Hue.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Philips Hue.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Pimoroni Enviro+.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Pimoroni Enviro+.mdx index 69544bd9bc..0642f6e04f 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Pimoroni Enviro+.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Pimoroni Enviro+.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Powerpal devices.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Powerpal devices.mdx index 6f6cd83ded..c79b6aac24 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Powerpal devices.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Powerpal devices.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Radio Thermostat.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Radio Thermostat.mdx index cedc554648..70cc941763 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Radio Thermostat.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Radio Thermostat.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Raritan PDU.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Raritan PDU.mdx index 7705ab8265..0712306781 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Raritan PDU.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Raritan PDU.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/SMA Inverters.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/SMA Inverters.mdx index e9dc48ea0f..a163a27f56 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/SMA Inverters.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/SMA Inverters.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Salicru EQX inverter.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Salicru EQX inverter.mdx index 3535479e3e..e06633e905 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Salicru EQX inverter.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Salicru EQX inverter.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Sense Energy.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Sense Energy.mdx index 1da7cc1f7e..738485705a 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Sense Energy.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Sense Energy.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Shelly humidity sensor.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Shelly humidity sensor.mdx index 7a280e1a77..28680a73cb 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Shelly humidity sensor.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Shelly humidity sensor.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Siemens S7 PLC.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Siemens S7 PLC.mdx index 0423eb3799..7de2faf382 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Siemens S7 PLC.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Siemens S7 PLC.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Smart meters SML.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Smart meters SML.mdx index 81071e118e..9ceb8b9dde 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Smart meters SML.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Smart meters SML.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Solar logging stick.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Solar logging stick.mdx index 507b857eea..2756a33bbf 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Solar logging stick.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Solar logging stick.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Solis Ginlong 5G inverters.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Solis Ginlong 5G inverters.mdx index ab42ae767f..8bb63d84e1 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Solis Ginlong 5G inverters.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Solis Ginlong 5G inverters.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Sunspec Solar Energy.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Sunspec Solar Energy.mdx index 93d1cc2929..6757ac0707 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Sunspec Solar Energy.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Sunspec Solar Energy.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Tado smart heating solution.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Tado smart heating solution.mdx index 18e4ecdf0b..9e83085230 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Tado smart heating solution.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Tado smart heating solution.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Tesla Wall Connector.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Tesla Wall Connector.mdx index 00fdd66232..9034eea12c 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Tesla Wall Connector.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Tesla Wall Connector.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Tesla vehicle.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Tesla vehicle.mdx index d791c05dc7..0e82ce2b95 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Tesla vehicle.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Tesla vehicle.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Xiaomi Mi Flora.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Xiaomi Mi Flora.mdx index d11f192b66..e182de25e5 100644 --- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Xiaomi Mi Flora.mdx +++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Xiaomi Mi Flora.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/8430FT modem.mdx b/docs/Collecting Metrics/Collectors/Networking/8430FT modem.mdx index 27677d2481..83de3710a5 100644 --- a/docs/Collecting Metrics/Collectors/Networking/8430FT modem.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/8430FT modem.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/Bird Routing Daemon.mdx b/docs/Collecting Metrics/Collectors/Networking/Bird Routing Daemon.mdx index b9872dc2a7..2338f0fa15 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Bird Routing Daemon.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Bird Routing Daemon.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/Clash.mdx b/docs/Collecting Metrics/Collectors/Networking/Clash.mdx index 5095f1743b..27ffda0458 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Clash.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Clash.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/DNSBL.mdx b/docs/Collecting Metrics/Collectors/Networking/DNSBL.mdx index 40839e33eb..f3732c7e47 100644 --- a/docs/Collecting Metrics/Collectors/Networking/DNSBL.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/DNSBL.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/FRRouting.mdx b/docs/Collecting Metrics/Collectors/Networking/FRRouting.mdx index 8ae07ebc5a..d1c1e62fee 100644 --- a/docs/Collecting Metrics/Collectors/Networking/FRRouting.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/FRRouting.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/Fastd.mdx b/docs/Collecting Metrics/Collectors/Networking/Fastd.mdx index 3735dc019a..fe5305cc5c 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Fastd.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Fastd.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/Freifunk network.mdx b/docs/Collecting Metrics/Collectors/Networking/Freifunk network.mdx index 098daaefd8..7d8b0d0796 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Freifunk network.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Freifunk network.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/Hitron CODA Cable Modem.mdx b/docs/Collecting Metrics/Collectors/Networking/Hitron CODA Cable Modem.mdx index 3cf412e7d4..280ad86f7b 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Hitron CODA Cable Modem.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Hitron CODA Cable Modem.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/Keepalived.mdx b/docs/Collecting Metrics/Collectors/Networking/Keepalived.mdx index c7b3ee6ebe..b63d478d2c 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Keepalived.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Keepalived.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/Network Connections.mdx b/docs/Collecting Metrics/Collectors/Networking/Network Connections.mdx index 6a94c29385..30f024c118 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Network Connections.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Network Connections.mdx @@ -5,7 +5,7 @@ learn_status: "Published" toc_max_heading_level: "6" toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" -keywords: [network, connections, sockets, tcp, udp, ports] +keywords: [network, connections, sockets, tcp, udp, ports, freebsd] message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" sidebar_position: "350" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/network-connections" @@ -31,10 +31,15 @@ Module: network-viewer.plugin This plugin reads the system's socket tables to enumerate all active network connections, including TCP and UDP sockets in all states, for both IPv4 and IPv6. +On Linux it consumes `NETLINK_INET_DIAG` and the `/proc` socket tables; +on FreeBSD it walks `KERN_PROC_FILEDESC` and consults `net.inet.tcp.pcblist` +to attribute sockets to processes. + This collector is only supported on the following platforms: - Linux +- FreeBSD This collector only supports collecting metrics from a single instance of this integration. @@ -92,7 +97,8 @@ There are no alerts configured by default for this integration. ## Live Data -This plugin exposes a real-time function for viewing active network connections. +This plugin exposes real-time functions for viewing active network connections and, +on FreeBSD, system-wide TCP and UDP stack statistics. ### Network Connections @@ -103,7 +109,8 @@ Provides both aggregated and detailed views of TCP and UDP connections for IPv4 including connection direction (listen, inbound, outbound, local), process information, and TCP performance metrics (RTT, retransmissions). -Connections are classified as system or container based on network namespace. +On Linux, connections are classified as system or container based on network namespace. +On FreeBSD, namespaces are not exposed to userspace and the classification is omitted. | Aspect | Description | @@ -126,6 +133,43 @@ This function has no parameters. +| Column | Type | Unit | Visibility | Description | +|:-------|:-----|:-----|:-----------|:------------| + +### Network Protocols + +Shows FreeBSD TCP and UDP stack statistics grouped by transport protocol. + +Each row covers one transport (TCP or UDP) and reports IPv4+IPv6 combined +traffic counters (received, sent, errors), TCP-specific connection counters +(active opens, currently established, passive opens, resets, total segments, +retransmitted segments), and the UDP-specific datagrams-with-no-port counter. + +Values are per-second deltas sampled from `net.inet.tcp.stats`, +`net.inet.tcp.states`, and `net.inet.udp.stats`. The first call after the +plugin starts returns zeros because there is no previous sample to diff against. + + +| Aspect | Description | +|:-------|:------------| +| Name | `Network-viewer.plugin:network-protocols` | +| Require Cloud | no | +| Performance | | +| Security | | +| Availability | FreeBSD only. | + +#### Prerequisites + +No additional configuration is required. + +#### Parameters + +This function has no parameters. + +#### Returns + + + | Column | Type | Unit | Visibility | Description | |:-------|:-----|:-----|:-----------|:------------| diff --git a/docs/Collecting Metrics/Collectors/Networking/Networking.mdx b/docs/Collecting Metrics/Collectors/Networking/Networking.mdx index faba7855e5..5f86993b5a 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Networking.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Networking.mdx @@ -174,6 +174,10 @@ import { Grid, Box } from '@site/src/components/Grid_integrations'; + + + + diff --git a/docs/Collecting Metrics/Collectors/Networking/NextDNS.mdx b/docs/Collecting Metrics/Collectors/Networking/NextDNS.mdx index 4f52487d29..ded89ad513 100644 --- a/docs/Collecting Metrics/Collectors/Networking/NextDNS.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/NextDNS.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/Open vSwitch.mdx b/docs/Collecting Metrics/Collectors/Networking/Open vSwitch.mdx index 240f4e54ac..47092ff44b 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Open vSwitch.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Open vSwitch.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/OpenROADM devices.mdx b/docs/Collecting Metrics/Collectors/Networking/OpenROADM devices.mdx index 822fa4962c..f32a42a181 100644 --- a/docs/Collecting Metrics/Collectors/Networking/OpenROADM devices.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/OpenROADM devices.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/RIPE Atlas.mdx b/docs/Collecting Metrics/Collectors/Networking/RIPE Atlas.mdx index 0977ab3c64..8fc9927d87 100644 --- a/docs/Collecting Metrics/Collectors/Networking/RIPE Atlas.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/RIPE Atlas.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/SNMP trap listener.mdx b/docs/Collecting Metrics/Collectors/Networking/SNMP trap listener.mdx new file mode 100644 index 0000000000..29aba18051 --- /dev/null +++ b/docs/Collecting Metrics/Collectors/Networking/SNMP trap listener.mdx @@ -0,0 +1,669 @@ +--- +custom_edit_url: "https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/snmp_traps/metadata.yaml" +sidebar_label: "SNMP trap listener" +learn_status: "Published" +toc_max_heading_level: "6" +toc_collapsible: "true" +learn_rel_path: "Collecting Metrics/Collectors/Networking" +keywords: [snmp, trap, inform, snmpv3, usm, syslog, network events, event monitoring, notifications, fault management, network management] +message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" +sidebar_position: "540" +learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/snmp-trap-listener" +slug: "/collecting-metrics/collectors/networking/snmp-trap-listener" +--- + + + +# SNMP trap listener + + + + + +Plugin: go.d.plugin +Module: snmp_traps + + + +## Overview + +This collector listens for incoming SNMP Trap and INFORM notifications from network devices and persists them as enriched, structured log entries. + +- **Multi-protocol**: Accepts SNMPv1 Trap, SNMPv2c Trap/INFORM, and SNMPv3 Trap/INFORM with USM (user-based security model) authentication and privacy. +- **Per-job listeners**: Each job binds UDP endpoints independently, enabling per-site or per-segment trap receivers. +- **OOB profile pack**: Netdata ships with a library of pre-built trap profiles that resolve numeric OIDs to names, categories, severities, and varbind labels without manual MIB work for common equipment. +- **Dynamic engine ID discovery**: Optional runtime discovery of SNMPv3 sender engine IDs for environments where the engine ID is not known in advance. +- **Deduplication**: Optional configurable per-job dedup that suppresses repeated identical traps within a window. The first matching trap is journaled immediately; subsequent matches increment a summary counter and a periodic summary entry is written. +- **Per-OID overrides**: Operators can override the profile-assigned category, severity, and labels for specific OIDs without editing profiles. +- **Per-OID metric opt-in**: Operators can promote selected trap OIDs to dedicated Netdata metric charts for finer-grained alerting and dashboards. Each metric entry selects an OID, a context name under `snmp.trap.`, and optionally a bounded-cardinality varbind for multi-dimensional counting. +- **Direct journal storage**: Enabled by default for explicit jobs. Stores traps under the configured Netdata log directory (`/var/log/netdata/traps//` by default) and exposes the embedded `snmp:traps` Function. Direct-journal jobs appear as `__logs_sources` options. +- **OTLP/gRPC export**: Optional backend that exports traps as OTLP LogRecords. When `otlp.enabled` is `true`, traps are exported through OTLP regardless of `journal.enabled`; if direct journal storage is also enabled, both backends receive traps. +- **Self-metrics**: Per-job counters for trap events (by category and severity), processing errors (by type), and dedup suppression (when enabled). + +When direct journal storage is enabled, trap entries are written as structured systemd-journal log messages with plugin-controlled fields (`TRAP_REPORT_TYPE`, `TRAP_JOB`, `TRAP_OID`, `TRAP_NAME`, `TRAP_CATEGORY`, `TRAP_SEVERITY`, `TRAP_PDU_TYPE`, `TRAP_VERSION`, `TRAP_SOURCE_IP`, `TRAP_SOURCE_UDP_PEER`, `TRAP_SOURCE_UDP_PORT`, `TRAP_DEVICE_VENDOR`, `TRAP_INTERFACE`, `TRAP_NEIGHBORS`, `TRAP_REVERSE_DNS`, `TRAP_SUPPRESSED_COUNT`, `TRAP_SUPPRESSED_FINGERPRINTS`, `TRAP_REPORT_PERIOD_SEC`, `TRAP_DECODE_ERROR_KIND`, `TRAP_DECODE_ERROR`, `TRAP_PACKET_SIZE`, `TRAP_PACKET_SHA256`, `TRAP_LISTENER`, `TRAP_ENGINE_ID`, `TRAP_ENRICHMENT`, `TRAP_JSON`) plus profile-defined labels (`TRAP_TAG_*`) and decoded event varbind fields (`TRAP_VAR_*`). Non-sensitive, non-redundant event varbinds are indexed as `TRAP_VAR_*`; enum-backed varbinds also emit `_RAW` with the numeric value. `TRAP_ENRICHMENT` records the source-attribution and enrichment decisions for audit/debug, and `TRAP_JSON` stores the structured varbind payload plus `netdata_packet_sequence`, a per-job receive counter assigned once per UDP datagram. Query traps with the embedded `snmp:traps` Function through Netdata Cloud or directly via the Agent HTTP API. The Function selects all direct-journal jobs by default and can narrow to one listener with `selections.__logs_sources=[""]`. OTLP-only jobs do not create local journal files and therefore do not appear as log sources. + +**Closed 8-category / 8-severity taxonomy** (from the OOB profile pack): + +| Category | Description | +|----------|-------------| +| `state_change` | Link up/down, operational state transitions | +| `config_change` | Configuration modifications | +| `security` | Security events (intrusion, ACL, etc.) | +| `auth` | Authentication and authorization events | +| `license` | License-state events | +| `mobility` | Roaming, handoff, wireless client events | +| `diagnostic` | Tests, health checks, probes | +| `unknown` | Unmatched or unclassified traps | + +| Severity | Description | +|----------|-------------| +| `emerg` | System unusable | +| `alert` | Immediate action required | +| `crit` | Critical condition | +| `err` | Error condition | +| `warning` | Warning condition | +| `notice` | Normal but significant condition | +| `info` | Informational | +| `debug` | Debug-level message | + + +**Profile locations** + +| Type | Default path | Notes | +|------|--------------|-------| +| **Stock profiles** | `/usr/lib/netdata/conf.d/go.d/snmp.trap-profiles/default/` | Shipped with Netdata; packages store vendor files as `.yaml.zst` | +| **User profiles** | `/etc/netdata/go.d/snmp.trap-profiles/` | Place custom or converted `.yaml` profiles here | + +> Depending on installation, paths may be prefixed with `/opt/netdata`. + +A **trap profile** defines per-OID mappings: +- Category and severity +- Trap name and description +- Varbind labels for structured enrichment + +**At runtime, the collector**: +1. Receives a trap PDU on a bound UDP endpoint +2. Validates the SNMP version, community/USM, and source against the job configuration +3. Resolves the trap OID against operator profiles and lazily-loaded stock profile files to get a name, category, severity, and varbind labels +4. Enriches the entry with optional reverse DNS (`TRAP_REVERSE_DNS` annotation, never `_HOSTNAME`) and dedup logic (if enabled) +5. Writes the structured entry to the per-job direct journal when enabled, and exports via OTLP when configured +6. Increments the per-job self-metrics (events by category and severity, errors by type) + +**Custom MIB workflow**: Operators with device-specific MIBs not covered by the OOB profiles can use the installed `/usr/libexec/netdata/plugins.d/snmp-trap-profile-gen` helper to convert MIBs into trap profile YAMLs offline. The helper writes profiles under `snmp-trap-profile-gen-output/profiles/`; copy the needed YAML files to `/etc/netdata/go.d/snmp.trap-profiles/`. Active SNMP trap jobs automatically reload user-supplied profile changes and keep the last valid profile index if a changed file is invalid. Stock profile updates are picked up after trap jobs stop/start or the Netdata Agent restarts. If no trap job is active, the next job creation loads and validates the profile files. See [SNMP trap profile format](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/config/go.d/snmp.trap-profiles/profile-format.md) for the YAML schema. + +Example conversion for a MIB module not shipped in the OOB pack: +```sh +/usr/libexec/netdata/plugins.d/snmp-trap-profile-gen generate \ + --source-dir /path/to/vendor-mibs \ + --mib NAGIOS-NOTIFY-MIB \ + --out-dir ./snmp-trap-profile-gen-output +``` + + +This collector is only supported on the following platforms: + +- linux + +This collector supports collecting metrics from multiple instances of this integration, including remote instances. + +Binding to the standard SNMP trap port (UDP/162) requires `CAP_NET_BIND_SERVICE` or root. +Netdata packages grant this capability to `go.d.plugin` and allow it in `netdata.service`. + + +### Default Behavior + +#### Auto-Detection + +SNMP trap collection is not auto-detected. The collector must be explicitly configured as a job under `go.d/snmp_traps.conf`. + + +#### Limits + +BER decode limits protect the UDP-exposed parser: datagrams are capped at 8 KiB, varbinds at 256 per PDU, BER nesting depth at 8, encoded OID length at 128 bytes, OctetString values at 1024 bytes, and decode time at 1 ms per PDU. +Accepted-source decode failures are written as `TRAP_REPORT_TYPE=decode_error` rows with sanitized error details, source address/port, listener endpoint when known, sniffed SNMP version when known, packet size, and packet SHA-256. Raw packet bytes are not written because SNMP community strings and binary payloads can appear in received datagrams. +Deduplication, when enabled, uses a per-job fingerprint cache capped by `dedup.cache_max_entries` (default 100000). + + +#### Performance Impact + +The collector is event-driven and does not poll devices. CPU cost is proportional to the received trap rate. +Profile OID lookups use hash tables. Deduplication, when enabled, adds a configurable fingerprint cache. +For high-volume environments, size the dedup cache and journal rotation according to sustained trap volume and retention requirements. OTLP-only jobs avoid local journal storage but do not appear as sources in the embedded local logs viewer. + + +## Setup + + +You can configure the **snmp_traps** collector in two ways: + +| Method | Best for | How to | +|-----------------------|------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------| +| [**UI**](#via-ui) | Fast setup without editing files | Go to **Nodes → Configure this node → Collectors → Jobs**, search for **snmp_traps**, then click **+** to add a job. | +| [**File**](#via-file) | If you prefer configuring via file, or need to automate deployments (e.g., with Ansible) | Edit `go.d/snmp_traps.conf` and add a job. | + +:::important + +UI configuration requires paid Netdata Cloud plan. + +::: + + +### Prerequisites + +#### Prepare SNMP trap sources + +Configure the network devices sending traps: +- Set the trap destination to the Netdata host's IP address and the UDP port bound by the listener job. +- Ensure the SNMP community (v1/v2c) or USM credentials (v3) match the job configuration. +- For v3 traps, configure the device's engine ID and USM user with the matching auth and privacy protocols. + + +#### Verify Netdata log directory access + +Direct-journal jobs write under the configured Netdata log directory (`/var/log/netdata/traps/` by default, or `${NETDATA_LOG_DIR}/traps/` at runtime). +Job creation fails if the configured Netdata log directory is missing or unusable. For OTLP-only jobs, set `journal.enabled: false` and `otlp.enabled: true`. + + +#### Add custom trap profiles (optional) + +If the stock trap profiles do not cover a device, convert vendor MIBs with the installed `/usr/libexec/netdata/plugins.d/snmp-trap-profile-gen` helper and place the resulting YAML profiles under `/etc/netdata/go.d/snmp.trap-profiles/`. +This is the supported workflow for adding custom trap profile coverage. +Profile YAML syntax is documented in [SNMP trap profile format](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/config/go.d/snmp.trap-profiles/profile-format.md). + + + +### Configuration + +#### Options + +The following options can be defined globally: update_every, autodetection_retry. + + +
+Config options + + + +| Group | Option | Description | Default | Required | +|:------|:-----|:------------|:--------|:---------:| +| **Collection** | update_every | Framework collection interval for self-metrics. Trap packet reception is event-driven and does not depend on this interval. | 1 | no | +| **Listener** | [listen](#option-listener-listen) | Network endpoints this listener binds during job creation. | | yes | +| **SNMP** | [versions](#option-snmp-versions) | Accepted trap protocol versions. | [v1, v2c] | no | +| **SNMPv1/2c** | communities | SNMPv1/v2c community allowlist. Empty accepts all communities. | [] | no | +| **SNMPv3** | [usm_users](#option-snmpv3-usm-users) | SNMPv3 USM users with auth and privacy protocols. | [] | no | +| | engine_id_whitelist | Static SNMPv3 engine IDs accepted for v3 Trap PDUs (hex strings). Required when v3 is enabled and `dynamic_engine_id_discovery` is disabled. | [] | no | +| | local_engine_id | Receiver-local SNMPv3 engine ID for v3 INFORM authentication (hex string, 5-32 bytes). When omitted, Netdata generates and persists a stable per-job value. | | no | +| | dynamic_engine_id_discovery | When enabled, the listener discovers v3 Trap sender engine IDs at runtime and hot-registers new (engineID, username) pairs after the retry authenticates and decodes a v3 Trap. Static `engine_id_whitelist` must be empty. | no | no | +| | dynamic_engine_id_max_pairs | Maximum in-memory dynamic (engineID, username) pairs per job. 0 or unset uses the default of 4096. | 4096 | no | +| **Enrichment** | reverse_dns | Optional source-IP PTR annotation emitted as `TRAP_REVERSE_DNS`. Disabled by default and not used for authoritative identity. | enabled: false | no | +| **Security** | [source](#option-security-source) | Source-attribution controls for forwarded traps. UDP peer is authoritative unless the peer matches an explicit trusted relay CIDR. | trusted_relays: [] | no | +| | allowlist | Pre-decode source-IP CIDR allowlist. Empty accepts IPv4 and IPv6 from all sources. | source_cidrs: ["0.0.0.0/0", "::/0"] | no | +| **Rate limiting** | [rate_limit](#option-rate-limiting-rate-limit) | Per-source token-bucket rate limiting. Default off. | | no | +| **Deduplication** | [dedup](#option-deduplication-dedup) | Optional per-job trap deduplication. Disabled by default. | | no | +| **Direct journal** | [journal](#option-direct-journal-journal) | Direct local journal storage for received traps. Enabled by default for explicit jobs. | enabled: true | no | +| **OTLP export** | [otlp](#option-otlp-export-otlp) | Optional backend that exports traps as OTLP/gRPC LogRecords. Disabled by default. | | no | +| **Retention** | [retention](#option-retention-retention) | Per-job direct journal retention and rotation policy. Ignored when `journal.enabled` is `false`. | | no | +| **Overrides** | [overrides](#option-overrides-overrides) | Per-OID category, severity, and label overrides on top of profile defaults. | [] | no | +| **Per-OID metrics** | [metrics](#option-per-oid-metrics-metrics) | Promote selected trap OIDs to dedicated metric charts for finer-grained alerting. | [] | no | +| **Virtual node** | vnode | Associates this trap listener job with a Virtual Node. | | no | + + +##### listen + +- `receive_buffer`: UDP socket receive buffer requested during job creation, in bytes (default 4194304; set 0 to keep the operating system default; maximum 268435456). +Each endpoint has: +- `protocol`: Transport protocol (`udp` only). +- `address`: Local IP address to bind (e.g., `0.0.0.0` for all interfaces). +- `port`: UDP port number (default 162). Port 162 requires `CAP_NET_BIND_SERVICE` or root. + + + +##### versions + +Supported values: `v1`, `v2c`, `v3`. All three can be combined. + + + +##### usm_users + +Each user has: +- `username`: SNMPv3 USM security name (required). +- `engine_id`: Authoritative engine ID in hex (e.g., `80001f8880e5a5c0d6c7b8a9`). Required for static v3 jobs. May be omitted when `dynamic_engine_id_discovery` is enabled. +- `auth_proto`: Authentication protocol (`none`, `md5`, `sha`, `sha224`, `sha256`, `sha384`, `sha512`). +- `auth_key`: Authentication passphrase (use a Netdata secret reference). Required when `auth_proto` is not `none`; minimum 8 characters. +- `priv_proto`: Privacy protocol (`none`, `des`, `aes`, `aes192`, `aes256`, `aes192c`, `aes256c`). +- `priv_key`: Privacy passphrase (use a Netdata secret reference). Required when `priv_proto` is not `none`; minimum 8 characters. + + + +##### source + +- `trusted_relays`: CIDR list of SNMP trap relays/proxies whose `snmpTrapAddress.0` PDU source address may override the UDP peer. Leave empty for direct listeners. + + + +##### rate_limit + +- `enabled`: Enable per-source rate limiting (default `false`). +- `per_source_pps`: Maximum traps per second from a single source IP (default 1000). +- `mode`: Action when exceeded — `drop` (discard trap) or `sample` (allow but count as `rate_limited`). + + + +##### dedup + +- `enabled`: Enable dedup (default `false`). +- `window_sec`: Dedup window in seconds (default 5). +- `cache_max_entries`: Maximum fingerprints kept in memory (default 100000). +- `key_varbinds`: Additional varbind names to include in the dedup fingerprint (default `[]`, fingerprint is source device + trap OID only). + + + +##### journal + +- `enabled`: Write traps to local direct journal files under the configured Netdata log directory (`/var/log/netdata/traps//` by default, or `${NETDATA_LOG_DIR}/traps//` at runtime) and expose the job as a `__logs_sources` option in the embedded `snmp:traps` Function. +- Set `enabled: false` only when another output backend, such as OTLP, is enabled. + + + +##### otlp + +- `enabled`: Enable OTLP/gRPC Logs export. When `true`, traps are exported through OTLP regardless of `journal.enabled`; if direct journal storage is also enabled, both backends receive traps. +- `endpoint`: OTLP/gRPC endpoint. `http://host:port` uses plaintext gRPC; `https://host:port` uses TLS (default `http://127.0.0.1:4317`). Use `https://` for remote collectors when trap contents should be protected in transit. +- `headers`: Optional OTLP metadata headers (values may use Netdata secret references). +- `request_timeout`: Timeout for connection preflight and export calls (default `5s`). +- `flush_interval`: Maximum time to buffer records before export (default `200ms`). +- `batch_size`: Maximum LogRecords per export request (default 512). +- `queue_capacity`: Maximum records buffered per job (default 10000). + + + +##### retention + +- `max_size`: Maximum total bytes across all journal files (default `10GB`). Set `null` to disable size-based eviction. +- `max_duration`: Maximum age of the oldest journal file before deletion (default `null`, age-based eviction disabled). +- `rotation_size`: Maximum size of a single journal file before rotation (default `null` = auto, `max_size/20` clamped 5MB-200MB). +- `rotation_duration`: Maximum age of a single journal file before rotation (default `null`, time-based rotation disabled). Set a duration such as `24h` to enable time-based rotation. + + + +##### overrides + +Each override entry requires an `oid` (numeric OID). Optional fields: `category` (one of the 8 categories), `severity` (one of the 8 severities), `labels` (free-form key-value pairs). + + + +##### metrics + +Each entry requires: +- `oid`: Numeric trap OID to emit as a metric. +- `context`: Metric context name (must start with `snmp.trap.`). +- `dimension_from_varbind` (optional): Symbolic varbind name used as dimension value. Must reference an enum-backed varbind with \<= 64 values, a boolean/truthvalue, or a numeric range with \<= 64 values. + + + +
+ + +#### via UI + +Configure the **snmp_traps** collector from the Netdata web interface: + +1. Go to **Nodes**. +2. Select the node **where you want the snmp_traps data-collection job to run** and click the :gear: (**Configure this node**). That node will run the data collection. +3. The **Collectors → Jobs** view opens by default. +4. In the Search box, type _snmp_traps_ (or scroll the list) to locate the **snmp_traps** collector. +5. Click the **+** next to the **snmp_traps** collector to add a new job. +6. Fill in the job fields, then click **Test** to verify the configuration and **Submit** to save. + - **Test** runs the job with the provided settings and shows whether data can be collected. + - If it fails, an error message appears with details (for example, connection refused, timeout, or command execution errors), so you can adjust and retest. + + +#### via File + +The configuration file name for this integration is `go.d/snmp_traps.conf`. + +The file format is YAML. Generally, the structure is: + +```yaml +update_every: 1 +autodetection_retry: 0 +jobs: + - name: some_name1 + - name: some_name2 +``` +You can edit the configuration file using the [`edit-config`](/docs/netdata-agent/configuration#edit-configuration-files) script from the +Netdata [config directory](/docs/netdata-agent/configuration#locate-your-config-directory). + +```bash +cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata +sudo ./edit-config go.d/snmp_traps.conf +``` + +##### Examples + +###### Basic (SNMPv1/v2c) + +A single job listening on the standard trap port. Accepts any SNMPv1/v2c community. +The allowlist is left open (`0.0.0.0/0` and `::/0`) — restrict it for production. + + +
+Config + +```yaml +jobs: + - name: local + listen: + receive_buffer: 4194304 + endpoints: + - protocol: udp + address: 0.0.0.0 + port: 162 + versions: + - v1 + - v2c + +``` +
+ +###### OTLP-only export + +A job that disables direct journal creation and exports traps only through OTLP. +This job does not appear as a local `__logs_sources` option because no direct journal files are written. + + +
+Config + +```yaml +jobs: + - name: local-otel + listen: + endpoints: + - protocol: udp + address: 0.0.0.0 + port: 162 + journal: + enabled: false + otlp: + enabled: true + endpoint: "http://127.0.0.1:4317" + +``` +
+ +###### SNMPv3 with static USM + +A job accepting v3 traps from a known device. The USM user has a static engine ID, +and the engine ID whitelist is explicitly set. Auth and privacy keys use Netdata secret references. + + +
+Config + +```yaml +jobs: + - name: core-router + listen: + endpoints: + - protocol: udp + address: 0.0.0.0 + port: 162 + versions: + - v3 + usm_users: + - username: trapmon + engine_id: 80001f8880e5a5c0d6c7b8a9 + auth_proto: sha256 + auth_key: "${env:SNMP_V3_AUTH_KEY}" + priv_proto: aes + priv_key: "${env:SNMP_V3_PRIV_KEY}" + engine_id_whitelist: + - 80001f8880e5a5c0d6c7b8a9 + +``` +
+ +###### Dynamic engine ID discovery + +For environments where v3 sender engine IDs are not known in advance. +The listener discovers them at runtime from raw SNMPv3 context and hot-registers +new (engineID, username) pairs after the first successful authentication and decode. +The USM user omits `engine_id`; the whitelist must be empty. + + +
+Config + +```yaml +jobs: + - name: dynamic-v3 + listen: + endpoints: + - protocol: udp + address: 0.0.0.0 + port: 162 + versions: + - v3 + usm_users: + - username: trapmon + auth_proto: sha256 + auth_key: "${env:SNMP_V3_AUTH_KEY}" + priv_proto: aes + priv_key: "${env:SNMP_V3_PRIV_KEY}" + dynamic_engine_id_discovery: true + dynamic_engine_id_max_pairs: 4096 + +``` +
+ +###### With dedup and per-OID metrics + +A job with dedup enabled (window 10 seconds) and two per-OID metric opt-ins. +The first metric counts trap events for OID `1.3.6.1.4.1.9.9.43.2.0.1` under the context +`snmp.trap.cisco_config_changes`. The second breaks down a linkDown trap by the +`ccmHistoryEventTerminalType` varbind dimension. + + +
+Config + +```yaml +jobs: + - name: campus-core + listen: + endpoints: + - protocol: udp + address: 0.0.0.0 + port: 162 + dedup: + enabled: true + window_sec: 10 + metrics: + - oid: 1.3.6.1.4.1.9.9.43.2.0.1 + context: snmp.trap.cisco_config_changes + - oid: 1.3.6.1.4.1.9.9.43.2.0.2 + context: snmp.trap.cisco_config_change_terminal + dimension_from_varbind: ccmHistoryEventTerminalType + +``` +
+ + + +## Alerts + + +The following alerts are available: + +| Alert name | On metric | Description | +|:------------|:----------|:------------| +| [ snmp_trap_emergency_events ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.severity | The SNMP trap listener is receiving emergency-severity traps. | +| [ snmp_trap_alert_events ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.severity | The SNMP trap listener is receiving alert-severity traps that require immediate attention on the sending device. | +| [ snmp_trap_critical_events ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.severity | The SNMP trap listener is receiving critical-severity traps. | +| [ snmp_trap_error_events ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.severity | The SNMP trap listener is receiving error-severity traps at high rate. | +| [ snmp_trap_warning_event_storm ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.severity | The SNMP trap listener is receiving warning-severity traps at storm-level rate. | +| [ snmp_trap_decode_errors ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.errors | The SNMP trap listener has decode errors. | +| [ snmp_trap_template_unresolved ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.errors | The SNMP trap listener received traps whose profile templates referenced missing varbinds or fields. | +| [ snmp_trap_malformed_pdus ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.errors | The SNMP trap listener is receiving structurally invalid trap PDUs. | +| [ snmp_trap_allowlist_drops ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.errors | The SNMP trap listener is dropping traps because the sender IP is outside the configured allowlist. | +| [ snmp_trap_rate_limited ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.errors | The SNMP trap listener is receiving traps above the configured per-source rate limit. | +| [ snmp_trap_auth_failures ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.errors | The SNMP trap listener has authentication failures. | +| [ snmp_trap_usm_failures ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.errors | The SNMP trap listener has USM failures. | +| [ snmp_trap_unknown_engine_id ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.errors | The SNMP trap listener is receiving v3 traps from engine IDs outside the static whitelist, or first-time dynamic engine ID registrations when dynamic discovery is enabled. | +| [ snmp_trap_inform_response_failures ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.errors | The SNMP trap listener failed to send INFORM acknowledgements back to senders. | +| [ snmp_trap_binary_encoded_fields ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.errors | The SNMP trap listener wrote structured fields with binary journal encoding. | +| [ snmp_trap_profile_load_failures ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.errors | The SNMP trap listener failed to load or reload trap profiles. | +| [ snmp_trap_journal_write_failures ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.errors | The SNMP trap listener failed to write traps to the systemd-journal. | +| [ snmp_trap_otlp_export_failures ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.errors | The SNMP trap listener failed to export traps through OTLP. | +| [ snmp_trap_listener_read_failures ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.errors | The SNMP trap listener failed to read UDP packets from a bound socket. | +| [ snmp_trap_high_dedup_suppression ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp_traps.conf) | snmp.trap.dedup_suppressed | The SNMP trap listener is suppressing a high volume of duplicate traps. | + + +## Metrics + +Metrics grouped by *scope*. + +The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels. + +Metrics are grouped per job and scoped by `job_name`. The collector emits four static metric contexts plus optional operator-opted-in per-OID metric contexts. + +**Static contexts:** + +- `snmp.trap.events`: Trap events received, split by category. The `stacked` chart type gives a visual burst profile across categories. +- `snmp.trap.severity`: Trap events received, split by severity. The `stacked` chart type gives a visual burst profile across the closed 8-severity taxonomy (`emerg`, `alert`, `crit`, `err`, `warning`, `notice`, `info`, `debug`). +- `snmp.trap.errors`: Processing errors by type. Stacked chart for quick identification of dominant error categories. +- `snmp.trap.dedup_suppressed`: Per-second rate of traps suppressed by dedup (only emitted when dedup is enabled on the job). + +**Dynamic contexts** (operator opt-in): + +Operators can promote selected trap OIDs to dedicated metric charts via the `metrics` configuration section. +Each entry emits under a `snmp.trap.` context (e.g., `snmp.trap.cisco_config_changes`). +When `dimension_from_varbind` is specified, the chart has one dimension per distinct varbind value. +When omitted, a single `count` dimension is emitted. + +The `dynamic_context_prefixes` entry below covers all operator-created contexts under the `snmp.trap.` prefix. + + +### Per job + +Per-job self-metrics for a SNMP trap listener job. + +Labels: + +| Label | Description | +|:-----------|:----------------| +| job_name | The job name as defined in `go.d/snmp_traps.conf`. | + +Metrics: + +| Metric | Dimensions | Unit | +|:------|:----------|:----| +| snmp.trap.events | state_change, config_change, security, auth, license, mobility, diagnostic, unknown | events/s | +| snmp.trap.severity | emerg, alert, crit, err, warning, notice, info, debug | events/s | +| snmp.trap.errors | unknown_oid, decode_failed, template_unresolved, malformed_pdu, dropped_allowlist, rate_limited, auth_failures, usm_failures, unknown_engine_id, inform_response_failed, binary_encoded, profile_load_failed, journal_write_failed, otlp_export_failed, listener_read_failed | errors/s | +| snmp.trap.dedup_suppressed | suppressed | events/s | + + + +## Troubleshooting + +### Debug Mode + +**Important**: Debug mode is not supported for data collection jobs created via the UI using the Dyncfg feature. + +To troubleshoot issues with the `snmp_traps` collector, run the `go.d.plugin` with the debug option enabled. The output +should give you clues as to why the collector isn't working. + +- Navigate to the `plugins.d` directory, usually at `/usr/libexec/netdata/plugins.d/`. If that's not the case on + your system, open `netdata.conf` and look for the `plugins` setting under `[directories]`. + + ```bash + cd /usr/libexec/netdata/plugins.d/ + ``` + +- Switch to the `netdata` user. + + ```bash + sudo -u netdata -s + ``` + +- Run the `go.d.plugin` to debug the collector: + + ```bash + ./go.d.plugin -d -m snmp_traps + ``` + + To debug a specific job: + + ```bash + ./go.d.plugin -d -m snmp_traps -j jobName + ``` + +### Getting Logs + +If you're encountering problems with the `snmp_traps` collector, follow these steps to retrieve logs and identify potential issues: + +- **Run the command** specific to your system (systemd, non-systemd, or Docker container). +- **Examine the output** for any warnings or error messages that might indicate issues. These messages should provide clues about the root cause of the problem. + +#### System with systemd + +Use the following command to view logs generated since the last Netdata service restart: + +```bash +journalctl _SYSTEMD_INVOCATION_ID="$(systemctl show --value --property=InvocationID netdata)" --namespace=netdata --grep snmp_traps +``` + +#### System without systemd + +Locate the collector log file, typically at `/var/log/netdata/collector.log`, and use `grep` to filter for collector's name: + +```bash +grep snmp_traps /var/log/netdata/collector.log +``` + +**Note**: This method shows logs from all restarts. Focus on the **latest entries** for troubleshooting current issues. + +#### Docker Container + +If your Netdata runs in a Docker container named "netdata" (replace if different), use this command: + +```bash +docker logs netdata 2>&1 | grep snmp_traps +``` + +### Port binding fails (permission denied) + +Standard SNMP trap port (UDP/162) requires `CAP_NET_BIND_SERVICE`. + +Netdata packages grant this capability to `go.d.plugin` automatically. If running from source +or in a custom deployment, grant it manually: +```bash +sudo setcap CAP_NET_BIND_SERVICE=eip /usr/libexec/netdata/plugins.d/go.d.plugin +``` +Alternatively, use a port >= 1024 (e.g., `1062`) and redirect traffic through a firewall. + + +### SNMPv3 traps not decoded (unknown_engine_id) + +In static mode, the sender engine ID is not in `engine_id_whitelist`. Add the sender engine ID +to the whitelist, or switch to `dynamic_engine_id_discovery: true` with an empty whitelist. + +In dynamic mode, the first accepted `(engineID, username)` pair increments this once as +operator visibility. Repeated or rejected increments usually indicate cap exhaustion, +invalid sender state, or an unauthorized sender. + + +### USM authentication failures + +Check that the USM user's `auth_proto`, `auth_key`, `priv_proto`, and `priv_key` match the +sender device's configuration. Verify engine ID matches. Use Netdata secret references for keys. + + +### journal retention eating disk space + +The default direct journal retention uses size-based eviction (`max_size: 10GB`) with no time-based age limit. +For high-trap environments, reduce `max_size` or enable `max_duration` to age-out old entries. +OTLP-only jobs can set `journal.enabled: false`; they do not create local journal files and do not appear as sources in the local logs Function. diff --git a/docs/Collecting Metrics/Collectors/Networking/SONiC NOS.mdx b/docs/Collecting Metrics/Collectors/Networking/SONiC NOS.mdx index 1124c0df85..f621e70101 100644 --- a/docs/Collecting Metrics/Collectors/Networking/SONiC NOS.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/SONiC NOS.mdx @@ -6,7 +6,7 @@ toc_max_heading_level: "6" toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" -sidebar_position: "570" +sidebar_position: "580" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/sonic-nos" slug: "/collecting-metrics/collectors/networking/sonic-nos" --- @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/Socket statistics.mdx b/docs/Collecting Metrics/Collectors/Networking/Socket statistics.mdx index f2615075b6..191e0a902d 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Socket statistics.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Socket statistics.mdx @@ -7,7 +7,7 @@ toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" keywords: [sockets] message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" -sidebar_position: "540" +sidebar_position: "550" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/socket-statistics" slug: "/collecting-metrics/collectors/networking/socket-statistics" --- diff --git a/docs/Collecting Metrics/Collectors/Networking/SoftEther VPN Server.mdx b/docs/Collecting Metrics/Collectors/Networking/SoftEther VPN Server.mdx index 96be357ed9..8862761489 100644 --- a/docs/Collecting Metrics/Collectors/Networking/SoftEther VPN Server.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/SoftEther VPN Server.mdx @@ -6,7 +6,7 @@ toc_max_heading_level: "6" toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" -sidebar_position: "550" +sidebar_position: "560" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/softether-vpn-server" slug: "/collecting-metrics/collectors/networking/softether-vpn-server" --- @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/Softnet Statistics.mdx b/docs/Collecting Metrics/Collectors/Networking/Softnet Statistics.mdx index 0f874e1a9f..cde3a073fe 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Softnet Statistics.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Softnet Statistics.mdx @@ -7,7 +7,7 @@ toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" keywords: [softnet] message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" -sidebar_position: "560" +sidebar_position: "570" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/softnet-statistics" slug: "/collecting-metrics/collectors/networking/softnet-statistics" --- diff --git a/docs/Collecting Metrics/Collectors/Networking/Starlink SpaceX.mdx b/docs/Collecting Metrics/Collectors/Networking/Starlink SpaceX.mdx index 8d93e76f6c..e699cb3f78 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Starlink SpaceX.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Starlink SpaceX.mdx @@ -6,7 +6,7 @@ toc_max_heading_level: "6" toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" -sidebar_position: "580" +sidebar_position: "590" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/starlink-spacex" slug: "/collecting-metrics/collectors/networking/starlink-spacex" --- @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/Synproxy.mdx b/docs/Collecting Metrics/Collectors/Networking/Synproxy.mdx index c35fcb9a5b..83f84adafa 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Synproxy.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Synproxy.mdx @@ -7,7 +7,7 @@ toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" keywords: [synproxy] message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" -sidebar_position: "600" +sidebar_position: "610" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/synproxy" slug: "/collecting-metrics/collectors/networking/synproxy" --- diff --git a/docs/Collecting Metrics/Collectors/Networking/Timex.mdx b/docs/Collecting Metrics/Collectors/Networking/Timex.mdx index f5a776e515..52f7ebe6e2 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Timex.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Timex.mdx @@ -6,7 +6,7 @@ toc_max_heading_level: "6" toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" -sidebar_position: "620" +sidebar_position: "630" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/timex" slug: "/collecting-metrics/collectors/networking/timex" --- diff --git a/docs/Collecting Metrics/Collectors/Networking/Tor.mdx b/docs/Collecting Metrics/Collectors/Networking/Tor.mdx index 50aea5235b..6a44ed9f5c 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Tor.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Tor.mdx @@ -7,7 +7,7 @@ toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" keywords: [tor, traffic, vpn] message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" -sidebar_position: "630" +sidebar_position: "640" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/tor" slug: "/collecting-metrics/collectors/networking/tor" --- diff --git a/docs/Collecting Metrics/Collectors/Networking/Ubiquiti UFiber OLT.mdx b/docs/Collecting Metrics/Collectors/Networking/Ubiquiti UFiber OLT.mdx index 3c1c5da513..f547cf1d91 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Ubiquiti UFiber OLT.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Ubiquiti UFiber OLT.mdx @@ -6,7 +6,7 @@ toc_max_heading_level: "6" toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" -sidebar_position: "640" +sidebar_position: "650" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/ubiquiti-ufiber-olt" slug: "/collecting-metrics/collectors/networking/ubiquiti-ufiber-olt" --- @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/Unbound.mdx b/docs/Collecting Metrics/Collectors/Networking/Unbound.mdx index 0ece2b79d8..8e36cd9c82 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Unbound.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Unbound.mdx @@ -7,7 +7,7 @@ toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" keywords: [unbound, dns] message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" -sidebar_position: "650" +sidebar_position: "660" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/unbound" slug: "/collecting-metrics/collectors/networking/unbound" --- diff --git a/docs/Collecting Metrics/Collectors/Networking/Windows Network Protocols.mdx b/docs/Collecting Metrics/Collectors/Networking/Windows Network Protocols.mdx index ec5748a280..d7f3295d24 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Windows Network Protocols.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Windows Network Protocols.mdx @@ -7,7 +7,7 @@ toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" keywords: [network, tcp, udp, windows, perflib, segments, datagrams] message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" -sidebar_position: "660" +sidebar_position: "670" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/windows-network-protocols" slug: "/collecting-metrics/collectors/networking/windows-network-protocols" --- diff --git a/docs/Collecting Metrics/Collectors/Networking/WireGuard.mdx b/docs/Collecting Metrics/Collectors/Networking/WireGuard.mdx index 57621d9bd3..4112311726 100644 --- a/docs/Collecting Metrics/Collectors/Networking/WireGuard.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/WireGuard.mdx @@ -7,7 +7,7 @@ toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" keywords: [wireguard, vpn, security] message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" -sidebar_position: "670" +sidebar_position: "680" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/wireguard" slug: "/collecting-metrics/collectors/networking/wireguard" --- diff --git a/docs/Collecting Metrics/Collectors/Networking/Wireless network interfaces.mdx b/docs/Collecting Metrics/Collectors/Networking/Wireless network interfaces.mdx index 823262375e..e3e35015a1 100644 --- a/docs/Collecting Metrics/Collectors/Networking/Wireless network interfaces.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/Wireless network interfaces.mdx @@ -7,7 +7,7 @@ toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" keywords: [wireless devices] message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" -sidebar_position: "680" +sidebar_position: "690" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/wireless-network-interfaces" slug: "/collecting-metrics/collectors/networking/wireless-network-interfaces" --- diff --git a/docs/Collecting Metrics/Collectors/Networking/strongSwan.mdx b/docs/Collecting Metrics/Collectors/Networking/strongSwan.mdx index aa7f7a1024..772664afcc 100644 --- a/docs/Collecting Metrics/Collectors/Networking/strongSwan.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/strongSwan.mdx @@ -6,7 +6,7 @@ toc_max_heading_level: "6" toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" -sidebar_position: "590" +sidebar_position: "600" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/strongswan" slug: "/collecting-metrics/collectors/networking/strongswan" --- @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Networking/tc QoS classes.mdx b/docs/Collecting Metrics/Collectors/Networking/tc QoS classes.mdx index 717fe37a6d..7e47146031 100644 --- a/docs/Collecting Metrics/Collectors/Networking/tc QoS classes.mdx +++ b/docs/Collecting Metrics/Collectors/Networking/tc QoS classes.mdx @@ -6,7 +6,7 @@ toc_max_heading_level: "6" toc_collapsible: "true" learn_rel_path: "Collecting Metrics/Collectors/Networking" message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE" -sidebar_position: "610" +sidebar_position: "620" learn_link: "https://learn.netdata.cloud/docs/collecting-metrics/collectors/networking/tc-qos-classes" slug: "/collecting-metrics/collectors/networking/tc-qos-classes" --- diff --git a/docs/Collecting Metrics/Collectors/Operating Systems/Applications.mdx b/docs/Collecting Metrics/Collectors/Operating Systems/Applications.mdx index dc8f3658b7..f52df28e60 100644 --- a/docs/Collecting Metrics/Collectors/Operating Systems/Applications.mdx +++ b/docs/Collecting Metrics/Collectors/Operating Systems/Applications.mdx @@ -110,6 +110,10 @@ Metrics: | app.mem_private_usage | mem | MiB | | app.vmem_usage | vmem | MiB | | app.mem_page_faults | minor, major | pgfaults/s | +| app.ebpf_cachestat_hit_ratio | ratio | % | +| app.ebpf_cachestat_dirty_pages | pages | page/s | +| app.ebpf_cachestat_access | hits | hits/s | +| app.ebpf_cachestat_misses | misses | misses/s | | app.swap_usage | swap | MiB | | app.disk_physical_io | reads, writes | KiB/s | | app.disk_logical_io | reads, writes | KiB/s | diff --git a/docs/Collecting Metrics/Collectors/Operating Systems/FreeBSD RCTL-RACCT.mdx b/docs/Collecting Metrics/Collectors/Operating Systems/FreeBSD RCTL-RACCT.mdx index 3c53a7eb40..338f211eb0 100644 --- a/docs/Collecting Metrics/Collectors/Operating Systems/FreeBSD RCTL-RACCT.mdx +++ b/docs/Collecting Metrics/Collectors/Operating Systems/FreeBSD RCTL-RACCT.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Operating Systems/OpenRC.mdx b/docs/Collecting Metrics/Collectors/Operating Systems/OpenRC.mdx index f70372d078..88436cacaf 100644 --- a/docs/Collecting Metrics/Collectors/Operating Systems/OpenRC.mdx +++ b/docs/Collecting Metrics/Collectors/Operating Systems/OpenRC.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Operating Systems/Systemd Services.mdx b/docs/Collecting Metrics/Collectors/Operating Systems/Systemd Services.mdx index da66bff42e..d8d9d7855b 100644 --- a/docs/Collecting Metrics/Collectors/Operating Systems/Systemd Services.mdx +++ b/docs/Collecting Metrics/Collectors/Operating Systems/Systemd Services.mdx @@ -26,7 +26,7 @@ Module: /sys/fs/cgroup ## Overview -Monitor containers and virtual machines resource utilization — CPU, memory, disk I/O, and network — via Linux cgroups. +Monitor containers and virtual machines resource utilization — CPU, memory, disk I/O, network, and page cache activity — via Linux cgroups. @@ -118,5 +118,9 @@ Metrics: | systemd.service.disk.queued_iops | read, write | operations/s | | systemd.service.disk.merged_iops | read, write | operations/s | | systemd.service.pids.current | pids | pids | +| systemd.service.cachestat_ratio | ratio | % | +| systemd.service.cachestat_dirties | dirty | page/s | +| systemd.service.cachestat_hits | hit | hits/s | +| systemd.service.cachestat_misses | miss | misses/s | diff --git a/docs/Collecting Metrics/Collectors/Operating Systems/eBPF Cachestat.mdx b/docs/Collecting Metrics/Collectors/Operating Systems/eBPF Cachestat.mdx index 232f23fbe2..a103273213 100644 --- a/docs/Collecting Metrics/Collectors/Operating Systems/eBPF Cachestat.mdx +++ b/docs/Collecting Metrics/Collectors/Operating Systems/eBPF Cachestat.mdx @@ -149,40 +149,6 @@ The scope defines the instance that the metric belongs to. An instance is unique -### Per eBPF Cachestat instance - -These metrics show total number of calls to functions inside kernel. - -This scope has no labels. - -Metrics: - -| Metric | Dimensions | Unit | -|:------|:----------|:----| -| mem.cachestat_ratio | ratio | % | -| mem.cachestat_dirties | dirty | page/s | -| mem.cachestat_hits | hit | hits/s | -| mem.cachestat_misses | miss | misses/s | - -### Per apps - -These Metrics show grouped information per apps group. - -Labels: - -| Label | Description | -|:-----------|:----------------| -| app_group | The name of the group defined in the configuration. | - -Metrics: - -| Metric | Dimensions | Unit | -|:------|:----------|:----| -| app.ebpf_cachestat_hit_ratio | ratio | % | -| app.ebpf_cachestat_dirty_pages | pages | page/s | -| app.ebpf_cachestat_access | hits | hits/s | -| app.ebpf_cachestat_misses | misses | misses/s | - ### Per cgroup diff --git a/docs/Collecting Metrics/Collectors/Storage and Filesystems/Dell PowerStore.mdx b/docs/Collecting Metrics/Collectors/Storage and Filesystems/Dell PowerStore.mdx index d9d4f6c261..13a3abbf96 100644 --- a/docs/Collecting Metrics/Collectors/Storage and Filesystems/Dell PowerStore.mdx +++ b/docs/Collecting Metrics/Collectors/Storage and Filesystems/Dell PowerStore.mdx @@ -262,6 +262,35 @@ jobs: ``` +###### With virtual node + +Associate the PowerStore job with a [Virtual Node](https://learn.netdata.cloud/docs/netdata-agent/configuration/organize-systems-metrics-and-alerts#virtual-nodes) so its metrics appear under a separate host in Netdata Cloud. + +First, define the vnode in `/etc/netdata/vnodes/vnodes.conf`: + +```yaml +- hostname: my_powerstore + guid: +``` + +Then reference that hostname in the collector job's `vnode` field. The `vnode` value must match the `hostname` in vnodes.conf exactly (case-sensitive). + + +
+Config + +```yaml +jobs: + - name: ps-san + url: https://10.0.0.1 + username: monitor + password: monitor123 + tls_skip_verify: yes + vnode: my_powerstore + +``` +
+ ## Alerts @@ -539,4 +568,15 @@ automatically re-authenticates on 403, but if you see persistent 403 errors: 3. Ensure no IP-based access controls are blocking the Netdata Agent host. +### Virtual node not found + +If the collector reports that a vnode does not exist: + +1. Verify the vnode hostname is defined in `/etc/netdata/vnodes/vnodes.conf`. +2. Ensure the `vnode` field in the collector job exactly matches the `hostname` + in vnodes.conf — the match is case-sensitive. +3. Confirm the vnodes.conf file uses valid YAML format with correct `guid` values + (a valid UUID string). + + diff --git a/docs/Collecting Metrics/Collectors/Storage and Filesystems/EOS.mdx b/docs/Collecting Metrics/Collectors/Storage and Filesystems/EOS.mdx index 245f1ea544..d297f64564 100644 --- a/docs/Collecting Metrics/Collectors/Storage and Filesystems/EOS.mdx +++ b/docs/Collecting Metrics/Collectors/Storage and Filesystems/EOS.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Storage and Filesystems/FreeBSD NFS.mdx b/docs/Collecting Metrics/Collectors/Storage and Filesystems/FreeBSD NFS.mdx index 56c726eb90..0adc8a9523 100644 --- a/docs/Collecting Metrics/Collectors/Storage and Filesystems/FreeBSD NFS.mdx +++ b/docs/Collecting Metrics/Collectors/Storage and Filesystems/FreeBSD NFS.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Storage and Filesystems/Generic storage enclosure tool.mdx b/docs/Collecting Metrics/Collectors/Storage and Filesystems/Generic storage enclosure tool.mdx index 280ddbe705..d17cd63b6b 100644 --- a/docs/Collecting Metrics/Collectors/Storage and Filesystems/Generic storage enclosure tool.mdx +++ b/docs/Collecting Metrics/Collectors/Storage and Filesystems/Generic storage enclosure tool.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Storage and Filesystems/IBM Spectrum Virtualize.mdx b/docs/Collecting Metrics/Collectors/Storage and Filesystems/IBM Spectrum Virtualize.mdx index ff80656bc4..2690afb77c 100644 --- a/docs/Collecting Metrics/Collectors/Storage and Filesystems/IBM Spectrum Virtualize.mdx +++ b/docs/Collecting Metrics/Collectors/Storage and Filesystems/IBM Spectrum Virtualize.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Storage and Filesystems/IBM Spectrum.mdx b/docs/Collecting Metrics/Collectors/Storage and Filesystems/IBM Spectrum.mdx index 95779bb6d1..dfd768a016 100644 --- a/docs/Collecting Metrics/Collectors/Storage and Filesystems/IBM Spectrum.mdx +++ b/docs/Collecting Metrics/Collectors/Storage and Filesystems/IBM Spectrum.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Storage and Filesystems/Lustre metadata.mdx b/docs/Collecting Metrics/Collectors/Storage and Filesystems/Lustre metadata.mdx index 074e7339c6..97b9ac1ff6 100644 --- a/docs/Collecting Metrics/Collectors/Storage and Filesystems/Lustre metadata.mdx +++ b/docs/Collecting Metrics/Collectors/Storage and Filesystems/Lustre metadata.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Storage and Filesystems/MogileFS.mdx b/docs/Collecting Metrics/Collectors/Storage and Filesystems/MogileFS.mdx index 0a95b1acfb..0506e9b92d 100644 --- a/docs/Collecting Metrics/Collectors/Storage and Filesystems/MogileFS.mdx +++ b/docs/Collecting Metrics/Collectors/Storage and Filesystems/MogileFS.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Storage and Filesystems/NetApp Solidfire.mdx b/docs/Collecting Metrics/Collectors/Storage and Filesystems/NetApp Solidfire.mdx index bdb5fc82de..ce113ef1ad 100644 --- a/docs/Collecting Metrics/Collectors/Storage and Filesystems/NetApp Solidfire.mdx +++ b/docs/Collecting Metrics/Collectors/Storage and Filesystems/NetApp Solidfire.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Storage and Filesystems/Netapp ONTAP API.mdx b/docs/Collecting Metrics/Collectors/Storage and Filesystems/Netapp ONTAP API.mdx index c217e37dc5..03fae0e2fb 100644 --- a/docs/Collecting Metrics/Collectors/Storage and Filesystems/Netapp ONTAP API.mdx +++ b/docs/Collecting Metrics/Collectors/Storage and Filesystems/Netapp ONTAP API.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Storage and Filesystems/Storidge.mdx b/docs/Collecting Metrics/Collectors/Storage and Filesystems/Storidge.mdx index cf62f3189f..9764888822 100644 --- a/docs/Collecting Metrics/Collectors/Storage and Filesystems/Storidge.mdx +++ b/docs/Collecting Metrics/Collectors/Storage and Filesystems/Storidge.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Storage and Filesystems/Synology ActiveBackup.mdx b/docs/Collecting Metrics/Collectors/Storage and Filesystems/Synology ActiveBackup.mdx index fd7cb37381..eedb662923 100644 --- a/docs/Collecting Metrics/Collectors/Storage and Filesystems/Synology ActiveBackup.mdx +++ b/docs/Collecting Metrics/Collectors/Storage and Filesystems/Synology ActiveBackup.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Synthetic Testing/Blackbox.mdx b/docs/Collecting Metrics/Collectors/Synthetic Testing/Blackbox.mdx index 446da4207f..c1eac88cd0 100644 --- a/docs/Collecting Metrics/Collectors/Synthetic Testing/Blackbox.mdx +++ b/docs/Collecting Metrics/Collectors/Synthetic Testing/Blackbox.mdx @@ -99,7 +99,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -156,6 +156,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -287,6 +317,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Synthetic Testing/MQTT Blackbox.mdx b/docs/Collecting Metrics/Collectors/Synthetic Testing/MQTT Blackbox.mdx index a208a9d37d..c668f2fb79 100644 --- a/docs/Collecting Metrics/Collectors/Synthetic Testing/MQTT Blackbox.mdx +++ b/docs/Collecting Metrics/Collectors/Synthetic Testing/MQTT Blackbox.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Synthetic Testing/Site 24x7.mdx b/docs/Collecting Metrics/Collectors/Synthetic Testing/Site 24x7.mdx index fb2561e01a..22e957b2e6 100644 --- a/docs/Collecting Metrics/Collectors/Synthetic Testing/Site 24x7.mdx +++ b/docs/Collecting Metrics/Collectors/Synthetic Testing/Site 24x7.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Synthetic Testing/Uptimerobot.mdx b/docs/Collecting Metrics/Collectors/Synthetic Testing/Uptimerobot.mdx index 14d16f4b00..da0a44986a 100644 --- a/docs/Collecting Metrics/Collectors/Synthetic Testing/Uptimerobot.mdx +++ b/docs/Collecting Metrics/Collectors/Synthetic Testing/Uptimerobot.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Web Servers and Proxies/APIcast.mdx b/docs/Collecting Metrics/Collectors/Web Servers and Proxies/APIcast.mdx index 0dec179583..7b9c7496bf 100644 --- a/docs/Collecting Metrics/Collectors/Web Servers and Proxies/APIcast.mdx +++ b/docs/Collecting Metrics/Collectors/Web Servers and Proxies/APIcast.mdx @@ -98,7 +98,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -155,6 +155,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -286,6 +316,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Collectors/Web Servers and Proxies/Gobetween.mdx b/docs/Collecting Metrics/Collectors/Web Servers and Proxies/Gobetween.mdx index 6eb8d33709..f0b418e7fe 100644 --- a/docs/Collecting Metrics/Collectors/Web Servers and Proxies/Gobetween.mdx +++ b/docs/Collecting Metrics/Collectors/Web Servers and Proxies/Gobetween.mdx @@ -94,7 +94,7 @@ The following options can be defined globally: update_every, autodetection_retry | **Limits** | max_time_series | Global time series limit. If an endpoint returns more time series than this, the data is not processed. | 2000 | no | | | max_time_series_per_metric | Per-metric time series limit. Metrics with more time series than this are skipped. | 200 | no | | **Customization** | [fallback_type](#option-customization-fallback-type) | Fallback type rules for untyped metrics. | | no | -| | label_prefix | Optional prefix added to all labels of all charts. Labels will be formatted as `prefix_name`. | | no | +| | [relabeling](#option-customization-relabeling) | Prometheus-compatible metric relabeling, applied before charts are built. | | no | | **HTTP Auth** | username | Username for Basic HTTP authentication. | | no | | | password | Password for Basic HTTP authentication. | | no | | | bearer_token_file | Path to a file containing a bearer token (used for `Authorization: Bearer`). | | no | @@ -151,6 +151,36 @@ fallback_type: ``` + +##### relabeling + +A list of relabeling blocks. Each block applies a list of Prometheus +`metric_relabel_configs` rules to the metrics whose name matches `match`. See the +[relabeling reference](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/collector/prometheus/relabel/README.md) +for the full action set and more examples. + +- `match`: Netdata simple patterns matched against the full metric name — including + any `_bucket`/`_sum`/`_count` suffix, so prefer globs like `app_lat*` over an exact + `app_lat` (space-separated; `*` matches any sequence, `?` any character, a leading + `!` negates). Use `*` to target every metric. Required. +- `metric_relabel_configs`: Prometheus relabel rules (`source_labels`, `separator`, + `regex`, `modulus`, `target_label`, `replacement`, `action`), applied in order to + the scraped samples before charts are built. + +Relabeling that would corrupt a histogram or summary — splitting it, dropping a +component, mutating the `le`/`quantile` label, or merging two families — is rejected. + +```yaml +relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' +``` + + @@ -282,6 +312,55 @@ jobs: ``` +###### Metric relabeling + +Derive a `code_class` label (2xx, 4xx, ...) on metrics named `http_*`. + +
+Config + +```yaml +jobs: + - name: local + url: http://127.0.0.1:9090/metrics + relabeling: + - match: 'http_*' + metric_relabel_configs: + - source_labels: [code] + regex: '(\d)\d\d' + target_label: code_class + replacement: '${1}xx' + +``` +
+ +###### Rename labels that collide with Netdata's reserved labels + +When these metrics are re-exported in Prometheus format, Netdata adds its own `instance`, +`family`, `chart`, and `dimension` labels. If the scraped endpoint already uses one of those +names, the re-export emits a duplicate label and a downstream Prometheus rejects the scrape. +Rename the colliding labels to avoid it (the use case the former `label_prefix` option served). + + +
+Config + +```yaml +jobs: + - name: coredns + url: http://127.0.0.1:9153/metrics + relabeling: + - match: '*' + metric_relabel_configs: + - regex: '(instance|family)' + action: labelmap + replacement: 'coredns_$1' + - regex: '(instance|family)' + action: labeldrop + +``` +
+ ## Alerts diff --git a/docs/Collecting Metrics/Service Discovery/SNMP.mdx b/docs/Collecting Metrics/Service Discovery/SNMP.mdx index f00bd12456..2d05c621a5 100644 --- a/docs/Collecting Metrics/Service Discovery/SNMP.mdx +++ b/docs/Collecting Metrics/Service Discovery/SNMP.mdx @@ -272,7 +272,7 @@ Available inside both `match` expressions and `config_template` bodies. All vari | `.SysInfo.Contact` | string | Value of `sysContact.0`. May be empty. | | `.SysInfo.Name` | string | Value of `sysName.0` (typically the device hostname or FQDN). Defaults to the literal string `unknown` when the device does not return one. | | `.SysInfo.Location` | string | Value of `sysLocation.0`. May be empty. | -| `.SysInfo.Organization` | string | Vendor or organization parsed from `sysObjectID` against the embedded enterprise-numbers table. Defaults to `Unknown` when the OID is not in the table. | +| `.SysInfo.Organization` | string | Vendor or organization parsed from `sysObjectID` against the bundled enterprise-numbers table. Defaults to `Unknown` when the OID is not in the table. | | `.SysInfo.Vendor` | string | Vendor name inferred from `sysObjectID` and `sysDescr` via the bundled overrides. Empty when no override matches. | | `.SysInfo.Category` | string | Device category (e.g. `router`, `switch`, `printer`). Sourced from the bundled SNMP overrides; empty when no override matches the device. The set of category values is determined by the overrides, not a closed enum. | | `.SysInfo.Model` | string | Device model inferred from `sysObjectID` and `sysDescr` via the bundled overrides. Empty when no override matches. | diff --git a/docs/Netdata Agent/Configuration/Daemon.mdx b/docs/Netdata Agent/Configuration/Daemon.mdx index bc8acf2f0c..0d3da1ae7b 100644 --- a/docs/Netdata Agent/Configuration/Daemon.mdx +++ b/docs/Netdata Agent/Configuration/Daemon.mdx @@ -228,6 +228,7 @@ Specific Alerts are configured in per-collector config files under the `health.d | in memory max Health log entries | 1000 | Size of the Alert history held in RAM | | script to execute on alarm | `/usr/libexec/netdata/plugins.d/alarm-notify.sh` | The script that sends Alert notifications. Note that in versions before 1.16, the plugins.d directory may be installed in a different location in certain OSs (e.g. under `/usr/lib/netdata`). | | run at least every | `10s` | Controls how often all Alert conditions should be evaluated. | +| notification execution timeout | `2m` | How long a notification command (e.g. `alarm-notify.sh`) may run before it is killed. Protects Alert evaluation from hung notification processes. Set to `0` to wait forever. | | postpone alarms during hibernation for | `1m` | Prevents false Alerts. May need to be increased if you get Alerts during hibernation. | | Health log retention | `5d` | Specifies the history of Alert events (in seconds) kept in the Agent's sqlite database. | | enabled alarms | * | Defines which Alerts to load from both user and stock directories. This is a [simple pattern](/docs/developer-and-contributor-corner/libnetdata/simple-patterns) list of Alert or template names. Can be used to disable specific Alerts. For example, `enabled alarms = !oom_kill *` will load all Alerts except `oom_kill`. | diff --git a/docs/Netdata Agent/Configuration/Securing Agents/Configure Netdata for cybersecurity platforms.mdx b/docs/Netdata Agent/Configuration/Securing Agents/Configure Netdata for cybersecurity platforms.mdx index 01f81d185e..4a30a1d74a 100644 --- a/docs/Netdata Agent/Configuration/Securing Agents/Configure Netdata for cybersecurity platforms.mdx +++ b/docs/Netdata Agent/Configuration/Securing Agents/Configure Netdata for cybersecurity platforms.mdx @@ -30,6 +30,42 @@ If you are not sure which model to use, start with the smallest exposed surface: 2. Use **access through a security platform** if you must publish the local dashboard to users. 3. Use **private management network access** only when you already have a trusted admin network. +## Required endpoints and ports + +For firewall and proxy allowlisting, your Netdata Agents need the following network access: + +| Direction | Port | Protocol | Purpose | +|-----------|-----------|-----------|--------------------------------------------------------| +| Inbound | 19999/TCP | TCP | Local dashboard access and streaming from Child Agents | +| Outbound | 19999/TCP | TCP | Streaming to a Parent Agent (Child Agents only) | +| Outbound | 443/TCP | WSS/HTTPS | Agent-Cloud Link (ACLK) and node claiming | + +:::note + +Port `19999` is the default, configurable via `[web] port` in `netdata.conf`, and is multiplexed: the same port handles both dashboard HTTP requests and the Netdata streaming protocol (a custom binary protocol over TCP). The server auto-detects which protocol the client is using based on the initial handshake. From a firewall perspective, both are simply TCP on port `19999`. + +You can disable inbound access on port `19999` by setting `mode = none` in `netdata.conf` when using Cloud-only access. This also disables inbound streaming. See [Configure Cloud-only access](#configure-cloud-only-access) for details. + +::: + +### Outbound domain allowlist + +Allow the following Netdata Cloud domains through your firewall or proxy: + +| Domain | Purpose | +|----------------------|---------------------------| +| `app.netdata.cloud` | Netdata Cloud application | +| `api.netdata.cloud` | Netdata Cloud API | +| `mqtt.netdata.cloud` | Agent-Cloud Link MQTT | + +:::important + +Prefer **domain-based allowlisting** over IP-based rules. IP addresses can change without notice and vary based on your geographic location due to CDN-edge servers. + +::: + +For broader firewall design principles and recommended network architecture, see [Network rules your cybersecurity platform should enforce](#network-rules-your-cybersecurity-platform-should-enforce) below. + ## Configure Cloud-only access Use this pattern when your security platform mainly controls outbound traffic and users access dashboards via Netdata Cloud instead of connecting directly to port `19999`. diff --git a/docs/Netdata Cloud/Node States and Transitions.mdx b/docs/Netdata Cloud/Node States and Transitions.mdx index d7862c20f4..4e6c4f80d4 100644 --- a/docs/Netdata Cloud/Node States and Transitions.mdx +++ b/docs/Netdata Cloud/Node States and Transitions.mdx @@ -278,6 +278,17 @@ journalctl -u netdata MESSAGE_ID=6e2e3839-0676-4896-8b64-6045dbf28d66 netdatacli remove-stale-node ``` +### No alerts received when node went offline + +**Cause:** The `streaming_disconnected` and `streaming_never_connected` alerts are configured with `to: silent` by default. They trigger on the Parent dashboard but do not send notifications unless you override the delivery setting. + +**Check:** +1. Is the node marked as **permanent**? Ephemeral nodes are excluded from these alerts. Check `netdata.conf` for `is ephemeral node = yes`. +2. On the Parent dashboard, can you see the alert raised? If the alert is visible but no notification arrived, the `to: silent` default is in effect. +3. Has a Space administrator [enabled Alert notifications](/docs/alerts-&-notifications/notifications/centralized-cloud-notifications/manage-notification-methods#manage-space-notification-settings) for your Space? + +**Solution:** See [Enabling Notifications for Streaming Alerts](/docs/netdata-parents/node-types-and-lifecycle-reference#enabling-notifications-for-streaming-alerts) for step-by-step instructions covering alert override and Cloud notification setup. + ### Node reappears after deletion **Cause:** Agent is still running and configured to reconnect. diff --git a/docs/Netdata Parents/Node Types and Lifecycle Reference.mdx b/docs/Netdata Parents/Node Types and Lifecycle Reference.mdx index bb4c541a0b..25f5154a28 100644 --- a/docs/Netdata Parents/Node Types and Lifecycle Reference.mdx +++ b/docs/Netdata Parents/Node Types and Lifecycle Reference.mdx @@ -54,6 +54,72 @@ Netdata v2.3.0 introduces two alerts specific to permanent nodes: | `streaming_never_connected` | A permanent node has never connected to a Parent. | | `streaming_disconnected` | A previously connected permanent node has disconnected. | +:::important + +Both alerts are configured with `to: silent` by default. They trigger and appear on the Parent dashboard but **do not send notifications** unless you explicitly enable them. They also apply only to **permanent nodes** — ephemeral nodes are excluded. + +::: + +### Enabling Notifications for Streaming Alerts + +1. **Override each alert to send notifications.** Choose one method: + + **Via Netdata Cloud (recommended):** Use the [Alerts Configuration Manager](/docs/alerts-&-notifications/creating-alerts-with-the-alerts-configuration-manager) to edit `streaming_disconnected` and `streaming_never_connected` on the Parent node. The UI creates a dynamic configuration that takes precedence over the stock template. See [Alert Configuration Ordering](/docs/alerts-&-notifications/alert-configuration-ordering) for details. Repeat for both alerts. + + **Via config file:** On the Parent node, create or edit `/etc/netdata/health.d/streaming.conf`. An override must be a complete alert definition (see [Overriding Stock Alerts](/docs/alerts-&-notifications/overriding-stock-alerts)); change `to: silent` to a role. `sysadmin` is the convention used by the stock alerts; any string is accepted: + + ```yaml + template: streaming_disconnected + on: netdata.streaming_inbound + class: Availability + type: Streaming + component: Streaming + chart labels: type=permanent + calc: ${stale disconnected} + units: nodes + every: 10s + warn: $netdata.uptime.uptime > 30 * 60 AND $this > 0 + delay: up 5m down 5m multiplier 1.5 max 30m + summary: Permanent streaming nodes disconnected + info: Permanent child nodes disconnected from this parent. \ + If nodes are expected to disconnect, mark them as ephemeral, by editing their netdata.conf \ + and setting: [global].is ephemeral node = yes + to: sysadmin + ``` + + Repeat for `streaming_never_connected` — note that `template`, `calc`, `summary`, and `info` all differ: + + ```yaml + template: streaming_never_connected + on: netdata.streaming_inbound + class: Availability + type: Streaming + component: Streaming + chart labels: type=permanent + calc: ${stale archived} + units: nodes + every: 10s + warn: $netdata.uptime.uptime > 30 * 60 AND $this > 0 + delay: up 5m down 5m multiplier 1.5 max 30m + summary: Permanent streaming nodes never connected + info: Permanent child nodes never connected to this parent. \ + If these nodes should actually be ephemeral, run: \ + netdatacli mark-stale-nodes-ephemeral ALL_NODES + to: sysadmin + ``` + + After saving the file, reload health on the Parent: + + ```bash + sudo netdatacli reload-health + ``` + + Make sure the role you choose has recipients wired up in your notification method(s) — see [Centralized Cloud Notifications](/docs/alerts-&-notifications/notifications/centralized-cloud-notifications/centralized-cloud-notifications-reference) for Cloud setup. + +2. **Enable Cloud notifications.** An administrator must [enable Alert notifications for the Space](/docs/alerts-&-notifications/notifications/centralized-cloud-notifications/manage-notification-methods#manage-space-notification-settings). Without this step, Netdata Cloud will not forward any alert notifications. + +**See also:** [Centralized Cloud Notifications](/docs/alerts-&-notifications/notifications/centralized-cloud-notifications/centralized-cloud-notifications-reference) for notification setup, and [Node States and Transitions](/docs/netdata-cloud/node-states-and-transitions) for troubleshooting node offline states. + ## Automatic Node Instance Cleanup in Netdata Cloud Netdata Cloud automatically removes inactive nodes to keep your dashboards clean and organized. diff --git a/docs/Welcome to Netdata/Monitor Anything.mdx b/docs/Welcome to Netdata/Monitor Anything.mdx index d7ce030593..f7aeabefce 100644 --- a/docs/Welcome to Netdata/Monitor Anything.mdx +++ b/docs/Welcome to Netdata/Monitor Anything.mdx @@ -155,17 +155,17 @@ Need a dedicated integration? [Submit a feature request](https://github.com/netd | [Cilium Operator](/docs/collecting-metrics/collectors/containers-and-vms/cilium-operator) | Monitor Cilium Operator metrics for efficient Kubernetes network security management. | | [Cilium Proxy](/docs/collecting-metrics/collectors/containers-and-vms/cilium-proxy) | Track Cilium Proxy metrics for enhanced network security and performance. | | [containerd Containers](/docs/collecting-metrics/collectors/containers-and-vms/containerd-containers) | Monitor containerd container resource utilization — CPU, memory, disk I/O, and network — via Linux cgroups. | -| [Containers](/docs/collecting-metrics/collectors/containers-and-vms/containers) | Monitor containers and virtual machines resource utilization — CPU, memory, disk I/O, and network — via Linux cgroups. | +| [Containers](/docs/collecting-metrics/collectors/containers-and-vms/containers) | Monitor containers and virtual machines resource utilization — CPU, memory, disk I/O, network, and page cache activity — via Linux cgroups. | | [Docker](/docs/collecting-metrics/collectors/containers-and-vms/docker) | This collector monitors Docker containers state, health status and more. | | [Docker Containers](/docs/collecting-metrics/collectors/containers-and-vms/docker-containers) | Monitor Docker container resource utilization — CPU, memory, disk I/O, and network — via Linux cgroups. | | [Docker Engine](/docs/collecting-metrics/collectors/containers-and-vms/docker-engine) | This collector monitors the activity and health of Docker Engine and Docker Swarm. | | [Docker Hub repository](/docs/collecting-metrics/collectors/containers-and-vms/docker-hub-repository) | This collector keeps track of DockerHub repositories statistics such as the number of stars, pulls, current status, and more. | -| [Hyper-V](/docs/collecting-metrics/collectors/containers-and-vms/hyper-v) | This collector monitors website requests and logins. | +| [Hyper-V](/docs/collecting-metrics/collectors/containers-and-vms/hyper-v) | This collector monitors Hyper-V virtualization metrics including virtual machine health status, root partition virtualization layer statistics (TLB flushes, address spaces, attached devices, GPA space), per-VM CPU usage, memory allocation and pressure, storage device I/O and errors, network interface traffic and packets, and virtual switch traffic, packets, and dropped packets. | | [Kubelet](/docs/collecting-metrics/collectors/containers-and-vms/kubelet) | This collector monitors Kubelet instances. | | [Kubeproxy](/docs/collecting-metrics/collectors/containers-and-vms/kubeproxy) | This collector monitors Kubeproxy instances. | | [Kubernetes API Server](/docs/collecting-metrics/collectors/containers-and-vms/kubernetes-api-server) | This collector monitors Kubernetes API Server health, performance, and request metrics. | | [Kubernetes Cluster State](/docs/collecting-metrics/collectors/containers-and-vms/kubernetes-cluster-state) | This collector monitors Kubernetes Nodes, Pods and Containers. | -| [Kubernetes Containers](/docs/collecting-metrics/collectors/containers-and-vms/kubernetes-containers) | Monitor containers and virtual machines resource utilization — CPU, memory, disk I/O, and network — via Linux cgroups. | +| [Kubernetes Containers](/docs/collecting-metrics/collectors/containers-and-vms/kubernetes-containers) | Monitor containers and virtual machines resource utilization — CPU, memory, disk I/O, network, and page cache activity — via Linux cgroups. | | [Libvirt VMs and Containers](/docs/collecting-metrics/collectors/containers-and-vms/libvirt-vms-and-containers) | Monitor libvirt-managed VM and container resource utilization — CPU, memory, disk I/O, and network — via Linux cgroups. | | [LXC Containers](/docs/collecting-metrics/collectors/containers-and-vms/lxc-containers) | Monitor LXC/LXD/Incus container resource utilization — CPU, memory, disk I/O, and network — via Linux cgroups. | | [Mesos](/docs/collecting-metrics/collectors/containers-and-vms/mesos) | Monitor Apache Mesos cluster manager metrics for efficient resource management and performance. | @@ -234,7 +234,7 @@ Need a dedicated integration? [Submit a feature request](https://github.com/netd | [System statistics](/docs/collecting-metrics/collectors/operating-systems/system-statistics-windows-plugin) | This collector monitors the current number of processes, threads, and context switches on Windows systems. | | [System Uptime](/docs/collecting-metrics/collectors/operating-systems/system-uptime) | The amount of time the system has been up (running). | | [system.ram](/docs/collecting-metrics/collectors/operating-systems/system.ram) | Show information about system memory usage. | -| [Systemd Services](/docs/collecting-metrics/collectors/operating-systems/systemd-services) | Monitor containers and virtual machines resource utilization — CPU, memory, disk I/O, and network — via Linux cgroups. | +| [Systemd Services](/docs/collecting-metrics/collectors/operating-systems/systemd-services) | Monitor containers and virtual machines resource utilization — CPU, memory, disk I/O, network, and page cache activity — via Linux cgroups. | | [Systemd Units](/docs/collecting-metrics/collectors/operating-systems/systemd-units) | This collector monitors the state of Systemd units and unit files. | | [systemd-logind users](/docs/collecting-metrics/collectors/operating-systems/systemd-logind-users) | This collector monitors number of sessions and users as reported by the `org.freedesktop.login1` DBus API. | | [uptime](/docs/collecting-metrics/collectors/operating-systems/uptime) | Show period of time server is up. | diff --git a/ingest/generated_map.yaml b/ingest/generated_map.yaml index 31837b1066..e16723cc7e 100644 --- a/ingest/generated_map.yaml +++ b/ingest/generated_map.yaml @@ -2338,7 +2338,8 @@ sidebar_label: Hyper-V learn_status: Published learn_rel_path: Collecting Metrics/Collectors/Containers and VMs - keywords: '[''windows'', ''microsoft'', ''hyperv'', ''virtualization'', ''vm'']' + keywords: '[''windows'', ''microsoft'', ''hyperv'', ''virtualization'', ''vm'', + ''azure-local'', ''azure-stack-hci'']' description: .nan meta_yaml: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/metadata.yaml message: DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml @@ -3765,7 +3766,8 @@ sidebar_label: Network Connections learn_status: Published learn_rel_path: Collecting Metrics/Collectors/Networking - keywords: '[''network'', ''connections'', ''sockets'', ''tcp'', ''udp'', ''ports'']' + keywords: '[''network'', ''connections'', ''sockets'', ''tcp'', ''udp'', ''ports'', + ''freebsd'']' description: .nan meta_yaml: https://github.com/netdata/netdata/edit/master/src/collectors/network-viewer.plugin/metadata.yaml message: DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml @@ -3956,6 +3958,17 @@ meta_yaml: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/snmp/metadata.yaml message: DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/snmp_traps/README.md + sidebar_label: SNMP trap listener + learn_status: Published + learn_rel_path: Collecting Metrics/Collectors/Networking + keywords: '[''snmp'', ''trap'', ''inform'', ''snmpv3'', ''usm'', ''syslog'', ''network + events'', ''event monitoring'', ''notifications'', ''fault management'', ''network + management'']' + description: .nan + meta_yaml: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/snmp_traps/metadata.yaml + message: DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml + FILE - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/socket_statistics.md sidebar_label: Socket statistics learn_status: Published @@ -4462,22 +4475,22 @@ meta_yaml: https://github.com/netdata/netdata/edit/master/src/collectors/debugfs.plugin/metadata.yaml message: DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/system_statistics.md +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/system_statistics.md sidebar_label: System statistics learn_status: Published learn_rel_path: Collecting Metrics/Collectors/Operating Systems - keywords: '[''cpu utilization'', ''process counts'']' + keywords: '[''process counts'', ''threads'', ''context switch'']' description: .nan - meta_yaml: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/metadata.yaml + meta_yaml: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/metadata.yaml message: DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/system_statistics.md +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/system_statistics.md sidebar_label: System statistics learn_status: Published learn_rel_path: Collecting Metrics/Collectors/Operating Systems - keywords: '[''process counts'', ''threads'', ''context switch'']' + keywords: '[''cpu utilization'', ''process counts'']' description: .nan - meta_yaml: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/metadata.yaml + meta_yaml: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/metadata.yaml message: DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE COLLECTOR'S metadata.yaml FILE - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/system_uptime.md diff --git a/ingest/one_commit_back_file-dict.yaml b/ingest/one_commit_back_file-dict.yaml index a6c37625f8..b31b083846 100644 --- a/ingest/one_commit_back_file-dict.yaml +++ b/ingest/one_commit_back_file-dict.yaml @@ -1,1756 +1,1758 @@ -- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/netdata-cloud-onprem/RELEASE-NOTES.md - learn_path: /docs/netdata-cloud-on-prem/release-notes -- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/installation.md - learn_path: /docs/netdata-cloud-on-prem/installation -- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/hardening-guide.md - learn_path: /docs/netdata-cloud-on-prem/security-hardening-guide -- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/poc-without-k8s.md - learn_path: /docs/netdata-cloud-on-prem/poc-without-k8s -- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/troubleshooting.md - learn_path: /docs/netdata-cloud-on-prem/troubleshooting -- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/sbom.md - learn_path: /docs/netdata-cloud-on-prem/software-bill-of-materials -- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/netpol.md - learn_path: /docs/netdata-cloud-on-prem/kubernetes-network-policy-configuration -- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/ecr-mirror.md - learn_path: /docs/netdata-cloud-on-prem/mirroring-image-registry -- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/README.md - learn_path: /docs/netdata-cloud-on-prem -- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/image-signature-verification.md - learn_path: /docs/netdata-cloud-on-prem/container-image-signature-verification -- custom_edit_url: https://github.com/netdata/agent-service-discovery/edit/master/README.md - learn_path: /docs/collecting-metrics/service-discovery -- custom_edit_url: https://github.com/netdata/netdata-grafana-datasource-plugin/edit/master/README.md - learn_path: /docs/dashboards-and-charts/grafana-plugin -- custom_edit_url: https://github.com/netdata/helmchart/edit/master/charts/netdata/README.md - learn_path: /docs/netdata-agent/installation/kubernetes-helm-chart-reference - custom_edit_url: https://github.com/netdata/netdata/edit/master/REDISTRIBUTED.md learn_path: /docs/developer-and-contributor-corner/redistributed-software -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-authentication/integrations/scim.md - learn_path: /docs/netdata-cloud/authentication-&-authorization/cloud-authentication-&-authorization-integrations/scim -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-authentication/integrations/oidc.md - learn_path: /docs/netdata-cloud/authentication-&-authorization/cloud-authentication-&-authorization-integrations/oidc -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-authentication/integrations/okta_sso.md - learn_path: /docs/netdata-cloud/authentication-&-authorization/cloud-authentication-&-authorization-integrations/okta-sso -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/pagerduty.md - learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/pagerduty +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/logs/integrations/windows_event_logs.md + learn_path: /docs/logs/windows-event-logs +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/logs/integrations/systemd_journal_logs.md + learn_path: /docs/logs/systemd-journal-logs +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/logs/integrations/opentelemetry_logs.md + learn_path: /docs/logs/opentelemetry-logs +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/splunk.md + learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/splunk +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/ilert.md + learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/ilert - custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/amazon_sns.md learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/amazon-sns -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/opsgenie.md - learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/opsgenie -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/splunk_victorops.md - learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/splunk-victorops -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/webhook.md - learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/webhook +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/discord.md + learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/discord +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/pagerduty.md + learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/pagerduty +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/microsoft_teams.md + learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/microsoft-teams - custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/slack.md learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/slack -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/servicenow.md - learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/servicenow -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/telegram.md - learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/telegram +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/opsgenie.md + learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/opsgenie - custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/mattermost.md learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/mattermost - custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/rocketchat.md learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/rocketchat -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/splunk.md - learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/splunk -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/discord.md - learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/discord -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/microsoft_teams.md - learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/microsoft-teams - custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/netdata_mobile_app.md learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/netdata-mobile-app -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/ilert.md - learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/ilert -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/logs/integrations/systemd_journal_logs.md - learn_path: /docs/logs/systemd-journal-logs -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/logs/integrations/windows_event_logs.md - learn_path: /docs/logs/windows-event-logs -- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/logs/integrations/opentelemetry_logs.md - learn_path: /docs/logs/opentelemetry-logs -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/Demo-Sites.md - learn_path: /docs/live-demo -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-oss-limitations.md - learn_path: /docs/security-and-privacy-design/access-control-and-feature-availability -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/fleet-configuration-management.md - learn_path: /docs/welcome-to-netdata/fleet-deployment-and-configuration-management +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/telegram.md + learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/telegram +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/webhook.md + learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/webhook +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/servicenow.md + learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/servicenow +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-notifications/integrations/splunk_victorops.md + learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/splunk-victorops +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-authentication/integrations/scim.md + learn_path: /docs/netdata-cloud/authentication-&-authorization/cloud-authentication-&-authorization-integrations/scim +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-authentication/integrations/oidc.md + learn_path: /docs/netdata-cloud/authentication-&-authorization/cloud-authentication-&-authorization-integrations/oidc +- custom_edit_url: https://github.com/netdata/netdata/edit/master/integrations/cloud-authentication/integrations/okta_sso.md + learn_path: /docs/netdata-cloud/authentication-&-authorization/cloud-authentication-&-authorization-integrations/okta-sso +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/streaming-routing.md + learn_path: /docs/netdata-parents/streaming-routing-reference - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/guidelines.md learn_path: /docs/developer-and-contributor-corner/contribute-to-the-documentation -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/scalability.md - learn_path: /docs/welcome-to-netdata/scalability -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/reporting.md - learn_path: /docs/welcome-to-netdata/reporting +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-oss-limitations.md + learn_path: /docs/security-and-privacy-design/access-control-and-feature-availability - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/nodes-ephemerality.md learn_path: /docs/netdata-parents/node-types-and-lifecycle-reference - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-enterprise-evaluation-corrected.md learn_path: /docs/welcome-to-netdata/enterprise-evaluation-guide -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/welcome-to-netdata.md - learn_path: /docs/welcome-to-netdata -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/realtime-monitoring.md - learn_path: /docs/welcome-to-netdata/real-time-monitoring - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/NIDL-Framework.md learn_path: /docs/dashboards-and-charts/nidl-framework +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/reporting.md + learn_path: /docs/welcome-to-netdata/reporting +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/scalability.md + learn_path: /docs/welcome-to-netdata/scalability +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/metric-correlations.md + learn_path: /docs/netdata-ai/troubleshooting/metric-correlations - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/top-monitoring-netdata-functions.md learn_path: /docs/live-view -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/streaming-routing.md - learn_path: /docs/netdata-parents/streaming-routing-reference +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/realtime-monitoring.md + learn_path: /docs/welcome-to-netdata/real-time-monitoring +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/Demo-Sites.md + learn_path: /docs/live-demo - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/glossary.md learn_path: /docs/developer-and-contributor-corner/glossary -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/metric-correlations.md - learn_path: /docs/netdata-ai/troubleshooting/metric-correlations +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/fleet-configuration-management.md + learn_path: /docs/welcome-to-netdata/fleet-deployment-and-configuration-management +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/welcome-to-netdata.md + learn_path: /docs/welcome-to-netdata - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/getting-started-netdata/guide.md learn_path: /docs/getting-started -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/ml-ai/anomaly-advisor.md - learn_path: /docs/netdata-ai/troubleshooting/anomaly-advisor -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/ml-ai/ai-insights.md - learn_path: /docs/netdata-ai/insights -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/ml-ai/ml-anomaly-detection/ml-accuracy.md - learn_path: /docs/netdata-ai/anomaly-detection/ml-accuracy -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/ml-ai/ml-anomaly-detection/ml-anomaly-detection.md - learn_path: /docs/netdata-ai/anomaly-detection -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/functions/databases.md - learn_path: /docs/live-view/database-queries -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/functions/processes.md - learn_path: /docs/live-view/processes -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/security-and-privacy-design/netdata-cloud-security.md - learn_path: /docs/security-and-privacy-design/netdata-cloud -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/security-and-privacy-design/netdata-agent-security.md - learn_path: /docs/security-and-privacy-design/netdata-agent -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/security-and-privacy-design/README.md - learn_path: /docs/security-and-privacy-design -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/build-the-netdata-agent-yourself.md - learn_path: /docs/developer-and-contributor-corner/build-the-netdata-agent-yourself -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/collect-unbound-metrics.md - learn_path: /docs/developer-and-contributor-corner/monitor-unbound-dns-servers-with-netdata -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/monitor-debug-applications-ebpf.md - learn_path: /docs/developer-and-contributor-corner/monitor-troubleshoot-and-debug-applications-with-ebpf-metrics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/dyncfg.md - learn_path: /docs/developer-and-contributor-corner/dynamic-configuration -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/collect-apache-nginx-web-logs.md - learn_path: /docs/developer-and-contributor-corner/monitor-nginx-or-apache-web-server-log-files-with-netdata -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/style-guide.md - learn_path: /docs/developer-and-contributor-corner/contribute-to-the-documentation/netdata-style-guide -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/running-through-cf-tunnels.md - learn_path: /docs/developer-and-contributor-corner/running-a-local-dashboard-through-cloudflare-tunnels -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/monitor-hadoop-cluster.md - learn_path: /docs/developer-and-contributor-corner/monitor-a-hadoop-cluster-with-netdata -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/README.md - learn_path: /docs/developer-and-contributor-corner -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/best-practices.md - learn_path: /docs/netdata-parents/parent-configuration-best-practices -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/logs-centralization-points-with-systemd-journald/passive-journal-centralization-without-encryption.md - learn_path: /docs/logs/logs-centralization-points-with-systemd-journald/passive-journal-centralization-without-encryption -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/logs-centralization-points-with-systemd-journald/passive-journal-centralization-with-encryption-using-self-signed-certificates.md - learn_path: /docs/logs/logs-centralization-points-with-systemd-journald/passive-journal-centralization-with-encryption-using-self-signed-certificates -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/logs-centralization-points-with-systemd-journald/README.md - learn_path: /docs/logs/logs-centralization-points-with-systemd-journald -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/metrics-centralization-points/faq.md - learn_path: /docs/netdata-parents/metrics-centralization-points/faq-on-metrics-centralization-points -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/metrics-centralization-points/replication-of-past-samples.md - learn_path: /docs/netdata-parents/metrics-centralization-points/replication-of-past-samples -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/metrics-centralization-points/configuration.md - learn_path: /docs/netdata-parents/metrics-centralization-points/configuring-metrics-centralization-points -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/metrics-centralization-points/README.md - learn_path: /docs/netdata-parents/metrics-centralization-points -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/metrics-centralization-points/clustering-and-high-availability-of-netdata-parents.md - learn_path: /docs/netdata-parents/metrics-centralization-points/clustering-and-high-availability-of-netdata-parents +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/deployment-guides/README.md + learn_path: /docs/netdata-agent/quickstart-deployment +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/deployment-guides/standalone-deployment.md + learn_path: /docs/netdata-agent +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/deployment-guides/deployment-with-centralization-points.md + learn_path: /docs/netdata-parents +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/deployment-guides/deployment-strategies.md + learn_path: /docs/netdata-parents/configuration-examples - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/securing-netdata-agents.md learn_path: /docs/netdata-agent/configuration/securing-agents - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/start-stop-restart.md learn_path: /docs/netdata-agent/maintenance/service-control -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/backup-and-restore-an-agent.md - learn_path: /docs/netdata-agent/maintenance/backup-and-restore-an-agent - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configure-netdata-for-cybersecurity-platforms.md learn_path: /docs/netdata-agent/configuration/securing-agents/configure-netdata-for-cybersecurity-platforms -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/organize-systems-metrics-and-alerts.md - learn_path: /docs/netdata-agent/configuration/organize-systems-metrics-and-alerts -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/optimize-the-netdata-agents-performance.md - learn_path: /docs/netdata-agent/configuration/performance-optimization +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/backup-and-restore-an-agent.md + learn_path: /docs/netdata-agent/maintenance/backup-and-restore-an-agent +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/using-custom-ca-certificates-with-netdata.md + learn_path: /docs/netdata-agent/configuration/using-custom-ca-certificates-with-netdata +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/README.md + learn_path: /docs/netdata-agent/configuration - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/anonymous-telemetry-events.md learn_path: /docs/netdata-agent/anonymous-telemetry-events - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/secure-your-netdata-agent-with-bearer-token.md learn_path: /docs/netdata-agent/configuration/securing-agents/bearer-token-protection +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/optimize-the-netdata-agents-performance.md + learn_path: /docs/netdata-agent/configuration/performance-optimization +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/organize-systems-metrics-and-alerts.md + learn_path: /docs/netdata-agent/configuration/organize-systems-metrics-and-alerts - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/dynamic-configuration.md learn_path: /docs/netdata-agent/configuration/dynamic-configuration-manager -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/README.md - learn_path: /docs/netdata-agent/configuration -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/using-custom-ca-certificates-with-netdata.md - learn_path: /docs/netdata-agent/configuration/using-custom-ca-certificates-with-netdata +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/running-the-netdata-agent-behind-a-reverse-proxy/Running-behind-apache.md + learn_path: /docs/netdata-agent/configuration/securing-agents/running-the-agent-behind-a-reverse-proxy/apache +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/running-the-netdata-agent-behind-a-reverse-proxy/README.md + learn_path: /docs/netdata-agent/configuration/securing-agents/running-the-agent-behind-a-reverse-proxy - 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 learn_path: /docs/netdata-agent/configuration/securing-agents/running-the-agent-behind-a-reverse-proxy/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-h2o.md - learn_path: /docs/netdata-agent/configuration/securing-agents/running-the-agent-behind-a-reverse-proxy/h2o +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/running-the-netdata-agent-behind-a-reverse-proxy/Running-behind-caddy.md + learn_path: /docs/netdata-agent/configuration/securing-agents/running-the-agent-behind-a-reverse-proxy/caddy - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/running-the-netdata-agent-behind-a-reverse-proxy/Running-behind-nginx.md learn_path: /docs/netdata-agent/configuration/securing-agents/running-the-agent-behind-a-reverse-proxy/nginx +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/running-the-netdata-agent-behind-a-reverse-proxy/Running-behind-h2o.md + learn_path: /docs/netdata-agent/configuration/securing-agents/running-the-agent-behind-a-reverse-proxy/h2o - 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 learn_path: /docs/netdata-agent/configuration/securing-agents/running-the-agent-behind-a-reverse-proxy/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/README.md - learn_path: /docs/netdata-agent/configuration/securing-agents/running-the-agent-behind-a-reverse-proxy -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/running-the-netdata-agent-behind-a-reverse-proxy/Running-behind-apache.md - learn_path: /docs/netdata-agent/configuration/securing-agents/running-the-agent-behind-a-reverse-proxy/apache -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/configuration/running-the-netdata-agent-behind-a-reverse-proxy/Running-behind-caddy.md - learn_path: /docs/netdata-agent/configuration/securing-agents/running-the-agent-behind-a-reverse-proxy/caddy - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/sizing-netdata-agents/cpu-requirements.md learn_path: /docs/netdata-agent/resource-utilization/cpu +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/sizing-netdata-agents/README.md + learn_path: /docs/netdata-agent/resource-utilization +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/sizing-netdata-agents/bandwidth-requirements.md + learn_path: /docs/netdata-agent/resource-utilization/bandwidth - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/sizing-netdata-agents/ram-requirements.md learn_path: /docs/netdata-agent/resource-utilization/ram - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/sizing-netdata-agents/disk-requirements-and-retention.md learn_path: /docs/netdata-agent/resource-utilization/disk-&-retention -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/sizing-netdata-agents/bandwidth-requirements.md - learn_path: /docs/netdata-agent/resource-utilization/bandwidth -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-agent/sizing-netdata-agents/README.md - learn_path: /docs/netdata-agent/resource-utilization -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/node-filter.md - learn_path: /docs/dashboards-and-charts/node-filter -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/import-export-print-snapshot.md - learn_path: /docs/developer-and-contributor-corner/import-export-and-print-a-snapshot -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/events-feed.md - learn_path: /docs/dashboards-and-charts/tabs/events -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/kubernetes-tab.md - learn_path: /docs/dashboards-and-charts/tabs/kubernetes -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/nodes-tab.md - learn_path: /docs/dashboards-and-charts/tabs/nodes -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/alerts-tab.md - learn_path: /docs/dashboards-and-charts/tabs/alerts -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/home-tab.md - learn_path: /docs/dashboards-and-charts/tabs -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/live-tab.md - learn_path: /docs/dashboards-and-charts/tabs/live -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/visualization-date-and-time-controls.md - learn_path: /docs/dashboards-and-charts/time-controls -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/expanded-chart-analysis.md - learn_path: /docs/dashboards-and-charts/expanded-chart-analysis -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/themes.md - learn_path: /docs/dashboards-and-charts/theme -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/dashboards-tab.md - learn_path: /docs/dashboards-and-charts/tabs/dashboards -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/anomaly-advisor-tab.md - learn_path: /docs/dashboards-and-charts/tabs/anomalies -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/netdata-charts.md - learn_path: /docs/dashboards-and-charts/charts -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/README.md - learn_path: /docs/dashboards-and-charts -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/metrics-tab-and-single-node-tabs.md - learn_path: /docs/dashboards-and-charts/tabs/metrics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/logs-tab.md - learn_path: /docs/dashboards-and-charts/tabs/logs +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/functions/databases.md + learn_path: /docs/live-view/database-queries +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/functions/processes.md + learn_path: /docs/live-view/processes +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/delete/netdata/account.md + learn_path: /docs/netdata-cloud/account-deletion - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/conversations.md learn_path: /docs/netdata-ai/conversations - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/alerts-automation/alerts-automation.md learn_path: /docs/netdata-ai/alerts-automation -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/ai-chat-netdata.md - learn_path: /docs/netdata-ai/mcp/chat-with-netdata - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/README.md learn_path: /docs/netdata-ai/mcp -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/crush.md - learn_path: /docs/netdata-ai/mcp/mcp-clients/crush -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/claude-desktop.md - learn_path: /docs/netdata-ai/mcp/mcp-clients/claude-desktop +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/ai-chat-netdata.md + learn_path: /docs/netdata-ai/mcp/chat-with-netdata +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/ai-devops-copilot.md + learn_path: /docs/netdata-ai/mcp/mcp-clients +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/codex-cli.md + learn_path: /docs/netdata-ai/mcp/mcp-clients/openai-codex-cli - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/vs-code.md learn_path: /docs/netdata-ai/mcp/mcp-clients/visual-studio-code -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/opencode.md - learn_path: /docs/netdata-ai/mcp/mcp-clients/opencode -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/jetbrains-ides.md - learn_path: /docs/netdata-ai/mcp/mcp-clients/jetbrains-ides - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/cursor.md learn_path: /docs/netdata-ai/mcp/mcp-clients/cursor - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/claude-code.md learn_path: /docs/netdata-ai/mcp/mcp-clients/claude-code -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/ai-devops-copilot.md - learn_path: /docs/netdata-ai/mcp/mcp-clients +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/claude-desktop.md + learn_path: /docs/netdata-ai/mcp/mcp-clients/claude-desktop +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/jetbrains-ides.md + learn_path: /docs/netdata-ai/mcp/mcp-clients/jetbrains-ides +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/crush.md + learn_path: /docs/netdata-ai/mcp/mcp-clients/crush +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/opencode.md + learn_path: /docs/netdata-ai/mcp/mcp-clients/opencode - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/gemini-cli.md learn_path: /docs/netdata-ai/mcp/mcp-clients/gemini-cli -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/mcp/mcp-clients/codex-cli.md - learn_path: /docs/netdata-ai/mcp/mcp-clients/openai-codex-cli -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/troubleshooting/index.md - learn_path: /docs/netdata-ai/troubleshooting - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/investigations/custom-investigations.md learn_path: /docs/netdata-ai/investigations/custom-investigations -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/investigations/index.md - learn_path: /docs/netdata-ai/investigations - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/investigations/scheduled-investigations.md learn_path: /docs/netdata-ai/investigations/scheduled-investigations -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/insights/scheduled-reports.md - learn_path: /docs/netdata-ai/insights/scheduled-reports -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/insights/capacity-planning.md - learn_path: /docs/netdata-ai/insights/capacity-planning +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/investigations/index.md + learn_path: /docs/netdata-ai/investigations - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/insights/anomaly-analysis.md learn_path: /docs/netdata-ai/insights/anomaly-analysis +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/insights/capacity-planning.md + learn_path: /docs/netdata-ai/insights/capacity-planning - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/insights/infrastructure-summary.md learn_path: /docs/netdata-ai/insights/infrastructure-summary - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/insights/performance-optimization.md learn_path: /docs/netdata-ai/insights/performance-optimization -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/node-states-and-transitions.md - learn_path: /docs/netdata-cloud/node-states-and-transitions -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/view-plan-and-billing.md - learn_path: /docs/netdata-cloud/netdata-plans-&-billing -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/organize-your-infrastructure-invite-your-team.md - learn_path: /docs/netdata-cloud/spaces-and-rooms -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/node-rule-based-room-assignment.md - learn_path: /docs/netdata-cloud/spaces-and-rooms/node-rule-based-room-assignment -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/README.md - learn_path: /docs/netdata-cloud -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/authentication-and-authorization/enterprise-sso-authentication.md - learn_path: /docs/netdata-cloud/authentication-&-authorization/enterprise-sso-authentication -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/authentication-and-authorization/api-tokens.md - learn_path: /docs/netdata-cloud/authentication-&-authorization/api-tokens -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/authentication-and-authorization/role-based-access-model.md - learn_path: /docs/netdata-cloud/authentication-&-authorization/role-based-access-model -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/authentication-and-authorization/README.md - learn_path: /docs/netdata-cloud/authentication-&-authorization -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/exporting-metrics/enable-an-exporting-connector.md - learn_path: /docs/exporting-metrics/enable-an-exporting-connector -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/exporting-metrics/README.md - learn_path: /docs/exporting-metrics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/delete/netdata/account.md - learn_path: /docs/netdata-cloud/account-deletion -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/category-overview-pages/machine-learning-and-assisted-troubleshooting.md - learn_path: /docs/netdata-ai +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/insights/scheduled-reports.md + learn_path: /docs/netdata-ai/insights/scheduled-reports +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-ai/troubleshooting/index.md + learn_path: /docs/netdata-ai/troubleshooting +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/best-practices.md + learn_path: /docs/netdata-parents/parent-configuration-best-practices +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/logs-centralization-points-with-systemd-journald/README.md + learn_path: /docs/logs/logs-centralization-points-with-systemd-journald +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/logs-centralization-points-with-systemd-journald/passive-journal-centralization-without-encryption.md + learn_path: /docs/logs/logs-centralization-points-with-systemd-journald/passive-journal-centralization-without-encryption +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/logs-centralization-points-with-systemd-journald/passive-journal-centralization-with-encryption-using-self-signed-certificates.md + learn_path: /docs/logs/logs-centralization-points-with-systemd-journald/passive-journal-centralization-with-encryption-using-self-signed-certificates +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/metrics-centralization-points/replication-of-past-samples.md + learn_path: /docs/netdata-parents/metrics-centralization-points/replication-of-past-samples +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/metrics-centralization-points/README.md + learn_path: /docs/netdata-parents/metrics-centralization-points +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/metrics-centralization-points/configuration.md + learn_path: /docs/netdata-parents/metrics-centralization-points/configuring-metrics-centralization-points +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/metrics-centralization-points/faq.md + learn_path: /docs/netdata-parents/metrics-centralization-points/faq-on-metrics-centralization-points +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/observability-centralization-points/metrics-centralization-points/clustering-and-high-availability-of-netdata-parents.md + learn_path: /docs/netdata-parents/metrics-centralization-points/clustering-and-high-availability-of-netdata-parents - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/category-overview-pages/maintenance-operations-on-netdata-agents.md learn_path: /docs/netdata-agent/maintenance -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/troubleshooting/troubleshoot.md - learn_path: /docs/netdata-ai/troubleshooting/alert-troubleshooting +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/category-overview-pages/machine-learning-and-assisted-troubleshooting.md + learn_path: /docs/netdata-ai +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/running-through-cf-tunnels.md + learn_path: /docs/developer-and-contributor-corner/running-a-local-dashboard-through-cloudflare-tunnels +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/README.md + learn_path: /docs/developer-and-contributor-corner +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/collect-apache-nginx-web-logs.md + learn_path: /docs/developer-and-contributor-corner/monitor-nginx-or-apache-web-server-log-files-with-netdata +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/monitor-hadoop-cluster.md + learn_path: /docs/developer-and-contributor-corner/monitor-a-hadoop-cluster-with-netdata +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/collect-unbound-metrics.md + learn_path: /docs/developer-and-contributor-corner/monitor-unbound-dns-servers-with-netdata +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/style-guide.md + learn_path: /docs/developer-and-contributor-corner/contribute-to-the-documentation/netdata-style-guide +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/monitor-debug-applications-ebpf.md + learn_path: /docs/developer-and-contributor-corner/monitor-troubleshoot-and-debug-applications-with-ebpf-metrics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/build-the-netdata-agent-yourself.md + learn_path: /docs/developer-and-contributor-corner/build-the-netdata-agent-yourself +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/developer-and-contributor-corner/dyncfg.md + learn_path: /docs/developer-and-contributor-corner/dynamic-configuration - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/install/windows-release-channels.md learn_path: /docs/netdata-agent/installation/windows/switching-install-types-and-release-channels -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/retention-querying.md - learn_path: /docs/network-flows/retention-and-tiers +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/troubleshooting/troubleshoot.md + learn_path: /docs/netdata-ai/troubleshooting/alert-troubleshooting +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/learn/unclaim-reclaim-node.md + learn_path: /docs/netdata-cloud/unclaim-and-reclaim-a-node +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/learn/switching-install-types.md + learn_path: /docs/netdata-agent/installation/linux/switch-install-types-and-release-channels +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/learn/vm-templates.md + learn_path: /docs/netdata-agent/vm-templates +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/learn/remove-node.md + learn_path: /docs/netdata-cloud/remove-agent +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/learn/node-identities.md + learn_path: /docs/netdata-agent/node-identities +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/ml-ai/anomaly-advisor.md + learn_path: /docs/netdata-ai/troubleshooting/anomaly-advisor +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/ml-ai/ai-insights.md + learn_path: /docs/netdata-ai/insights +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/ml-ai/ml-anomaly-detection/ml-accuracy.md + learn_path: /docs/netdata-ai/anomaly-detection/ml-accuracy +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/ml-ai/ml-anomaly-detection/ml-anomaly-detection.md + learn_path: /docs/netdata-ai/anomaly-detection +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/kubernetes-tab.md + learn_path: /docs/dashboards-and-charts/tabs/kubernetes +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/README.md + learn_path: /docs/dashboards-and-charts +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/logs-tab.md + learn_path: /docs/dashboards-and-charts/tabs/logs +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/events-feed.md + learn_path: /docs/dashboards-and-charts/tabs/events +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/dashboards-tab.md + learn_path: /docs/dashboards-and-charts/tabs/dashboards +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/visualization-date-and-time-controls.md + learn_path: /docs/dashboards-and-charts/time-controls +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/import-export-print-snapshot.md + learn_path: /docs/developer-and-contributor-corner/import-export-and-print-a-snapshot +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/themes.md + learn_path: /docs/dashboards-and-charts/theme +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/nodes-tab.md + learn_path: /docs/dashboards-and-charts/tabs/nodes +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/alerts-tab.md + learn_path: /docs/dashboards-and-charts/tabs/alerts +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/home-tab.md + learn_path: /docs/dashboards-and-charts/tabs +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/node-filter.md + learn_path: /docs/dashboards-and-charts/node-filter +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/anomaly-advisor-tab.md + learn_path: /docs/dashboards-and-charts/tabs/anomalies +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/netdata-charts.md + learn_path: /docs/dashboards-and-charts/charts +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/expanded-chart-analysis.md + learn_path: /docs/dashboards-and-charts/expanded-chart-analysis +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/live-tab.md + learn_path: /docs/dashboards-and-charts/tabs/live +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/dashboards-and-charts/metrics-tab-and-single-node-tabs.md + learn_path: /docs/dashboards-and-charts/tabs/metrics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/security-and-privacy-design/README.md + learn_path: /docs/security-and-privacy-design +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/security-and-privacy-design/netdata-cloud-security.md + learn_path: /docs/security-and-privacy-design/netdata-cloud +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/security-and-privacy-design/netdata-agent-security.md + learn_path: /docs/security-and-privacy-design/netdata-agent - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/enrichment.md learn_path: /docs/network-flows/enrichment -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/field-reference.md - learn_path: /docs/network-flows/field-reference -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/investigation-playbooks.md - learn_path: /docs/network-flows/investigation-playbooks +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/README.md + learn_path: /docs/network-flows +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/quick-start.md + learn_path: /docs/network-flows/quick-start - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/anti-patterns.md learn_path: /docs/network-flows/anti-patterns - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/installation.md learn_path: /docs/network-flows/installation -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/quick-start.md - learn_path: /docs/network-flows/quick-start +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/configuration.md + learn_path: /docs/network-flows/configuration - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/validation.md learn_path: /docs/network-flows/validation-and-data-quality +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/retention-querying.md + learn_path: /docs/network-flows/retention-and-tiers - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/troubleshooting.md learn_path: /docs/network-flows/troubleshooting -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/configuration.md - learn_path: /docs/network-flows/configuration -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/sizing-capacity.md - learn_path: /docs/network-flows/sizing-and-capacity-planning - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/intel-downloader.md learn_path: /docs/network-flows/enrichment-intel-downloader -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/README.md - learn_path: /docs/network-flows -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/visualization/time-series.md - learn_path: /docs/network-flows/visualization/time-series -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/visualization/dashboard-cards.md - learn_path: /docs/network-flows/visualization/plugin-health-charts -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/visualization/summary-sankey.md - learn_path: /docs/network-flows/visualization/sankey-and-table -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/visualization/filters-facets.md - learn_path: /docs/network-flows/visualization/filters-and-facets +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/sizing-capacity.md + learn_path: /docs/network-flows/sizing-and-capacity-planning +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/investigation-playbooks.md + learn_path: /docs/network-flows/investigation-playbooks +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/field-reference.md + learn_path: /docs/network-flows/field-reference - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/visualization/overview.md learn_path: /docs/network-flows/visualization - custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/visualization/maps-globe.md learn_path: /docs/network-flows/visualization/maps-and-globe -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/deployment-guides/deployment-strategies.md - learn_path: /docs/netdata-parents/configuration-examples -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/deployment-guides/deployment-with-centralization-points.md - learn_path: /docs/netdata-parents -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/deployment-guides/README.md - learn_path: /docs/netdata-agent/quickstart-deployment -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/deployment-guides/standalone-deployment.md - learn_path: /docs/netdata-agent -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/alerts-and-notifications/creating-alerts-with-netdata-alerts-configuration-manager.md - learn_path: /docs/alerts-&-notifications/creating-alerts-with-the-alerts-configuration-manager -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/alerts-and-notifications/notifications/README.md - learn_path: /docs/alerts-&-notifications/notifications -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/alerts-and-notifications/notifications/centralized-cloud-notifications/centralized-cloud-notifications-reference.md - learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/centralized-cloud-notifications-reference -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/alerts-and-notifications/notifications/centralized-cloud-notifications/manage-alert-notification-silencing-rules.md - learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/manage-alert-notification-silencing-rules -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/alerts-and-notifications/notifications/centralized-cloud-notifications/manage-notification-methods.md - learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/manage-notification-methods -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/learn/vm-templates.md - learn_path: /docs/netdata-agent/vm-templates -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/learn/switching-install-types.md - learn_path: /docs/netdata-agent/installation/linux/switch-install-types-and-release-channels -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/learn/node-identities.md - learn_path: /docs/netdata-agent/node-identities -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/learn/remove-node.md - learn_path: /docs/netdata-cloud/remove-agent -- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/learn/unclaim-reclaim-node.md - learn_path: /docs/netdata-cloud/unclaim-and-reclaim-a-node -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/claim/README.md - learn_path: /docs/netdata-cloud/connect-agent -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/plugins.d/FUNCTION_UI_DEVELOPER_GUIDE.md - learn_path: /docs/developer-and-contributor-corner/external-plugins/functions-developer-guide -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/plugins.d/README.md - learn_path: /docs/developer-and-contributor-corner/external-plugins -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/plugins.d/FUNCTION_UI_REFERENCE.md - learn_path: /docs/developer-and-contributor-corner/external-plugins/functions-v3-protocol-reference -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/exporters/shell/README.md - learn_path: /docs/exporting-metrics/shell-scripts -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/formatters/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/formatters -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/formatters/json/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/formatters/json-formatter -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/formatters/csv/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/formatters/csv-formatter -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/formatters/value/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/formatters/value-formatter -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/formatters/ssv/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/formatters/ssv-formatter -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/health/README.md - learn_path: /docs/alerts-&-notifications/health-api-calls -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/queries -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/ses/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/queries/single-or-simple-exponential-smoothing-ses -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/incremental_sum/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/queries/incremental-sum-incremental_sum -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/countif/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/queries/countif -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/max/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/queries/max -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/median/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/queries/median -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/average/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/queries/average-or-mean -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/sum/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/queries/sum -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/stddev/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/queries/standard-deviation-stddev -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/des/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/queries/double-exponential-smoothing -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/trimmed_mean/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/queries/trimmed-mean -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/percentile/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/queries/percentile -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/min/README.md - learn_path: /docs/developer-and-contributor-corner/rest-api/queries/min -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/server/README.md - learn_path: /docs/netdata-agent/configuration/securing-agents/web-server-reference -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/cli/README.md - learn_path: /docs/netdata-agent/agent-cli +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/visualization/summary-sankey.md + learn_path: /docs/network-flows/visualization/sankey-and-table +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/visualization/dashboard-cards.md + learn_path: /docs/network-flows/visualization/plugin-health-charts +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/visualization/filters-facets.md + learn_path: /docs/network-flows/visualization/filters-and-facets +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/network-flows/visualization/time-series.md + learn_path: /docs/network-flows/visualization/time-series +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/README.md + learn_path: /docs/netdata-cloud +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/organize-your-infrastructure-invite-your-team.md + learn_path: /docs/netdata-cloud/spaces-and-rooms +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/node-rule-based-room-assignment.md + learn_path: /docs/netdata-cloud/spaces-and-rooms/node-rule-based-room-assignment +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/view-plan-and-billing.md + learn_path: /docs/netdata-cloud/netdata-plans-&-billing +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/node-states-and-transitions.md + learn_path: /docs/netdata-cloud/node-states-and-transitions +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/authentication-and-authorization/README.md + learn_path: /docs/netdata-cloud/authentication-&-authorization +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/authentication-and-authorization/enterprise-sso-authentication.md + learn_path: /docs/netdata-cloud/authentication-&-authorization/enterprise-sso-authentication +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/authentication-and-authorization/role-based-access-model.md + learn_path: /docs/netdata-cloud/authentication-&-authorization/role-based-access-model +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/netdata-cloud/authentication-and-authorization/api-tokens.md + learn_path: /docs/netdata-cloud/authentication-&-authorization/api-tokens +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/exporting-metrics/enable-an-exporting-connector.md + learn_path: /docs/exporting-metrics/enable-an-exporting-connector +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/exporting-metrics/README.md + learn_path: /docs/exporting-metrics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/alerts-and-notifications/creating-alerts-with-netdata-alerts-configuration-manager.md + learn_path: /docs/alerts-&-notifications/creating-alerts-with-the-alerts-configuration-manager +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/alerts-and-notifications/notifications/README.md + learn_path: /docs/alerts-&-notifications/notifications +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/alerts-and-notifications/notifications/centralized-cloud-notifications/centralized-cloud-notifications-reference.md + learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/centralized-cloud-notifications-reference +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/alerts-and-notifications/notifications/centralized-cloud-notifications/manage-alert-notification-silencing-rules.md + learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/manage-alert-notification-silencing-rules +- custom_edit_url: https://github.com/netdata/netdata/edit/master/docs/alerts-and-notifications/notifications/centralized-cloud-notifications/manage-notification-methods.md + learn_path: /docs/alerts-&-notifications/notifications/centralized-cloud-notifications/manage-notification-methods - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/ibm.d/modules/as400/README.md learn_path: /docs/collecting-metrics/collectors/operating-systems/ibm-i-as-400 +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/ibm.d/modules/mq/README.md + learn_path: /docs/collecting-metrics/collectors/applications/ibm-mq - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/ibm.d/modules/websphere/mp/README.md learn_path: /docs/collecting-metrics/collectors/applications/ibm-websphere-microprofile -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/ibm.d/modules/websphere/pmi/README.md - learn_path: /docs/collecting-metrics/collectors/applications/ibm-websphere-pmi - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/ibm.d/modules/websphere/jmx/README.md learn_path: /docs/collecting-metrics/collectors/applications/ibm-websphere-jmx +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/ibm.d/modules/websphere/pmi/README.md + learn_path: /docs/collecting-metrics/collectors/applications/ibm-websphere-pmi - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/ibm.d/modules/db2/README.md learn_path: /docs/collecting-metrics/collectors/databases/ibm-db2 -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/ibm.d/modules/mq/README.md - learn_path: /docs/collecting-metrics/collectors/applications/ibm-mq -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/agent/secrets/secretstore/backends/vault/README.md - learn_path: /docs/collecting-metrics/secrets-management/secret-stores/vault +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/agent/secrets/secretstore/backends/gcp/README.md + learn_path: /docs/collecting-metrics/secrets-management/secret-stores/google-secret-manager - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/agent/secrets/secretstore/backends/azure/README.md learn_path: /docs/collecting-metrics/secrets-management/secret-stores/azure-key-vault - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/agent/secrets/secretstore/backends/aws/README.md learn_path: /docs/collecting-metrics/secrets-management/secret-stores/aws-secrets-manager -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/agent/secrets/secretstore/backends/gcp/README.md - learn_path: /docs/collecting-metrics/secrets-management/secret-stores/google-secret-manager +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/agent/secrets/secretstore/backends/vault/README.md + learn_path: /docs/collecting-metrics/secrets-management/secret-stores/vault +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/scripts.d/collector/nagios/README.md + learn_path: /docs/collecting-metrics/collectors/synthetic-testing/nagios-plugins-and-custom-scripts - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/README.md learn_path: /docs/developer-and-contributor-corner/external-plugins/go.d.plugin -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/uwsgi/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/uwsgi -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/isc_dhcpd/README.md - learn_path: /docs/collecting-metrics/collectors/networking/isc-dhcp -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/maxscale/README.md - learn_path: /docs/collecting-metrics/collectors/databases/maxscale -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/docker/README.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/docker -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/k8s_state/README.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/kubernetes-cluster-state +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/discovery/sdext/discoverer/dockersd/README.md + learn_path: /docs/collecting-metrics/service-discovery/docker +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/discovery/sdext/discoverer/httpsd/README.md + learn_path: /docs/collecting-metrics/service-discovery/http-endpoint +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/discovery/sdext/discoverer/netlistensd/README.md + learn_path: /docs/collecting-metrics/service-discovery/local-listening-processes +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/discovery/sdext/discoverer/snmpsd/README.md + learn_path: /docs/collecting-metrics/service-discovery/snmp +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/discovery/sdext/discoverer/k8ssd/README.md + learn_path: /docs/collecting-metrics/service-discovery/kubernetes +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/envoy/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/envoy +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/sql/README.md + learn_path: /docs/collecting-metrics/collectors/databases/sql-databases-generic +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/vcsa/README.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/vcenter-server-appliance +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/vsphere/README.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/vmware-vcenter-server +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/mongodb/README.md + learn_path: /docs/collecting-metrics/collectors/databases/mongodb +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/monit/README.md + learn_path: /docs/collecting-metrics/collectors/synthetic-testing/monit - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/logind/README.md learn_path: /docs/collecting-metrics/collectors/operating-systems/systemd-logind-users - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/powerdns_recursor/README.md learn_path: /docs/collecting-metrics/collectors/networking/powerdns-recursor -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/phpdaemon/README.md - learn_path: /docs/collecting-metrics/collectors/applications/phpdaemon -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/zfspool/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/zfs-pools -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/yugabytedb/README.md - learn_path: /docs/collecting-metrics/collectors/databases/yugabytedb -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/ntpd/README.md - learn_path: /docs/collecting-metrics/collectors/networking/ntpd +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/scaleio/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/dell-emc-scaleio +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/openvpn/README.md + learn_path: /docs/collecting-metrics/collectors/networking/openvpn +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/hdfs/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/hadoop-distributed-file-system-hdfs +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/phpfpm/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/php-fpm +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/uwsgi/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/uwsgi +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/litespeed/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/litespeed +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/openldap/README.md + learn_path: /docs/collecting-metrics/collectors/applications/openldap +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nsd/README.md + learn_path: /docs/collecting-metrics/collectors/networking/nsd +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/dovecot/README.md + learn_path: /docs/collecting-metrics/collectors/applications/dovecot +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/powervault/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/dell-powervault-me4-me5 +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/ap/README.md + learn_path: /docs/collecting-metrics/collectors/networking/access-points +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/cato_networks/README.md + learn_path: /docs/collecting-metrics/collectors/networking/cato-networks - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/w1sensor/README.md learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/1-wire-sensors -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/mssql/README.md - learn_path: /docs/collecting-metrics/collectors/databases/microsoft-sql-server -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/dnsmasq_dhcp/README.md - learn_path: /docs/collecting-metrics/collectors/networking/dnsmasq-dhcp -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nats/README.md - learn_path: /docs/collecting-metrics/collectors/databases/nats -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/cockroachdb/README.md - learn_path: /docs/collecting-metrics/collectors/databases/cockroachdb -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nginxplus/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/nginx-plus - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/dmcache/README.md learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/dmcache-devices -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/apache/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/apache -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/apache/integrations/httpd.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/httpd -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/redis/README.md - learn_path: /docs/collecting-metrics/collectors/databases/redis -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/icecast/README.md - learn_path: /docs/collecting-metrics/collectors/applications/icecast -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/powerdns/README.md - learn_path: /docs/collecting-metrics/collectors/networking/powerdns-authoritative-server -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/sql/README.md - learn_path: /docs/collecting-metrics/collectors/databases/sql-databases-generic +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/lvm/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/lvm-logical-volumes +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nginx/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/nginx +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/tor/README.md + learn_path: /docs/collecting-metrics/collectors/networking/tor +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/panos/README.md + learn_path: /docs/collecting-metrics/collectors/networking/palo-alto-networks-pan-os +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/dockerhub/README.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/docker-hub-repository +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/tengine/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/tengine +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/dnsmasq_dhcp/README.md + learn_path: /docs/collecting-metrics/collectors/networking/dnsmasq-dhcp +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/yugabytedb/README.md + learn_path: /docs/collecting-metrics/collectors/databases/yugabytedb +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/phpdaemon/README.md + learn_path: /docs/collecting-metrics/collectors/applications/phpdaemon +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/rabbitmq/README.md + learn_path: /docs/collecting-metrics/collectors/databases/rabbitmq +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/systemdunits/README.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/systemd-units +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/smartctl/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/s.m.a.r.t. +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/ceph/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ceph +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/squidlog/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/squid-log-files +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/traefik/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/traefik +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/rspamd/README.md + learn_path: /docs/collecting-metrics/collectors/applications/rspamd - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/intelgpu/README.md learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/intel-gpu -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/vernemq/README.md - learn_path: /docs/collecting-metrics/collectors/databases/vernemq -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/pihole/README.md - learn_path: /docs/collecting-metrics/collectors/networking/pi-hole -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/hddtemp/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/hdd-temperature -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/hpssa/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/hpe-smart-arrays -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/adaptecraid/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/adaptec-raid -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/postgres/README.md - learn_path: /docs/collecting-metrics/collectors/databases/postgresql -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/oracledb/README.md - learn_path: /docs/collecting-metrics/collectors/databases/oracle-db -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/exim/README.md - learn_path: /docs/collecting-metrics/collectors/applications/exim -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/boinc/README.md - learn_path: /docs/collecting-metrics/collectors/applications/boinc -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/apcupsd/README.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/apc-ups +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/ethtool/README.md + learn_path: /docs/collecting-metrics/collectors/networking/optical-modules +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/typesense/README.md + learn_path: /docs/collecting-metrics/collectors/databases/typesense +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/couchbase/README.md + learn_path: /docs/collecting-metrics/collectors/databases/couchbase +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/redis/README.md + learn_path: /docs/collecting-metrics/collectors/databases/redis +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/ipfs/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ipfs - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/ping/README.md learn_path: /docs/collecting-metrics/collectors/synthetic-testing/ping -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/wireguard/README.md - learn_path: /docs/collecting-metrics/collectors/networking/wireguard -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/rspamd/README.md - learn_path: /docs/collecting-metrics/collectors/applications/rspamd -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/proxysql/README.md - learn_path: /docs/collecting-metrics/collectors/databases/proxysql -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/snmp/profile-format.md - learn_path: /docs/collecting-metrics/snmp-profile-format -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/snmp/README.md - learn_path: /docs/collecting-metrics/collectors/networking/snmp-devices -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/upsd/README.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/ups-nut -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nvidia_smi/README.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/nvidia-gpu -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/lighttpd/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/lighttpd -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/storcli/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/storecli-raid -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/rethinkdb/README.md - learn_path: /docs/collecting-metrics/collectors/databases/rethinkdb -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/rabbitmq/README.md - learn_path: /docs/collecting-metrics/collectors/databases/rabbitmq -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/dnsdist/README.md - learn_path: /docs/collecting-metrics/collectors/networking/dnsdist -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/elasticsearch/README.md - learn_path: /docs/collecting-metrics/collectors/databases/elasticsearch -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/elasticsearch/integrations/opensearch.md - learn_path: /docs/collecting-metrics/collectors/databases/opensearch -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/haproxy/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/haproxy -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/clickhouse/README.md - learn_path: /docs/collecting-metrics/collectors/databases/clickhouse -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/openldap/README.md - learn_path: /docs/collecting-metrics/collectors/applications/openldap -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nginxunit/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/nginx-unit -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/ceph/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ceph -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_functions.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-functions -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_mysql_flexible_server.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-mysql-flexible-server -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_storage_account.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-storage-account -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_data_explorer_cluster.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-data-explorer-cluster -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_cognitive_services.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-cognitive-services -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_sql_elastic_pool.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-sql-elastic-pool -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_container_apps.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-container-apps -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_kubernetes_service_cluster.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-kubernetes-service-cluster -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_event_grid_topic.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-event-grid-topic -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_app_service.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-app-service -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_postgresql_flexible_server.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-postgresql-flexible-server -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_virtual_machine.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-virtual-machine -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_container_instances.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-container-instances -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_firewall.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-firewall -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_sql_database.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-sql-database -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_container_registry.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-container-registry -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_key_vault.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-key-vault -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_expressroute_gateway.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-expressroute-gateway -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_monitor.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-monitor -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_log_analytics_workspace.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-log-analytics-workspace -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_nat_gateway.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-nat-gateway -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_front_door.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-front-door -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_load_balancer.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-load-balancer -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_api_management.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-api-management -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_synapse_analytics_workspace.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-synapse-analytics-workspace -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_vpn_gateway.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-vpn-gateway -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_data_factory.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-data-factory -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_event_hubs_namespace.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-event-hubs-namespace -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_cache_for_redis.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-cache-for-redis -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_cosmos_db_account.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-cosmos-db-account -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_virtual_machine_scale_set.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-virtual-machine-scale-set -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_logic_apps_workflow.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-logic-apps-workflow -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_application_gateway.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-application-gateway -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_iot_hub.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-iot-hub -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_machine_learning_workspace.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-machine-learning-workspace -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_sql_managed_instance.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-sql-managed-instance -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_expressroute_circuit.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-expressroute-circuit -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_service_bus_namespace.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-service-bus-namespace -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_application_insights.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-application-insights -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_stream_analytics_job.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-stream-analytics-job -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/docker_engine/README.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/docker-engine -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nginx/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/nginx -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/k8s_kubelet/README.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/kubelet -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/phpfpm/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/php-fpm -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/vcsa/README.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/vcenter-server-appliance -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/tor/README.md - learn_path: /docs/collecting-metrics/collectors/networking/tor -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/dockerhub/README.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/docker-hub-repository -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/squidlog/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/squid-log-files -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/tomcat/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/tomcat -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/x509check/README.md - learn_path: /docs/collecting-metrics/collectors/synthetic-testing/x.509-certificate -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/puppet/README.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/puppet -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/vsphere/README.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/vmware-vcenter-server -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/portcheck/README.md - learn_path: /docs/collecting-metrics/collectors/synthetic-testing/tcp-udp-endpoints -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/pgbouncer/README.md - learn_path: /docs/collecting-metrics/collectors/databases/pgbouncer -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/litespeed/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/litespeed -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/httpcheck/README.md - learn_path: /docs/collecting-metrics/collectors/synthetic-testing/http-endpoints -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/monit/README.md - learn_path: /docs/collecting-metrics/collectors/synthetic-testing/monit -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/freeradius/README.md - learn_path: /docs/collecting-metrics/collectors/applications/freeradius -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/openvpn/README.md - learn_path: /docs/collecting-metrics/collectors/networking/openvpn -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/samba/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/samba -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/dnsmasq/README.md - learn_path: /docs/collecting-metrics/collectors/networking/dnsmasq -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/hdfs/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/hadoop-distributed-file-system-hdfs -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/mysql/README.md - learn_path: /docs/collecting-metrics/collectors/databases/mysql -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/mysql/integrations/percona_mysql.md - learn_path: /docs/collecting-metrics/collectors/databases/percona-mysql -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/mysql/integrations/mariadb.md - learn_path: /docs/collecting-metrics/collectors/databases/mariadb -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/scaleio/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/dell-emc-scaleio -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/lvm/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/lvm-logical-volumes -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/panos/README.md - learn_path: /docs/collecting-metrics/collectors/networking/palo-alto-networks-pan-os -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/whoisquery/README.md - learn_path: /docs/collecting-metrics/collectors/synthetic-testing/domain-expiration-date -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/ipfs/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ipfs -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/traefik/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/traefik -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/activemq/README.md - learn_path: /docs/collecting-metrics/collectors/databases/activemq -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/systemdunits/README.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/systemd-units -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/geth/README.md - learn_path: /docs/collecting-metrics/collectors/applications/go-ethereum -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/memcached/README.md - learn_path: /docs/collecting-metrics/collectors/databases/memcached -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/dovecot/README.md - learn_path: /docs/collecting-metrics/collectors/applications/dovecot -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/cato_networks/README.md - learn_path: /docs/collecting-metrics/collectors/networking/cato-networks -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/filecheck/README.md - learn_path: /docs/collecting-metrics/collectors/synthetic-testing/files-and-directories -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/couchdb/README.md - learn_path: /docs/collecting-metrics/collectors/databases/couchdb -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/weblog/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/web-server-log-files -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/fluentd/README.md - learn_path: /docs/collecting-metrics/collectors/applications/fluentd +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/docker/README.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/docker - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/beanstalk/README.md learn_path: /docs/collecting-metrics/collectors/databases/beanstalk -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/logstash/README.md - learn_path: /docs/collecting-metrics/collectors/applications/logstash -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/sensors/README.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/linux-sensors -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/k8s_kubeproxy/README.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/kubeproxy -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/typesense/README.md - learn_path: /docs/collecting-metrics/collectors/databases/typesense -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/dcgm/README.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/nvidia-data-center-gpu-manager-dcgm -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/smartctl/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/s.m.a.r.t. -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/zookeeper/README.md - learn_path: /docs/collecting-metrics/collectors/applications/zookeeper -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nsd/README.md - learn_path: /docs/collecting-metrics/collectors/networking/nsd -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/dnsquery/README.md - learn_path: /docs/collecting-metrics/collectors/synthetic-testing/dns-query -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/pulsar/README.md - learn_path: /docs/collecting-metrics/collectors/databases/apache-pulsar -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/spigotmc/README.md - learn_path: /docs/collecting-metrics/collectors/applications/spigotmc -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/unbound/README.md - learn_path: /docs/collecting-metrics/collectors/networking/unbound -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/consul/README.md - learn_path: /docs/collecting-metrics/collectors/applications/consul -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/riakkv/README.md - learn_path: /docs/collecting-metrics/collectors/databases/riak-kv -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nginxvts/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/nginx-vts -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/ethtool/README.md - learn_path: /docs/collecting-metrics/collectors/networking/optical-modules -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/postfix/README.md - learn_path: /docs/collecting-metrics/collectors/applications/postfix -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/openvpn_status_log/README.md - learn_path: /docs/collecting-metrics/collectors/networking/openvpn-status-log -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/varnish/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/varnish -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/envoy/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/envoy -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/supervisord/README.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/supervisor -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/megacli/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/megacli-megaraid -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/squid/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/squid -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/pika/README.md - learn_path: /docs/collecting-metrics/collectors/databases/pika -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/tengine/README.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/tengine -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/fail2ban/README.md - learn_path: /docs/collecting-metrics/collectors/applications/fail2ban -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/powerstore/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/dell-powerstore -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/ap/README.md - learn_path: /docs/collecting-metrics/collectors/networking/access-points -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/gearman/README.md - learn_path: /docs/collecting-metrics/collectors/applications/gearman -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/coredns/README.md - learn_path: /docs/collecting-metrics/collectors/networking/coredns -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/k8s_apiserver/README.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/kubernetes-api-server -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/powervault/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/dell-powervault-me4-me5 -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nvme/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/nvme-devices -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/couchbase/README.md - learn_path: /docs/collecting-metrics/collectors/databases/couchbase +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/dnsmasq/README.md + learn_path: /docs/collecting-metrics/collectors/networking/dnsmasq - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/README.md learn_path: /docs/collecting-metrics/collectors/applications/prometheus-endpoint -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/nrpe_daemon.md - learn_path: /docs/collecting-metrics/collectors/applications/nrpe-daemon +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/podman.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/podman +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/crowdsec.md + learn_path: /docs/collecting-metrics/collectors/applications/crowdsec +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/clamav_daemon.md + learn_path: /docs/collecting-metrics/collectors/applications/clamav-daemon +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/yourls_url_shortener.md + learn_path: /docs/collecting-metrics/collectors/applications/yourls-url-shortener +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/salicru_eqx_inverter.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/salicru-eqx-inverter +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/patroni.md + learn_path: /docs/collecting-metrics/collectors/databases/patroni +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/aws_quota.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/aws-quota +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/dynatrace.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/dynatrace +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/steam.md + learn_path: /docs/collecting-metrics/collectors/applications/steam +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/ripe_atlas.md + learn_path: /docs/collecting-metrics/collectors/networking/ripe-atlas +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/openrc.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/openrc +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/jenkins.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/jenkins +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/sma_inverters.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/sma-inverters +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/gcp_gce.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/gcp-gce +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/strongswan.md + learn_path: /docs/collecting-metrics/collectors/networking/strongswan +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/dmarc.md + learn_path: /docs/collecting-metrics/collectors/applications/dmarc - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/fastd.md learn_path: /docs/collecting-metrics/collectors/networking/fastd -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/siemens_s7_plc.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/siemens-s7-plc -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/shelly_humidity_sensor.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/shelly-humidity-sensor -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/jmx.md - learn_path: /docs/collecting-metrics/collectors/applications/jmx -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/powerpal_devices.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/powerpal-devices -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/aws_rds.md - learn_path: /docs/collecting-metrics/collectors/databases/aws-rds -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/google_cloud_platform.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/google-cloud-platform -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/sunspec_solar_energy.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/sunspec-solar-energy -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/sphinx.md - learn_path: /docs/collecting-metrics/collectors/databases/sphinx -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/blackbox.md - learn_path: /docs/collecting-metrics/collectors/synthetic-testing/blackbox -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/hubble.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/hubble -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/ibm_cryptoexpress_cex_cards.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/ibm-cryptoexpress-cex-cards -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/solis_ginlong_5g_inverters.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/solis-ginlong-5g-inverters -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/pimoroni_enviro+.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/pimoroni-enviro+ +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/openroadm_devices.md + learn_path: /docs/collecting-metrics/collectors/networking/openroadm-devices +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/ibm_z_hardware_management_console.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/ibm-z-hardware-management-console +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/tankerkoenig_api.md + learn_path: /docs/collecting-metrics/collectors/applications/tankerkoenig-api - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/ibm_spectrum.md learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ibm-spectrum -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/cilium_operator.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/cilium-operator -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/radio_thermostat.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/radio-thermostat -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/frrouting.md - learn_path: /docs/collecting-metrics/collectors/networking/frrouting -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/freifunk_network.md - learn_path: /docs/collecting-metrics/collectors/networking/freifunk-network -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/clamscan_results.md - learn_path: /docs/collecting-metrics/collectors/applications/clamscan-results -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/pgpool-ii.md - learn_path: /docs/collecting-metrics/collectors/databases/pgpool-ii -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/patroni.md - learn_path: /docs/collecting-metrics/collectors/databases/patroni +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/vertica.md + learn_path: /docs/collecting-metrics/collectors/databases/vertica +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/github_repository.md + learn_path: /docs/collecting-metrics/collectors/applications/github-repository +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/sabnzbd.md + learn_path: /docs/collecting-metrics/collectors/applications/sabnzbd +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/kafka_zookeeper.md + learn_path: /docs/collecting-metrics/collectors/databases/kafka-zookeeper +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/dutch_electricity_smart_meter.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/dutch-electricity-smart-meter +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/freebsd_nfs.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/freebsd-nfs +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/spacelift.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/spacelift +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/solar_logging_stick.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/solar-logging-stick +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/grafana.md + learn_path: /docs/collecting-metrics/collectors/applications/grafana +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/4d_server.md + learn_path: /docs/collecting-metrics/collectors/databases/4d-server +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/blackbox.md + learn_path: /docs/collecting-metrics/collectors/synthetic-testing/blackbox +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/nrpe_daemon.md + learn_path: /docs/collecting-metrics/collectors/applications/nrpe-daemon +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/honeypot.md + learn_path: /docs/collecting-metrics/collectors/applications/honeypot +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/craftbeerpi.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/craftbeerpi +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/radius.md + learn_path: /docs/collecting-metrics/collectors/applications/radius +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/elgato_key_light_devices..md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/elgato-key-light-devices. +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/redis_queue.md + learn_path: /docs/collecting-metrics/collectors/databases/redis-queue - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/cilium_agent.md learn_path: /docs/collecting-metrics/collectors/containers-and-vms/cilium-agent -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/vault_pki.md - learn_path: /docs/collecting-metrics/collectors/applications/vault-pki +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/linode.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/linode +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/bosh.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/bosh +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/personal_weather_station.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/personal-weather-station +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/gpsd.md + learn_path: /docs/collecting-metrics/collectors/applications/gpsd +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/sonic_nos.md + learn_path: /docs/collecting-metrics/collectors/networking/sonic-nos - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/warp10.md learn_path: /docs/collecting-metrics/collectors/databases/warp10 -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/openrc.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/openrc -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/radius.md - learn_path: /docs/collecting-metrics/collectors/applications/radius -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/christ_elektronik_clm5ip_power_panel.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/christ-elektronik-clm5ip-power-panel -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/storidge.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/storidge -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/xiaomi_mi_flora.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/xiaomi-mi-flora +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/8430ft_modem.md + learn_path: /docs/collecting-metrics/collectors/networking/8430ft-modem +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/generic_storage_enclosure_tool.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/generic-storage-enclosure-tool +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/bird_routing_daemon.md + learn_path: /docs/collecting-metrics/collectors/networking/bird-routing-daemon +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/concourse.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/concourse +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/shelly_humidity_sensor.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/shelly-humidity-sensor - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/collectd.md learn_path: /docs/collecting-metrics/collectors/applications/collectd -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/keepalived.md - learn_path: /docs/collecting-metrics/collectors/networking/keepalived -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/ibm_z_hardware_management_console.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/ibm-z-hardware-management-console -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/dynatrace.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/dynatrace -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/discourse.md - learn_path: /docs/collecting-metrics/collectors/applications/discourse -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/google_stackdriver.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/google-stackdriver -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/openroadm_devices.md - learn_path: /docs/collecting-metrics/collectors/networking/openroadm-devices -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/netatmo_sensors.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/netatmo-sensors - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/sysload.md learn_path: /docs/collecting-metrics/collectors/applications/sysload -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/site_24x7.md - learn_path: /docs/collecting-metrics/collectors/synthetic-testing/site-24x7 -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/ibm_mq.md - learn_path: /docs/collecting-metrics/collectors/databases/ibm-mq -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/clamav_daemon.md - learn_path: /docs/collecting-metrics/collectors/applications/clamav-daemon -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/scylladb.md - learn_path: /docs/collecting-metrics/collectors/databases/scylladb -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/energomera_smart_power_meters.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/energomera-smart-power-meters +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/influxdb.md + learn_path: /docs/collecting-metrics/collectors/databases/influxdb - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/mqtt_blackbox.md learn_path: /docs/collecting-metrics/collectors/synthetic-testing/mqtt-blackbox -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/github_repository.md - learn_path: /docs/collecting-metrics/collectors/applications/github-repository -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/nature_remo_e_lite_devices.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/nature-remo-e-lite-devices +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/site_24x7.md + learn_path: /docs/collecting-metrics/collectors/synthetic-testing/site-24x7 +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/aws_rds.md + learn_path: /docs/collecting-metrics/collectors/databases/aws-rds +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/cloudwatch.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/cloudwatch +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/cryptowatch.md + learn_path: /docs/collecting-metrics/collectors/applications/cryptowatch +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/aws_ec2_compute_instances.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/aws-ec2-compute-instances +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/gobetween.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/gobetween +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/hubble.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/hubble +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/sphinx.md + learn_path: /docs/collecting-metrics/collectors/databases/sphinx +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/proxmox_ve.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/proxmox-ve - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/tesla_wall_connector.md learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/tesla-wall-connector -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/redis_queue.md - learn_path: /docs/collecting-metrics/collectors/databases/redis-queue -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/freebsd_rctl-racct.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/freebsd-rctl-racct -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/sma_inverters.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/sma-inverters -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/salicru_eqx_inverter.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/salicru-eqx-inverter -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/open_vswitch.md - learn_path: /docs/collecting-metrics/collectors/networking/open-vswitch -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/cilium_proxy.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/cilium-proxy -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/mosquitto.md - learn_path: /docs/collecting-metrics/collectors/databases/mosquitto - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/graylog_server.md learn_path: /docs/collecting-metrics/collectors/applications/graylog-server -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/8430ft_modem.md - learn_path: /docs/collecting-metrics/collectors/networking/8430ft-modem -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/synology_activebackup.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/synology-activebackup -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/kafka.md - learn_path: /docs/collecting-metrics/collectors/databases/kafka +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/proftpd.md + learn_path: /docs/collecting-metrics/collectors/applications/proftpd +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/clash.md + learn_path: /docs/collecting-metrics/collectors/networking/clash +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/alamos_fe2_server.md + learn_path: /docs/collecting-metrics/collectors/applications/alamos-fe2-server +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/mesos.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/mesos +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/lustre_metadata.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/lustre-metadata +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/vscode.md + learn_path: /docs/collecting-metrics/collectors/applications/vscode - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/ubiquiti_ufiber_olt.md learn_path: /docs/collecting-metrics/collectors/networking/ubiquiti-ufiber-olt -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/cloud_foundry_firehose.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/cloud-foundry-firehose -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/personal_weather_station.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/personal-weather-station -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/dmarc.md - learn_path: /docs/collecting-metrics/collectors/applications/dmarc -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/jarvis_standing_desk.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/jarvis-standing-desk -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/lynis_audit_reports.md - learn_path: /docs/collecting-metrics/collectors/applications/lynis-audit-reports -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/kafka_consumer_lag.md - learn_path: /docs/collecting-metrics/collectors/databases/kafka-consumer-lag -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/4d_server.md - learn_path: /docs/collecting-metrics/collectors/databases/4d-server +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/discourse.md + learn_path: /docs/collecting-metrics/collectors/applications/discourse +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/solis_ginlong_5g_inverters.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/solis-ginlong-5g-inverters +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/scylladb.md + learn_path: /docs/collecting-metrics/collectors/databases/scylladb +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/tado_smart_heating_solution.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/tado-smart-heating-solution - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/openweathermap.md learn_path: /docs/collecting-metrics/collectors/applications/openweathermap -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/smart_meters_sml.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/smart-meters-sml -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/apicast.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/apicast -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/sabnzbd.md - learn_path: /docs/collecting-metrics/collectors/applications/sabnzbd -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/suricata.md - learn_path: /docs/collecting-metrics/collectors/applications/suricata -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/meilisearch.md - learn_path: /docs/collecting-metrics/collectors/databases/meilisearch -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/homebridge.md - learn_path: /docs/collecting-metrics/collectors/applications/homebridge -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/generic_storage_enclosure_tool.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/generic-storage-enclosure-tool +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/github_api_rate_limit.md + learn_path: /docs/collecting-metrics/collectors/applications/github-api-rate-limit - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/softether_vpn_server.md learn_path: /docs/collecting-metrics/collectors/networking/softether-vpn-server -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/gobetween.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/gobetween -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/mtail.md - learn_path: /docs/collecting-metrics/collectors/applications/mtail -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/proftpd.md - learn_path: /docs/collecting-metrics/collectors/applications/proftpd -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/chia.md - learn_path: /docs/collecting-metrics/collectors/applications/chia -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/minecraft.md - learn_path: /docs/collecting-metrics/collectors/applications/minecraft -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/vertica.md - learn_path: /docs/collecting-metrics/collectors/databases/vertica -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/homey.md - learn_path: /docs/collecting-metrics/collectors/applications/homey -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/eos.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/eos -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/freebsd_nfs.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/freebsd-nfs - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/hana.md learn_path: /docs/collecting-metrics/collectors/databases/hana -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/podman.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/podman -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/ibm_spectrum_virtualize.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ibm-spectrum-virtualize -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/bird_routing_daemon.md - learn_path: /docs/collecting-metrics/collectors/networking/bird-routing-daemon -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/etcd.md - learn_path: /docs/collecting-metrics/collectors/applications/etcd -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/cloud_foundry.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/cloud-foundry -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/amd_cpu_&_gpu.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/amd-cpu-&-gpu -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/grafana.md - learn_path: /docs/collecting-metrics/collectors/applications/grafana -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/statuspage.md - learn_path: /docs/collecting-metrics/collectors/applications/statuspage -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/gpsd.md - learn_path: /docs/collecting-metrics/collectors/applications/gpsd -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/bosh.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/bosh -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/twitch.md - learn_path: /docs/collecting-metrics/collectors/applications/twitch -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/tankerkoenig_api.md - learn_path: /docs/collecting-metrics/collectors/applications/tankerkoenig-api -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/strongswan.md - learn_path: /docs/collecting-metrics/collectors/networking/strongswan -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/journald.md - learn_path: /docs/collecting-metrics/collectors/applications/journald -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/gcp_gce.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/gcp-gce -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/kannel.md - learn_path: /docs/collecting-metrics/collectors/applications/kannel -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/gitlab_runner.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/gitlab-runner -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/github_api_rate_limit.md - learn_path: /docs/collecting-metrics/collectors/applications/github-api-rate-limit -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/steam.md - learn_path: /docs/collecting-metrics/collectors/applications/steam -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/tado_smart_heating_solution.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/tado-smart-heating-solution -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/bungeecord.md - learn_path: /docs/collecting-metrics/collectors/applications/bungeecord -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/ibm_aix_systems_njmon.md - learn_path: /docs/collecting-metrics/collectors/applications/ibm-aix-systems-njmon -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/starlink_spacex.md - learn_path: /docs/collecting-metrics/collectors/networking/starlink-spacex -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/craftbeerpi.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/craftbeerpi -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/slurm.md - learn_path: /docs/collecting-metrics/collectors/applications/slurm -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/dutch_electricity_smart_meter.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/dutch-electricity-smart-meter -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/kafka_zookeeper.md - learn_path: /docs/collecting-metrics/collectors/databases/kafka-zookeeper +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/clustercontrol_cmon.md + learn_path: /docs/collecting-metrics/collectors/databases/clustercontrol-cmon +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/freifunk_network.md + learn_path: /docs/collecting-metrics/collectors/networking/freifunk-network +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/uptimerobot.md + learn_path: /docs/collecting-metrics/collectors/synthetic-testing/uptimerobot +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/cloud_foundry.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/cloud-foundry +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/twitch.md + learn_path: /docs/collecting-metrics/collectors/applications/twitch +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/hitron_coda_cable_modem.md + learn_path: /docs/collecting-metrics/collectors/networking/hitron-coda-cable-modem +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/christ_elektronik_clm5ip_power_panel.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/christ-elektronik-clm5ip-power-panel +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/freebsd_rctl-racct.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/freebsd-rctl-racct +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/sunspec_solar_energy.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/sunspec-solar-energy +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/cilium_proxy.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/cilium-proxy +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/zerto.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/zerto +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/philips_hue.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/philips-hue +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/kafka.md + learn_path: /docs/collecting-metrics/collectors/databases/kafka +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/open_vswitch.md + learn_path: /docs/collecting-metrics/collectors/networking/open-vswitch +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/google_stackdriver.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/google-stackdriver - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/loki.md learn_path: /docs/collecting-metrics/collectors/applications/loki +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/statuspage.md + learn_path: /docs/collecting-metrics/collectors/applications/statuspage +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/etcd.md + learn_path: /docs/collecting-metrics/collectors/applications/etcd +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/lynis_audit_reports.md + learn_path: /docs/collecting-metrics/collectors/applications/lynis-audit-reports +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/jarvis_standing_desk.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/jarvis-standing-desk +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/nextcloud_servers.md + learn_path: /docs/collecting-metrics/collectors/applications/nextcloud-servers +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/jmx.md + learn_path: /docs/collecting-metrics/collectors/applications/jmx +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/siemens_s7_plc.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/siemens-s7-plc +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/radio_thermostat.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/radio-thermostat +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/smart_meters_sml.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/smart-meters-sml +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/chia.md + learn_path: /docs/collecting-metrics/collectors/applications/chia +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/storidge.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/storidge - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/obs_studio.md learn_path: /docs/collecting-metrics/collectors/applications/obs-studio -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/uptimerobot.md - learn_path: /docs/collecting-metrics/collectors/synthetic-testing/uptimerobot -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/yourls_url_shortener.md - learn_path: /docs/collecting-metrics/collectors/applications/yourls-url-shortener -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/vscode.md - learn_path: /docs/collecting-metrics/collectors/applications/vscode +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/kannel.md + learn_path: /docs/collecting-metrics/collectors/applications/kannel +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/xiaomi_mi_flora.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/xiaomi-mi-flora +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/starlink_spacex.md + learn_path: /docs/collecting-metrics/collectors/networking/starlink-spacex +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/minecraft.md + learn_path: /docs/collecting-metrics/collectors/applications/minecraft +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/sense_energy.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/sense-energy - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/halon.md learn_path: /docs/collecting-metrics/collectors/applications/halon -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/influxdb.md - learn_path: /docs/collecting-metrics/collectors/databases/influxdb +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/journald.md + learn_path: /docs/collecting-metrics/collectors/applications/journald +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/ibm_spectrum_virtualize.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ibm-spectrum-virtualize +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/homebridge.md + learn_path: /docs/collecting-metrics/collectors/applications/homebridge +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/modbus_protocol.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/modbus-protocol +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/dnsbl.md + learn_path: /docs/collecting-metrics/collectors/networking/dnsbl +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/eos.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/eos +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/tesla_vehicle.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/tesla-vehicle +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/google_cloud_platform.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/google-cloud-platform +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/tacacs.md + learn_path: /docs/collecting-metrics/collectors/applications/tacacs - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/pgbackrest.md learn_path: /docs/collecting-metrics/collectors/databases/pgbackrest -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/cloudwatch.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/cloudwatch -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/philips_hue.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/philips-hue -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/sense_energy.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/sense-energy -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/hitron_coda_cable_modem.md - learn_path: /docs/collecting-metrics/collectors/networking/hitron-coda-cable-modem - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/authlog.md learn_path: /docs/collecting-metrics/collectors/applications/authlog -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/cryptowatch.md - learn_path: /docs/collecting-metrics/collectors/applications/cryptowatch -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/honeypot.md - learn_path: /docs/collecting-metrics/collectors/applications/honeypot -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/alamos_fe2_server.md - learn_path: /docs/collecting-metrics/collectors/applications/alamos-fe2-server -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/netapp_ontap_api.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/netapp-ontap-api -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/dnsbl.md - learn_path: /docs/collecting-metrics/collectors/networking/dnsbl -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/celery.md - learn_path: /docs/collecting-metrics/collectors/applications/celery +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/amd_cpu_&_gpu.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/amd-cpu-&-gpu +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/clamscan_results.md + learn_path: /docs/collecting-metrics/collectors/applications/clamscan-results +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/cloud_foundry_firehose.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/cloud-foundry-firehose - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/netapp_solidfire.md learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/netapp-solidfire +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/slurm.md + learn_path: /docs/collecting-metrics/collectors/applications/slurm +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/cilium_operator.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/cilium-operator +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/synology_activebackup.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/synology-activebackup +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/frrouting.md + learn_path: /docs/collecting-metrics/collectors/networking/frrouting +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/mtail.md + learn_path: /docs/collecting-metrics/collectors/applications/mtail +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/raritan_pdu.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/raritan-pdu +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/kafka_consumer_lag.md + learn_path: /docs/collecting-metrics/collectors/databases/kafka-consumer-lag - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/mogilefs.md learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/mogilefs +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/ibm_aix_systems_njmon.md + learn_path: /docs/collecting-metrics/collectors/applications/ibm-aix-systems-njmon +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/bungeecord.md + learn_path: /docs/collecting-metrics/collectors/applications/bungeecord +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/vault_pki.md + learn_path: /docs/collecting-metrics/collectors/applications/vault-pki +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/mosquitto.md + learn_path: /docs/collecting-metrics/collectors/databases/mosquitto +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/keepalived.md + learn_path: /docs/collecting-metrics/collectors/networking/keepalived +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/ibm_cryptoexpress_cex_cards.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/ibm-cryptoexpress-cex-cards +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/meilisearch.md + learn_path: /docs/collecting-metrics/collectors/databases/meilisearch +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/pgpool-ii.md + learn_path: /docs/collecting-metrics/collectors/databases/pgpool-ii +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/netatmo_sensors.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/netatmo-sensors +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/gitlab_runner.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/gitlab-runner +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/homey.md + learn_path: /docs/collecting-metrics/collectors/applications/homey +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/energomera_smart_power_meters.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/energomera-smart-power-meters - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/nextdns.md learn_path: /docs/collecting-metrics/collectors/networking/nextdns - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/google_pagespeed.md learn_path: /docs/collecting-metrics/collectors/applications/google-pagespeed -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/sonic_nos.md - learn_path: /docs/collecting-metrics/collectors/networking/sonic-nos -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/crowdsec.md - learn_path: /docs/collecting-metrics/collectors/applications/crowdsec -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/elgato_key_light_devices..md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/elgato-key-light-devices. -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/mesos.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/mesos -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/raritan_pdu.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/raritan-pdu -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/aws_quota.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/aws-quota -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/jenkins.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/jenkins -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/modbus_protocol.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/modbus-protocol -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/linode.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/linode -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/proxmox_ve.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/proxmox-ve -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/spacelift.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/spacelift -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/nextcloud_servers.md - learn_path: /docs/collecting-metrics/collectors/applications/nextcloud-servers -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/tacacs.md - learn_path: /docs/collecting-metrics/collectors/applications/tacacs -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/clustercontrol_cmon.md - learn_path: /docs/collecting-metrics/collectors/databases/clustercontrol-cmon -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/lustre_metadata.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/lustre-metadata -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/ripe_atlas.md - learn_path: /docs/collecting-metrics/collectors/networking/ripe-atlas -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/zerto.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/zerto -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/tesla_vehicle.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/tesla-vehicle -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/aws_ec2_compute_instances.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/aws-ec2-compute-instances -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/clash.md - learn_path: /docs/collecting-metrics/collectors/networking/clash -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/solar_logging_stick.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/solar-logging-stick -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/concourse.md - learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/concourse +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/suricata.md + learn_path: /docs/collecting-metrics/collectors/applications/suricata +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/celery.md + learn_path: /docs/collecting-metrics/collectors/applications/celery +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/netapp_ontap_api.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/netapp-ontap-api +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/apicast.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/apicast +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/nature_remo_e_lite_devices.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/nature-remo-e-lite-devices +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/pimoroni_enviro+.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/pimoroni-enviro+ +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/ibm_mq.md + learn_path: /docs/collecting-metrics/collectors/databases/ibm-mq +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/prometheus/integrations/powerpal_devices.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/powerpal-devices +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/k8s_kubeproxy/README.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/kubeproxy +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/spigotmc/README.md + learn_path: /docs/collecting-metrics/collectors/applications/spigotmc +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nginxvts/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/nginx-vts +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/dnsquery/README.md + learn_path: /docs/collecting-metrics/collectors/synthetic-testing/dns-query +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nginxunit/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/nginx-unit +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nvidia_smi/README.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/nvidia-gpu +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/consul/README.md + learn_path: /docs/collecting-metrics/collectors/applications/consul +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/coredns/README.md + learn_path: /docs/collecting-metrics/collectors/networking/coredns +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/oracledb/README.md + learn_path: /docs/collecting-metrics/collectors/databases/oracle-db +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/apache/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/apache +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/apache/integrations/httpd.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/httpd +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/weblog/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/web-server-log-files +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nginxplus/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/nginx-plus +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/wireguard/README.md + learn_path: /docs/collecting-metrics/collectors/networking/wireguard +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/megacli/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/megacli-megaraid +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/dnsdist/README.md + learn_path: /docs/collecting-metrics/collectors/networking/dnsdist +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/pulsar/README.md + learn_path: /docs/collecting-metrics/collectors/databases/apache-pulsar +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/lighttpd/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/lighttpd +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/memcached/README.md + learn_path: /docs/collecting-metrics/collectors/databases/memcached +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/tomcat/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/tomcat +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nats/README.md + learn_path: /docs/collecting-metrics/collectors/databases/nats +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/icecast/README.md + learn_path: /docs/collecting-metrics/collectors/applications/icecast +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/pika/README.md + learn_path: /docs/collecting-metrics/collectors/databases/pika +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/varnish/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/varnish +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/whoisquery/README.md + learn_path: /docs/collecting-metrics/collectors/synthetic-testing/domain-expiration-date +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/logstash/README.md + learn_path: /docs/collecting-metrics/collectors/applications/logstash +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/supervisord/README.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/supervisor +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/pgbouncer/README.md + learn_path: /docs/collecting-metrics/collectors/databases/pgbouncer +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/activemq/README.md + learn_path: /docs/collecting-metrics/collectors/databases/activemq +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/mysql/README.md + learn_path: /docs/collecting-metrics/collectors/databases/mysql +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/mysql/integrations/percona_mysql.md + learn_path: /docs/collecting-metrics/collectors/databases/percona-mysql +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/mysql/integrations/mariadb.md + learn_path: /docs/collecting-metrics/collectors/databases/mariadb +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/gearman/README.md + learn_path: /docs/collecting-metrics/collectors/applications/gearman +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/httpcheck/README.md + learn_path: /docs/collecting-metrics/collectors/synthetic-testing/http-endpoints +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/samba/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/samba +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/squid/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/squid +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/vernemq/README.md + learn_path: /docs/collecting-metrics/collectors/databases/vernemq +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/exim/README.md + learn_path: /docs/collecting-metrics/collectors/applications/exim +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/apcupsd/README.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/apc-ups +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/hddtemp/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/hdd-temperature +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/k8s_apiserver/README.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/kubernetes-api-server +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/zfspool/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/zfs-pools +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/docker_engine/README.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/docker-engine +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/snmp/profile-format.md + learn_path: /docs/collecting-metrics/snmp-profile-format +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/snmp/README.md + learn_path: /docs/collecting-metrics/collectors/networking/snmp-devices +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/x509check/README.md + learn_path: /docs/collecting-metrics/collectors/synthetic-testing/x.509-certificate +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/ntpd/README.md + learn_path: /docs/collecting-metrics/collectors/networking/ntpd +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/snmp_traps/README.md + learn_path: /docs/collecting-metrics/collectors/networking/snmp-trap-listener - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/chrony/README.md learn_path: /docs/collecting-metrics/collectors/networking/chrony -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/mongodb/README.md - learn_path: /docs/collecting-metrics/collectors/databases/mongodb -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/cassandra/README.md - learn_path: /docs/collecting-metrics/collectors/databases/cassandra -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/discovery/sdext/discoverer/httpsd/README.md - learn_path: /docs/collecting-metrics/service-discovery/http-endpoint -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/discovery/sdext/discoverer/snmpsd/README.md - learn_path: /docs/collecting-metrics/service-discovery/snmp -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/discovery/sdext/discoverer/netlistensd/README.md - learn_path: /docs/collecting-metrics/service-discovery/local-listening-processes -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/discovery/sdext/discoverer/dockersd/README.md - learn_path: /docs/collecting-metrics/service-discovery/docker -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/discovery/sdext/discoverer/k8ssd/README.md - learn_path: /docs/collecting-metrics/service-discovery/kubernetes -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/scripts.d/collector/nagios/README.md - learn_path: /docs/collecting-metrics/collectors/synthetic-testing/nagios-plugins-and-custom-scripts -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/registry/CONFIGURATION.md - learn_path: /docs/netdata-agent/configuration/registry -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/registry/README.md - learn_path: /docs/netdata-agent/registry -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/alert-configuration-ordering.md - learn_path: /docs/alerts-&-notifications/alert-configuration-ordering -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/overriding-stock-alerts.md - learn_path: /docs/alerts-&-notifications/overriding-stock-alerts -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/REFERENCE.md - learn_path: /docs/alerts-&-notifications/alert-configuration-reference -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/README.md - learn_path: /docs/alerts-&-notifications -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/agent-notifications-reference -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/irc/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/irc -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/flock/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/flock -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/dynatrace/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/dynatrace -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/rocketchat/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/rocketchat -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/matrix/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/matrix -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/ilert/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/ilert -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/opsgenie/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/opsgenie -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/messagebird/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/messagebird -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/msteams/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/microsoft-teams -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/email/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/email -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/slack/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/slack -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/ntfy/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/ntfy -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/twilio/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/twilio -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/prowl/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/prowl -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/pagerduty/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/pagerduty -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/smseagle/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/smseagle -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/alerta/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/alerta -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/smstools3/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/sms -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/discord/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/discord -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/custom/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/custom -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/pushover/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/pushover -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/awssns/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/aws-sns -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/signl4/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/signl4 -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/kavenegar/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/kavenegar -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/telegram/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/telegram -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/syslog/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/syslog -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/pushbullet/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/pushbullet -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/gotify/README.md - learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/gotify +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/hpssa/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/hpe-smart-arrays +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/dcgm/README.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/nvidia-data-center-gpu-manager-dcgm +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_event_hubs_namespace.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-event-hubs-namespace +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_cosmos_db_account.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-cosmos-db-account +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_virtual_machine.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-virtual-machine +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_firewall.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-firewall +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_log_analytics_workspace.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-log-analytics-workspace +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_synapse_analytics_workspace.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-synapse-analytics-workspace +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_functions.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-functions +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_cognitive_services.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-cognitive-services +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_monitor.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-monitor +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_container_apps.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-container-apps +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_mysql_flexible_server.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-mysql-flexible-server +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_data_factory.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-data-factory +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_expressroute_circuit.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-expressroute-circuit +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_key_vault.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-key-vault +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_nat_gateway.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-nat-gateway +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_api_management.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-api-management +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_logic_apps_workflow.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-logic-apps-workflow +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_application_insights.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-application-insights +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_postgresql_flexible_server.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-postgresql-flexible-server +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_event_grid_topic.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-event-grid-topic +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_vpn_gateway.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-vpn-gateway +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_kubernetes_service_cluster.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-kubernetes-service-cluster +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_cache_for_redis.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-cache-for-redis +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_storage_account.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-storage-account +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_iot_hub.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-iot-hub +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_container_instances.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-container-instances +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_sql_database.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-sql-database +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_virtual_machine_scale_set.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-virtual-machine-scale-set +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_service_bus_namespace.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-service-bus-namespace +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_front_door.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-front-door +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_load_balancer.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-load-balancer +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_stream_analytics_job.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-stream-analytics-job +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_container_registry.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-container-registry +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_sql_managed_instance.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-sql-managed-instance +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_machine_learning_workspace.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-machine-learning-workspace +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_data_explorer_cluster.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-data-explorer-cluster +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_sql_elastic_pool.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-sql-elastic-pool +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_application_gateway.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-application-gateway +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_expressroute_gateway.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-expressroute-gateway +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/azure_monitor/integrations/azure_app_service.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/azure-app-service +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/geth/README.md + learn_path: /docs/collecting-metrics/collectors/applications/go-ethereum +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/unbound/README.md + learn_path: /docs/collecting-metrics/collectors/networking/unbound +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/maxscale/README.md + learn_path: /docs/collecting-metrics/collectors/databases/maxscale +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/k8s_state/README.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/kubernetes-cluster-state +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/fluentd/README.md + learn_path: /docs/collecting-metrics/collectors/applications/fluentd +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/storcli/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/storecli-raid +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/powerdns/README.md + learn_path: /docs/collecting-metrics/collectors/networking/powerdns-authoritative-server +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/fail2ban/README.md + learn_path: /docs/collecting-metrics/collectors/applications/fail2ban +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/proxysql/README.md + learn_path: /docs/collecting-metrics/collectors/databases/proxysql +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/puppet/README.md + learn_path: /docs/collecting-metrics/collectors/cloud-and-devops/puppet +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/zookeeper/README.md + learn_path: /docs/collecting-metrics/collectors/applications/zookeeper +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/adaptecraid/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/adaptec-raid +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/riakkv/README.md + learn_path: /docs/collecting-metrics/collectors/databases/riak-kv +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/portcheck/README.md + learn_path: /docs/collecting-metrics/collectors/synthetic-testing/tcp-udp-endpoints +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/openvpn_status_log/README.md + learn_path: /docs/collecting-metrics/collectors/networking/openvpn-status-log +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/haproxy/README.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/haproxy +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/couchdb/README.md + learn_path: /docs/collecting-metrics/collectors/databases/couchdb +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/pihole/README.md + learn_path: /docs/collecting-metrics/collectors/networking/pi-hole +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/boinc/README.md + learn_path: /docs/collecting-metrics/collectors/applications/boinc +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/k8s_kubelet/README.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/kubelet +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/isc_dhcpd/README.md + learn_path: /docs/collecting-metrics/collectors/networking/isc-dhcp +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/rethinkdb/README.md + learn_path: /docs/collecting-metrics/collectors/databases/rethinkdb +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/elasticsearch/README.md + learn_path: /docs/collecting-metrics/collectors/databases/elasticsearch +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/elasticsearch/integrations/opensearch.md + learn_path: /docs/collecting-metrics/collectors/databases/opensearch +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/nvme/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/nvme-devices +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/filecheck/README.md + learn_path: /docs/collecting-metrics/collectors/synthetic-testing/files-and-directories +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/clickhouse/README.md + learn_path: /docs/collecting-metrics/collectors/databases/clickhouse +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/postfix/README.md + learn_path: /docs/collecting-metrics/collectors/applications/postfix +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/powerstore/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/dell-powerstore +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/mssql/README.md + learn_path: /docs/collecting-metrics/collectors/databases/microsoft-sql-server +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/cockroachdb/README.md + learn_path: /docs/collecting-metrics/collectors/databases/cockroachdb +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/cassandra/README.md + learn_path: /docs/collecting-metrics/collectors/databases/cassandra +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/freeradius/README.md + learn_path: /docs/collecting-metrics/collectors/applications/freeradius +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/upsd/README.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/ups-nut +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/postgres/README.md + learn_path: /docs/collecting-metrics/collectors/databases/postgresql +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/sensors/README.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/linux-sensors +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/claim/README.md + learn_path: /docs/netdata-cloud/connect-agent +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/formatters/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/formatters +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/formatters/csv/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/formatters/csv-formatter +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/formatters/json/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/formatters/json-formatter +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/formatters/ssv/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/formatters/ssv-formatter +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/formatters/value/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/formatters/value-formatter +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/exporters/shell/README.md + learn_path: /docs/exporting-metrics/shell-scripts +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/queries +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/min/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/queries/min +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/stddev/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/queries/standard-deviation-stddev +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/average/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/queries/average-or-mean +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/sum/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/queries/sum +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/des/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/queries/double-exponential-smoothing +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/ses/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/queries/single-or-simple-exponential-smoothing-ses +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/incremental_sum/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/queries/incremental-sum-incremental_sum +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/countif/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/queries/countif +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/trimmed_mean/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/queries/trimmed-mean +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/median/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/queries/median +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/percentile/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/queries/percentile +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/queries/max/README.md + learn_path: /docs/developer-and-contributor-corner/rest-api/queries/max +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/api/health/README.md + learn_path: /docs/alerts-&-notifications/health-api-calls +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/web/server/README.md + learn_path: /docs/netdata-agent/configuration/securing-agents/web-server-reference - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/streaming/README.md learn_path: /docs/netdata-parents/parent-child-configuration-reference -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/daemon/README.md - learn_path: /docs/netdata-agent/daemon -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/daemon/config/README.md - learn_path: /docs/netdata-agent/configuration/daemon -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/COLLECTORS.md - learn_path: /docs/welcome-to-netdata/monitor-anything +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/README.md + learn_path: /docs/collecting-metrics - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/REFERENCE.md learn_path: /docs/collecting-metrics/collectors-configuration - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/SECRETS.md learn_path: /docs/collecting-metrics/secrets-management -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/README.md - learn_path: /docs/collecting-metrics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cups.plugin/README.md - learn_path: /docs/collecting-metrics/collectors/applications/cups -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows-events.plugin/README.md - learn_path: /docs/logs/windows-event-logs/windows-events-plugin-reference -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/macos.plugin/README.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/macos -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/softirq_statistics.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/softirq-statistics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/system_load_average.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/system-load-average -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/interrupts.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/interrupts -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/nfs_client.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/nfs-client -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/wireless_network_interfaces.md - learn_path: /docs/collecting-metrics/collectors/networking/wireless-network-interfaces -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/system_uptime.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/system-uptime -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/kernel_same-page_merging.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/kernel-same-page-merging -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/memory_modules_dimms.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/memory-modules-dimms -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/socket_statistics.md - learn_path: /docs/collecting-metrics/collectors/networking/socket-statistics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/sctp_statistics.md - learn_path: /docs/collecting-metrics/collectors/networking/sctp-statistics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/entropy.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/entropy -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/zfs_adaptive_replacement_cache.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/zfs-adaptive-replacement-cache -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/network_statistics.md - learn_path: /docs/collecting-metrics/collectors/networking/network-statistics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/network_interfaces.md - learn_path: /docs/collecting-metrics/collectors/networking/network-interfaces -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/amd_gpu.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/amd-gpu -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/memory_usage.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/memory-usage -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/inter_process_communication.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/inter-process-communication -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/pressure_stall_information.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/pressure-stall-information -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/infiniband.md - learn_path: /docs/collecting-metrics/collectors/networking/infiniband -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/md_raid.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/md-raid -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/conntrack.md - learn_path: /docs/collecting-metrics/collectors/networking/conntrack -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/zram.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/zram -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/synproxy.md - learn_path: /docs/collecting-metrics/collectors/networking/synproxy -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/memory_statistics.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/memory-statistics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/non-uniform_memory_access.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/non-uniform-memory-access -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/ip_virtual_server.md - learn_path: /docs/collecting-metrics/collectors/networking/ip-virtual-server -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/bcache.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/bcache -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/softnet_statistics.md - learn_path: /docs/collecting-metrics/collectors/networking/softnet-statistics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/power_supply.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/power-supply -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/nfs_server.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/nfs-server -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/btrfs.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/btrfs -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/ipv6_socket_statistics.md - learn_path: /docs/collecting-metrics/collectors/networking/ipv6-socket-statistics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/disk_statistics.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/disk-statistics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/page_types.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/page-types -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/system_statistics.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/system-statistics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/slabinfo.plugin/README.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/linux-kernel-slab-allocator-statistics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ioping.plugin/README.md - learn_path: /docs/collecting-metrics/collectors/synthetic-testing/ioping -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/nfacct.plugin/README.md - learn_path: /docs/collecting-metrics/collectors/networking/netfilter -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/apps.plugin/integrations/users.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/users -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/apps.plugin/integrations/applications.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/applications -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/apps.plugin/integrations/user_groups.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/user-groups -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/apps.plugin/integrations/windows_services.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/windows-services -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/xenstat.plugin/README.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/xen-xcp-ng -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/python.d.plugin/README.md - learn_path: /docs/developer-and-contributor-corner/external-plugins/python.d.plugin -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/python.d.plugin/am2320/README.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/am2320 -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/python.d.plugin/pandas/README.md - learn_path: /docs/collecting-metrics/collectors/databases/pandas -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/python.d.plugin/go_expvar/README.md - learn_path: /docs/collecting-metrics/collectors/applications/go-applications-expvar -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/perf.plugin/README.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/cpu-performance -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/net.inet.tcp.stats.md - learn_path: /docs/collecting-metrics/collectors/networking/net.inet.tcp.stats -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/net.inet.tcp.states.md - learn_path: /docs/collecting-metrics/collectors/networking/net.inet.tcp.states +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/COLLECTORS.md + learn_path: /docs/welcome-to-netdata/monitor-anything +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/log2journal/README.md + learn_path: /docs/logs/log2journal +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/net.inet6.icmp6.stats.md + learn_path: /docs/collecting-metrics/collectors/networking/net.inet6.icmp6.stats - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/vm.vmtotal.md learn_path: /docs/collecting-metrics/collectors/operating-systems/vm.vmtotal -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/ipfw.md - learn_path: /docs/collecting-metrics/collectors/networking/ipfw -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/net.inet.icmp.stats.md - learn_path: /docs/collecting-metrics/collectors/networking/net.inet.icmp.stats -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/devstat.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/devstat -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/kern.ipc.shm.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/kern.ipc.shm -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/vm.loadavg.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/vm.loadavg -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/dev.cpu.0.freq.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/dev.cpu.0.freq -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/getmntinfo.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/getmntinfo -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/getifaddrs.md - learn_path: /docs/collecting-metrics/collectors/networking/getifaddrs -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/vm.swap_info.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/vm.swap_info -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/kern.ipc.msq.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/kern.ipc.msq -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/hw.intrcnt.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/hw.intrcnt - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/vm.stats.sys.v_soft.md learn_path: /docs/collecting-metrics/collectors/operating-systems/vm.stats.sys.v_soft -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/net.inet6.ip6.stats.md - learn_path: /docs/collecting-metrics/collectors/networking/net.inet6.ip6.stats -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/net.inet.udp.stats.md - learn_path: /docs/collecting-metrics/collectors/networking/net.inet.udp.stats -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/net.isr.md - learn_path: /docs/collecting-metrics/collectors/networking/net.isr -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/vm.stats.vm.v_swappgs.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/vm.stats.vm.v_swappgs -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/dev.cpu.temperature.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/dev.cpu.temperature - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/system.ram.md learn_path: /docs/collecting-metrics/collectors/operating-systems/system.ram -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/zfs.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/zfs +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/getmntinfo.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/getmntinfo +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/net.inet.tcp.stats.md + learn_path: /docs/collecting-metrics/collectors/networking/net.inet.tcp.stats +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/uptime.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/uptime +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/net.inet6.ip6.stats.md + learn_path: /docs/collecting-metrics/collectors/networking/net.inet6.ip6.stats +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/devstat.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/devstat +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/kern.ipc.msq.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/kern.ipc.msq +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/net.inet.tcp.states.md + learn_path: /docs/collecting-metrics/collectors/networking/net.inet.tcp.states +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/vm.loadavg.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/vm.loadavg - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/vm.stats.vm.v_pgfaults.md learn_path: /docs/collecting-metrics/collectors/operating-systems/vm.stats.vm.v_pgfaults -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/net.inet6.icmp6.stats.md - learn_path: /docs/collecting-metrics/collectors/networking/net.inet6.icmp6.stats +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/net.isr.md + learn_path: /docs/collecting-metrics/collectors/networking/net.isr +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/vm.swap_info.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/vm.swap_info +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/kern.ipc.shm.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/kern.ipc.shm +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/vm.stats.sys.v_intr.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/vm.stats.sys.v_intr +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/dev.cpu.0.freq.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/dev.cpu.0.freq - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/kern.ipc.sem.md learn_path: /docs/collecting-metrics/collectors/operating-systems/kern.ipc.sem +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/getifaddrs.md + learn_path: /docs/collecting-metrics/collectors/networking/getifaddrs +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/zfs.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/zfs - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/vm.stats.sys.v_swtch.md learn_path: /docs/collecting-metrics/collectors/operating-systems/vm.stats.sys.v_swtch +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/net.inet.udp.stats.md + learn_path: /docs/collecting-metrics/collectors/networking/net.inet.udp.stats +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/hw.intrcnt.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/hw.intrcnt - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/net.inet.ip.stats.md learn_path: /docs/collecting-metrics/collectors/networking/net.inet.ip.stats - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/kern.cp_time.md learn_path: /docs/collecting-metrics/collectors/operating-systems/kern.cp_time -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/vm.stats.sys.v_intr.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/vm.stats.sys.v_intr -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/uptime.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/uptime -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freeipmi.plugin/README.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/intelligent-platform-management-interface-ipmi -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/tc.plugin/README.md - learn_path: /docs/collecting-metrics/collectors/networking/tc-qos-classes -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/network-viewer.plugin/integrations/network_connections.md - learn_path: /docs/collecting-metrics/collectors/networking/network-connections -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/network-viewer.plugin/integrations/windows_network_protocols.md - learn_path: /docs/collecting-metrics/collectors/networking/windows-network-protocols -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/profile.plugin/README.md - learn_path: /docs/developer-and-contributor-corner/external-plugins/profile.plugin -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/log2journal/README.md - learn_path: /docs/logs/log2journal -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/timex.plugin/README.md - learn_path: /docs/collecting-metrics/collectors/networking/timex -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_softirq.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-softirq -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_sync.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ebpf-sync -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_mdflush.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ebpf-mdflush -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_filesystem.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ebpf-filesystem -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_shm.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-shm -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_processes.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-processes -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_process.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-process -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_disk.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ebpf-disk -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_hardirq.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-hardirq -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_vfs.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ebpf-vfs -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_dcstat.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-dcstat -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_oomkill.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-oomkill -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_mount.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ebpf-mount -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_filedescriptor.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-filedescriptor -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_swap.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-swap -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_cachestat.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-cachestat -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_socket.md - learn_path: /docs/collecting-metrics/collectors/networking/ebpf-socket -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/diskspace.plugin/README.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/disk-space +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/vm.stats.vm.v_swappgs.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/vm.stats.vm.v_swappgs +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/dev.cpu.temperature.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/dev.cpu.temperature +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/net.inet.icmp.stats.md + learn_path: /docs/collecting-metrics/collectors/networking/net.inet.icmp.stats +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freebsd.plugin/integrations/ipfw.md + learn_path: /docs/collecting-metrics/collectors/networking/ipfw +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/apps.plugin/integrations/users.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/users +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/apps.plugin/integrations/user_groups.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/user-groups +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/apps.plugin/integrations/applications.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/applications +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/apps.plugin/integrations/windows_services.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/windows-services +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/systemd-journal.plugin/forward_secure_sealing.md + learn_path: /docs/logs/systemd-journal-logs/forward-secure-sealing-fss-in-systemd-journal +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/systemd-journal.plugin/README.md + learn_path: /docs/logs/systemd-journal-logs/systemd-journal-plugin-reference +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/systemd-journal.plugin/active_journal_centralization_guide_no_encryption.md + learn_path: /docs/logs/logs-centralization-points-with-systemd-journald/active-journal-source-without-encryption +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/debugfs.plugin/integrations/linux_zswap.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/linux-zswap +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/debugfs.plugin/integrations/power_capping.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/power-capping +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/debugfs.plugin/integrations/linux_audit_subsystem.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/linux-audit-subsystem +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/debugfs.plugin/integrations/system_memory_fragmentation.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/system-memory-fragmentation +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/sensors.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/sensors - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/active_directory_federation_service.md learn_path: /docs/collecting-metrics/collectors/applications/active-directory-federation-service -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/network_subsystem.md - learn_path: /docs/collecting-metrics/collectors/networking/network-subsystem -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/hyper-v.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/hyper-v -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/memory_statistics_win.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/memory-statistics-win -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/hardware_information_collected_from_kernel_ring..md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/hardware-information-collected-from-kernel-ring. -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/smb_server_shares.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/smb-server-shares -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/net_framework.md - learn_path: /docs/collecting-metrics/collectors/applications/net-framework -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/physical_and_logical_disk_performance_metrics.md - learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/physical-and-logical-disk-performance-metrics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/semaphore_statistics.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/semaphore-statistics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/iis.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/iis -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/processor.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/processor - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/power_supply_win.md learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/power-supply-win -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/sensors.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/sensors +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/processor.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/processor +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/iis.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/iis - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/active_directory.md learn_path: /docs/collecting-metrics/collectors/applications/active-directory -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/asp.net.md - learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/asp.net -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/system_thermal_zone.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/system-thermal-zone +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/memory_statistics_win.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/memory-statistics-win - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/numa_architecture.md learn_path: /docs/collecting-metrics/collectors/operating-systems/numa-architecture -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/windows_services.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/windows-services-windows-plugin +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/system_thermal_zone.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/system-thermal-zone - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/ms_exchange.md learn_path: /docs/collecting-metrics/collectors/applications/ms-exchange -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/system_statistics.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/system-statistics-windows-plugin +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/windows_services.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/windows-services-windows-plugin +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/hyper-v.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/hyper-v +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/asp.net.md + learn_path: /docs/collecting-metrics/collectors/web-servers-and-proxies/asp.net +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/smb_server_shares.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/smb-server-shares - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/active_directory_certificate_service.md learn_path: /docs/collecting-metrics/collectors/applications/active-directory-certificate-service -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/guides/proxmox/README.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/proxmox-ve-monitoring -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/charts.d.plugin/README.md - learn_path: /docs/developer-and-contributor-corner/external-plugins/charts.d.plugin -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/charts.d.plugin/opensips/README.md - learn_path: /docs/collecting-metrics/collectors/applications/opensips -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/charts.d.plugin/libreswan/README.md - learn_path: /docs/collecting-metrics/collectors/networking/libreswan -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/nomad_containers.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/nomad-containers -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/openshift_containers.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/openshift-containers +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/net_framework.md + learn_path: /docs/collecting-metrics/collectors/applications/net-framework +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/semaphore_statistics.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/semaphore-statistics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/network_subsystem.md + learn_path: /docs/collecting-metrics/collectors/networking/network-subsystem +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/hardware_information_collected_from_kernel_ring..md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/hardware-information-collected-from-kernel-ring. +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/system_statistics.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/system-statistics-windows-plugin +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows.plugin/integrations/physical_and_logical_disk_performance_metrics.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/physical-and-logical-disk-performance-metrics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/diskspace.plugin/README.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/disk-space +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/md_raid.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/md-raid +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/entropy.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/entropy +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/inter_process_communication.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/inter-process-communication +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/kernel_same-page_merging.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/kernel-same-page-merging +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/bcache.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/bcache +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/sctp_statistics.md + learn_path: /docs/collecting-metrics/collectors/networking/sctp-statistics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/non-uniform_memory_access.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/non-uniform-memory-access +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/memory_modules_dimms.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/memory-modules-dimms +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/disk_statistics.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/disk-statistics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/ip_virtual_server.md + learn_path: /docs/collecting-metrics/collectors/networking/ip-virtual-server +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/page_types.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/page-types +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/network_statistics.md + learn_path: /docs/collecting-metrics/collectors/networking/network-statistics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/softnet_statistics.md + learn_path: /docs/collecting-metrics/collectors/networking/softnet-statistics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/btrfs.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/btrfs +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/ipv6_socket_statistics.md + learn_path: /docs/collecting-metrics/collectors/networking/ipv6-socket-statistics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/system_load_average.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/system-load-average +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/nfs_client.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/nfs-client +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/softirq_statistics.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/softirq-statistics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/power_supply.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/power-supply +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/memory_statistics.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/memory-statistics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/pressure_stall_information.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/pressure-stall-information +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/synproxy.md + learn_path: /docs/collecting-metrics/collectors/networking/synproxy +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/memory_usage.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/memory-usage +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/interrupts.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/interrupts +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/zfs_adaptive_replacement_cache.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/zfs-adaptive-replacement-cache +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/nfs_server.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/nfs-server +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/system_uptime.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/system-uptime +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/network_interfaces.md + learn_path: /docs/collecting-metrics/collectors/networking/network-interfaces +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/infiniband.md + learn_path: /docs/collecting-metrics/collectors/networking/infiniband +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/zram.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/zram +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/socket_statistics.md + learn_path: /docs/collecting-metrics/collectors/networking/socket-statistics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/amd_gpu.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/amd-gpu +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/conntrack.md + learn_path: /docs/collecting-metrics/collectors/networking/conntrack +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/wireless_network_interfaces.md + learn_path: /docs/collecting-metrics/collectors/networking/wireless-network-interfaces +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/proc.plugin/integrations/system_statistics.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/system-statistics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/macos.plugin/README.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/macos +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/timex.plugin/README.md + learn_path: /docs/collecting-metrics/collectors/networking/timex +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/statsd.plugin/README.md + learn_path: /docs/collecting-metrics/statsd +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/windows-events.plugin/README.md + learn_path: /docs/logs/windows-event-logs/windows-events-plugin-reference +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/python.d.plugin/README.md + learn_path: /docs/developer-and-contributor-corner/external-plugins/python.d.plugin +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/python.d.plugin/am2320/README.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/am2320 +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/python.d.plugin/pandas/README.md + learn_path: /docs/collecting-metrics/collectors/databases/pandas +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/python.d.plugin/go_expvar/README.md + learn_path: /docs/collecting-metrics/collectors/applications/go-applications-expvar +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/perf.plugin/README.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/cpu-performance +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/kubernetes_containers.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/kubernetes-containers - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/ovirt_vms.md learn_path: /docs/collecting-metrics/collectors/containers-and-vms/ovirt-vms +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/lxc_containers.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/lxc-containers +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/aws_ecs_containers.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/aws-ecs-containers - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/systemd_services.md learn_path: /docs/collecting-metrics/collectors/operating-systems/systemd-services -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/systemd-nspawn_containers.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/systemd-nspawn-containers -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/virtual_machines.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/virtual-machines +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/containers.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/containers - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/libvirt_vms_and_containers.md learn_path: /docs/collecting-metrics/collectors/containers-and-vms/libvirt-vms-and-containers -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/openstack_vms.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/openstack-vms +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/openshift_containers.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/openshift-containers - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/docker_containers.md learn_path: /docs/collecting-metrics/collectors/containers-and-vms/docker-containers +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/podman_containers.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/podman-containers +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/systemd-nspawn_containers.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/systemd-nspawn-containers +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/nomad_containers.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/nomad-containers - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/containerd_containers.md learn_path: /docs/collecting-metrics/collectors/containers-and-vms/containerd-containers -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/containers.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/containers -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/lxc_containers.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/lxc-containers +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/openstack_vms.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/openstack-vms - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/proxmox_vms_and_containers.md learn_path: /docs/collecting-metrics/collectors/containers-and-vms/proxmox-vms-and-containers -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/kubernetes_containers.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/kubernetes-containers -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/aws_ecs_containers.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/aws-ecs-containers -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/podman_containers.md - learn_path: /docs/collecting-metrics/collectors/containers-and-vms/podman-containers +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cgroups.plugin/integrations/virtual_machines.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/virtual-machines +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_oomkill.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-oomkill +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_dcstat.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-dcstat +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_softirq.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-softirq +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_hardirq.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-hardirq +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_swap.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-swap +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_filesystem.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ebpf-filesystem +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_mount.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ebpf-mount +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_sync.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ebpf-sync +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_socket.md + learn_path: /docs/collecting-metrics/collectors/networking/ebpf-socket +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_shm.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-shm +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_process.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-process +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_disk.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ebpf-disk +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_cachestat.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-cachestat +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_filedescriptor.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-filedescriptor +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_processes.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/ebpf-processes +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_vfs.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ebpf-vfs +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ebpf.plugin/integrations/ebpf_mdflush.md + learn_path: /docs/collecting-metrics/collectors/storage-and-filesystems/ebpf-mdflush +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/guides/proxmox/README.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/proxmox-ve-monitoring - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/idlejitter.plugin/README.md learn_path: /docs/collecting-metrics/collectors/synthetic-testing/idle-os-jitter -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/debugfs.plugin/integrations/system_memory_fragmentation.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/system-memory-fragmentation -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/debugfs.plugin/integrations/linux_zswap.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/linux-zswap -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/debugfs.plugin/integrations/linux_audit_subsystem.md - learn_path: /docs/collecting-metrics/collectors/operating-systems/linux-audit-subsystem -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/debugfs.plugin/integrations/power_capping.md - learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/power-capping -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/statsd.plugin/README.md - learn_path: /docs/collecting-metrics/statsd -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/systemd-journal.plugin/forward_secure_sealing.md - learn_path: /docs/logs/systemd-journal-logs/forward-secure-sealing-fss-in-systemd-journal -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/systemd-journal.plugin/active_journal_centralization_guide_no_encryption.md - learn_path: /docs/logs/logs-centralization-points-with-systemd-journald/active-journal-source-without-encryption -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/systemd-journal.plugin/README.md - learn_path: /docs/logs/systemd-journal-logs/systemd-journal-plugin-reference -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/ml/ml-configuration.md - learn_path: /docs/netdata-ai/anomaly-detection/ml-configuration -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/aclk/README.md - learn_path: /docs/netdata-cloud/agent-cloud-link-aclk -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/database/CONFIGURATION.md - learn_path: /docs/netdata-agent/configuration/database -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/database/README.md - learn_path: /docs/netdata-agent/database -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/database/engine/README.md - learn_path: /docs/developer-and-contributor-corner/database-engine +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/nfacct.plugin/README.md + learn_path: /docs/collecting-metrics/collectors/networking/netfilter +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/freeipmi.plugin/README.md + learn_path: /docs/collecting-metrics/collectors/hardware-and-sensors/intelligent-platform-management-interface-ipmi +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/slabinfo.plugin/README.md + learn_path: /docs/collecting-metrics/collectors/operating-systems/linux-kernel-slab-allocator-statistics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/tc.plugin/README.md + learn_path: /docs/collecting-metrics/collectors/networking/tc-qos-classes +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/charts.d.plugin/README.md + learn_path: /docs/developer-and-contributor-corner/external-plugins/charts.d.plugin +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/charts.d.plugin/opensips/README.md + learn_path: /docs/collecting-metrics/collectors/applications/opensips +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/charts.d.plugin/libreswan/README.md + learn_path: /docs/collecting-metrics/collectors/networking/libreswan +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/xenstat.plugin/README.md + learn_path: /docs/collecting-metrics/collectors/containers-and-vms/xen-xcp-ng +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/profile.plugin/README.md + learn_path: /docs/developer-and-contributor-corner/external-plugins/profile.plugin +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/network-viewer.plugin/integrations/windows_network_protocols.md + learn_path: /docs/collecting-metrics/collectors/networking/windows-network-protocols +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/network-viewer.plugin/integrations/network_connections.md + learn_path: /docs/collecting-metrics/collectors/networking/network-connections +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/cups.plugin/README.md + learn_path: /docs/collecting-metrics/collectors/applications/cups +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/collectors/ioping.plugin/README.md + learn_path: /docs/collecting-metrics/collectors/synthetic-testing/ioping - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/README.md learn_path: /docs/developer-and-contributor-corner/libnetdata -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/json/README.md - learn_path: /docs/developer-and-contributor-corner/libnetdata/json -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/url/README.md - learn_path: /docs/developer-and-contributor-corner/libnetdata/url -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/storage_number/README.md - learn_path: /docs/developer-and-contributor-corner/libnetdata/storage-number -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/statistical/README.md - learn_path: /docs/developer-and-contributor-corner/libnetdata/statistical-functions -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/avl/README.md - learn_path: /docs/developer-and-contributor-corner/libnetdata/avl -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/locks/README.md - learn_path: /docs/developer-and-contributor-corner/libnetdata/locks -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/circular_buffer/README.md - learn_path: /docs/developer-and-contributor-corner/libnetdata/circular-buffer +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/dictionary/README.md + learn_path: /docs/developer-and-contributor-corner/libnetdata/dictionaries - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/clocks/README.md learn_path: /docs/developer-and-contributor-corner/libnetdata/clocks +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/onewayalloc/README.md + learn_path: /docs/developer-and-contributor-corner/libnetdata/one-way-allocator - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/worker_utilization/README.md learn_path: /docs/developer-and-contributor-corner/libnetdata/worker-utilization +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/threads/README.md + learn_path: /docs/developer-and-contributor-corner/libnetdata/threads +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/url/README.md + learn_path: /docs/developer-and-contributor-corner/libnetdata/url +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/procfile/README.md + learn_path: /docs/developer-and-contributor-corner/libnetdata/procfile - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/simple_pattern/README.md learn_path: /docs/developer-and-contributor-corner/libnetdata/simple-patterns -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/onewayalloc/README.md - learn_path: /docs/developer-and-contributor-corner/libnetdata/one-way-allocator -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/log/systemd-cat-native.md - learn_path: /docs/logs/systemd-cat-native +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/circular_buffer/README.md + learn_path: /docs/developer-and-contributor-corner/libnetdata/circular-buffer +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/buffer/README.md + learn_path: /docs/developer-and-contributor-corner/libnetdata/buffer-library - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/log/README.md learn_path: /docs/netdata-agent/logging +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/log/systemd-cat-native.md + learn_path: /docs/logs/systemd-cat-native +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/json/README.md + learn_path: /docs/developer-and-contributor-corner/libnetdata/json - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/string/README.md learn_path: /docs/developer-and-contributor-corner/libnetdata/string -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/dictionary/README.md - learn_path: /docs/developer-and-contributor-corner/libnetdata/dictionaries -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/buffer/README.md - learn_path: /docs/developer-and-contributor-corner/libnetdata/buffer-library -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/adaptive_resortable_list/README.md - learn_path: /docs/developer-and-contributor-corner/libnetdata/adaptive-re-sortable-list-arl +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/locks/README.md + learn_path: /docs/developer-and-contributor-corner/libnetdata/locks +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/storage_number/README.md + learn_path: /docs/developer-and-contributor-corner/libnetdata/storage-number - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/socket/README.md learn_path: /docs/developer-and-contributor-corner/libnetdata/socket +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/adaptive_resortable_list/README.md + learn_path: /docs/developer-and-contributor-corner/libnetdata/adaptive-re-sortable-list-arl +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/statistical/README.md + learn_path: /docs/developer-and-contributor-corner/libnetdata/statistical-functions - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/aral/README.md learn_path: /docs/developer-and-contributor-corner/libnetdata/array-allocator -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/threads/README.md - learn_path: /docs/developer-and-contributor-corner/libnetdata/threads -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/procfile/README.md - learn_path: /docs/developer-and-contributor-corner/libnetdata/procfile +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/libnetdata/avl/README.md + learn_path: /docs/developer-and-contributor-corner/libnetdata/avl +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/registry/README.md + learn_path: /docs/netdata-agent/registry +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/registry/CONFIGURATION.md + learn_path: /docs/netdata-agent/configuration/registry +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/aclk/README.md + learn_path: /docs/netdata-cloud/agent-cloud-link-aclk +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/plugins.d/README.md + learn_path: /docs/developer-and-contributor-corner/external-plugins +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/plugins.d/FUNCTION_UI_REFERENCE.md + learn_path: /docs/developer-and-contributor-corner/external-plugins/functions-v3-protocol-reference +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/plugins.d/FUNCTION_UI_DEVELOPER_GUIDE.md + learn_path: /docs/developer-and-contributor-corner/external-plugins/functions-developer-guide - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netdata-otel/otel-plugin/README.md learn_path: /docs/collecting-metrics/opentelemetry/opentelemetry-metrics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/netbox.md - learn_path: /docs/network-flows/enrichment-methods/netbox -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/maxmind_geoip_-_geolite2.md - learn_path: /docs/network-flows/enrichment-methods/maxmind-geoip-geolite2 -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/ipfix.md - learn_path: /docs/network-flows/flow-protocols/ipfix +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/classifiers.md + learn_path: /docs/network-flows/enrichment-methods/classifiers +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/db-ip_ip_intelligence.md + learn_path: /docs/network-flows/enrichment-methods/db-ip-ip-intelligence +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/gcp_ip_ranges.md + learn_path: /docs/network-flows/enrichment-methods/gcp-ip-ranges - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/bmp_bgp_monitoring_protocol.md learn_path: /docs/network-flows/enrichment-methods/bmp-bgp-monitoring-protocol -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/caida_routeviews_prefix-to-as.md - learn_path: /docs/network-flows/enrichment-methods/caida-routeviews-prefix-to-as -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/ipip_country_database.md - learn_path: /docs/network-flows/enrichment-methods/ipip-country-database - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/iptoasn.md learn_path: /docs/network-flows/enrichment-methods/iptoasn -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/gcp_ip_ranges.md - learn_path: /docs/network-flows/enrichment-methods/gcp-ip-ranges -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/bio-rd_-_ripe_ris.md - learn_path: /docs/network-flows/enrichment-methods/bio-rd-ripe-ris -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/classifiers.md - learn_path: /docs/network-flows/enrichment-methods/classifiers +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/caida_routeviews_prefix-to-as.md + learn_path: /docs/network-flows/enrichment-methods/caida-routeviews-prefix-to-as +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/aws_ip_ranges.md + learn_path: /docs/network-flows/enrichment-methods/aws-ip-ranges - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/decapsulation.md learn_path: /docs/network-flows/enrichment-methods/decapsulation +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/netbox.md + learn_path: /docs/network-flows/enrichment-methods/netbox +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/maxmind_geoip_-_geolite2.md + learn_path: /docs/network-flows/enrichment-methods/maxmind-geoip-geolite2 - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/generic_json-over-http_ipam.md learn_path: /docs/network-flows/enrichment-methods/generic-json-over-http-ipam -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/static_metadata.md - learn_path: /docs/network-flows/enrichment-methods/static-metadata -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/aws_ip_ranges.md - learn_path: /docs/network-flows/enrichment-methods/aws-ip-ranges +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/ipdeny_country_zones.md + learn_path: /docs/network-flows/enrichment-methods/ipdeny-country-zones +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/ipfix.md + learn_path: /docs/network-flows/flow-protocols/ipfix +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/netflow.md + learn_path: /docs/network-flows/flow-protocols/netflow - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/ip2location_lite_ip-country.md learn_path: /docs/network-flows/enrichment-methods/ip2location-lite-ip-country - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/azure_ip_ranges.md learn_path: /docs/network-flows/enrichment-methods/azure-ip-ranges -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/netflow.md - learn_path: /docs/network-flows/flow-protocols/netflow -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/custom_mmdb_database.md - learn_path: /docs/network-flows/enrichment-methods/custom-mmdb-database -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/db-ip_ip_intelligence.md - learn_path: /docs/network-flows/enrichment-methods/db-ip-ip-intelligence +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/ipip_country_database.md + learn_path: /docs/network-flows/enrichment-methods/ipip-country-database - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/sflow.md learn_path: /docs/network-flows/flow-protocols/sflow -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/ipdeny_country_zones.md - learn_path: /docs/network-flows/enrichment-methods/ipdeny-country-zones -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/README.md - learn_path: /docs/exporting-metrics/exporting-reference -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/json/README.md - learn_path: /docs/exporting-metrics/connectors/json -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/pubsub/README.md - learn_path: /docs/exporting-metrics/connectors/google-cloud-pub-sub -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/opentsdb/README.md - learn_path: /docs/exporting-metrics/connectors/opentsdb -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/aws_kinesis/README.md - learn_path: /docs/exporting-metrics/connectors/aws-kinesis +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/bio-rd_-_ripe_ris.md + learn_path: /docs/network-flows/enrichment-methods/bio-rd-ripe-ris +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/static_metadata.md + learn_path: /docs/network-flows/enrichment-methods/static-metadata +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/crates/netflow-plugin/integrations/custom_mmdb_database.md + learn_path: /docs/network-flows/enrichment-methods/custom-mmdb-database +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/README.md + learn_path: /docs/exporting-metrics/exporting-reference +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/mongodb/README.md + learn_path: /docs/exporting-metrics/connectors/mongodb - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/graphite/README.md learn_path: /docs/exporting-metrics/connectors/graphite -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/graphite/integrations/kairosdb.md - learn_path: /docs/exporting-metrics/connectors/kairosdb - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/graphite/integrations/blueflood.md learn_path: /docs/exporting-metrics/connectors/blueflood +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/graphite/integrations/kairosdb.md + learn_path: /docs/exporting-metrics/connectors/kairosdb +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/aws_kinesis/README.md + learn_path: /docs/exporting-metrics/connectors/aws-kinesis - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/README.md learn_path: /docs/exporting-metrics/prometheus -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/new_relic.md - learn_path: /docs/exporting-metrics/connectors/new-relic -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/cratedb.md - learn_path: /docs/exporting-metrics/connectors/cratedb -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/cortex.md - learn_path: /docs/exporting-metrics/connectors/cortex -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/opeansearch.md - learn_path: /docs/exporting-metrics/connectors/opeansearch -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/splunk_signalfx.md - learn_path: /docs/exporting-metrics/connectors/splunk-signalfx -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/google_bigquery.md - learn_path: /docs/exporting-metrics/connectors/google-bigquery -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/kafka.md - learn_path: /docs/exporting-metrics/connectors/kafka -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/quasardb.md - learn_path: /docs/exporting-metrics/connectors/quasardb -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/tikv.md - learn_path: /docs/exporting-metrics/connectors/tikv -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/gnocchi.md - learn_path: /docs/exporting-metrics/connectors/gnocchi +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/wavefront.md + learn_path: /docs/exporting-metrics/connectors/wavefront - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/azure_data_explorer.md learn_path: /docs/exporting-metrics/connectors/azure-data-explorer +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/irondb.md + learn_path: /docs/exporting-metrics/connectors/irondb - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/elasticsearch.md learn_path: /docs/exporting-metrics/connectors/elasticsearch +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/gnocchi.md + learn_path: /docs/exporting-metrics/connectors/gnocchi - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/appoptics.md learn_path: /docs/exporting-metrics/connectors/appoptics -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/azure_event_hub.md - learn_path: /docs/exporting-metrics/connectors/azure-event-hub -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/postgresql.md - learn_path: /docs/exporting-metrics/connectors/postgresql -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/metricfire.md - learn_path: /docs/exporting-metrics/connectors/metricfire -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/victoriametrics.md - learn_path: /docs/exporting-metrics/connectors/victoriametrics - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/chronix.md learn_path: /docs/exporting-metrics/connectors/chronix -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/wavefront.md - learn_path: /docs/exporting-metrics/connectors/wavefront +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/metricfire.md + learn_path: /docs/exporting-metrics/connectors/metricfire - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/thanos.md learn_path: /docs/exporting-metrics/connectors/thanos -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/greptimedb.md - learn_path: /docs/exporting-metrics/connectors/greptimedb - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/timescaledb.md learn_path: /docs/exporting-metrics/connectors/timescaledb +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/greptimedb.md + learn_path: /docs/exporting-metrics/connectors/greptimedb +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/azure_event_hub.md + learn_path: /docs/exporting-metrics/connectors/azure-event-hub +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/new_relic.md + learn_path: /docs/exporting-metrics/connectors/new-relic +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/cratedb.md + learn_path: /docs/exporting-metrics/connectors/cratedb +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/quasardb.md + learn_path: /docs/exporting-metrics/connectors/quasardb +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/tikv.md + learn_path: /docs/exporting-metrics/connectors/tikv +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/kafka.md + learn_path: /docs/exporting-metrics/connectors/kafka - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/m3db.md learn_path: /docs/exporting-metrics/connectors/m3db - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/vmware_aria.md learn_path: /docs/exporting-metrics/connectors/vmware-aria -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/irondb.md - learn_path: /docs/exporting-metrics/connectors/irondb +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/cortex.md + learn_path: /docs/exporting-metrics/connectors/cortex +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/google_bigquery.md + learn_path: /docs/exporting-metrics/connectors/google-bigquery +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/opeansearch.md + learn_path: /docs/exporting-metrics/connectors/opeansearch +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/victoriametrics.md + learn_path: /docs/exporting-metrics/connectors/victoriametrics +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/splunk_signalfx.md + learn_path: /docs/exporting-metrics/connectors/splunk-signalfx +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/integrations/postgresql.md + learn_path: /docs/exporting-metrics/connectors/postgresql - custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/prometheus/remote_write/README.md learn_path: /docs/exporting-metrics/connectors/prometheus-remote-write -- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/mongodb/README.md - learn_path: /docs/exporting-metrics/connectors/mongodb -- custom_edit_url: https://github.com/netdata/netdata/edit/master/tests/health_mgmtapi/README.md - learn_path: /docs/developer-and-contributor-corner/health-command-api-tester +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/json/README.md + learn_path: /docs/exporting-metrics/connectors/json +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/opentsdb/README.md + learn_path: /docs/exporting-metrics/connectors/opentsdb +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/exporting/pubsub/README.md + learn_path: /docs/exporting-metrics/connectors/google-cloud-pub-sub +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/database/README.md + learn_path: /docs/netdata-agent/database +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/database/CONFIGURATION.md + learn_path: /docs/netdata-agent/configuration/database +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/database/engine/README.md + learn_path: /docs/developer-and-contributor-corner/database-engine +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/daemon/README.md + learn_path: /docs/netdata-agent/daemon +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/daemon/config/README.md + learn_path: /docs/netdata-agent/configuration/daemon +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/cli/README.md + learn_path: /docs/netdata-agent/agent-cli +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/README.md + learn_path: /docs/alerts-&-notifications +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/REFERENCE.md + learn_path: /docs/alerts-&-notifications/alert-configuration-reference +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/alert-configuration-ordering.md + learn_path: /docs/alerts-&-notifications/alert-configuration-ordering +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/overriding-stock-alerts.md + learn_path: /docs/alerts-&-notifications/overriding-stock-alerts +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/agent-notifications-reference +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/signl4/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/signl4 +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/twilio/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/twilio +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/discord/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/discord +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/email/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/email +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/opsgenie/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/opsgenie +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/awssns/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/aws-sns +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/smseagle/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/smseagle +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/telegram/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/telegram +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/custom/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/custom +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/ilert/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/ilert +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/smstools3/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/sms +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/flock/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/flock +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/slack/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/slack +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/gotify/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/gotify +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/dynatrace/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/dynatrace +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/ntfy/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/ntfy +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/pushover/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/pushover +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/pushbullet/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/pushbullet +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/messagebird/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/messagebird +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/alerta/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/alerta +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/irc/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/irc +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/matrix/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/matrix +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/pagerduty/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/pagerduty +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/kavenegar/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/kavenegar +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/syslog/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/syslog +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/rocketchat/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/rocketchat +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/msteams/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/microsoft-teams +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/health/notifications/prowl/README.md + learn_path: /docs/alerts-&-notifications/notifications/agent-dispatched-notifications/prowl +- custom_edit_url: https://github.com/netdata/netdata/edit/master/src/ml/ml-configuration.md + learn_path: /docs/netdata-ai/anomaly-detection/ml-configuration - custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/building-native-packages-locally.md learn_path: /docs/developer-and-contributor-corner/build-the-netdata-agent-yourself/how-to-build-native-deb-rpm-packages-locally-for-testing - custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/PLATFORM_SUPPORT.md learn_path: /docs/netdata-agent/versions-&-platforms -- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/docker/README.md - learn_path: /docs/netdata-agent/installation/docker - custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/makeself/README.md learn_path: /docs/netdata-agent/installation/linux/static-binary-linux-packages +- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/maintainers/README.md + learn_path: /docs/developer-and-contributor-corner/build-the-netdata-agent-yourself/package-maintainers +- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/docker/README.md + learn_path: /docs/netdata-agent/installation/docker +- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/README.md + learn_path: /docs/netdata-agent/installation - custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/UPDATE.md learn_path: /docs/netdata-agent/maintenance/update - custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/UNINSTALL.md learn_path: /docs/netdata-agent/maintenance/uninstall -- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/README.md - learn_path: /docs/netdata-agent/installation -- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/freebsd.md - learn_path: /docs/netdata-agent/installation/freebsd -- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/pfsense.md - learn_path: /docs/netdata-agent/installation/pfsense - custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/source.md learn_path: /docs/developer-and-contributor-corner/build-the-netdata-agent-yourself/compile-from-source-code -- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/aws.md - learn_path: /docs/netdata-agent/installation/aws -- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/azure.md - learn_path: /docs/netdata-agent/installation/azure -- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/macos.md - learn_path: /docs/netdata-agent/installation/macos +- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/kickstart.md + learn_path: /docs/netdata-agent/installation/linux - custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/synology.md learn_path: /docs/netdata-agent/installation/synology -- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/ansible.md - learn_path: /docs/netdata-agent/installation/ansible -- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/manual.md - learn_path: /docs/developer-and-contributor-corner/install-the-netdata-agent-from-a-git-checkout -- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/packages.md - learn_path: /docs/netdata-agent/installation/linux/native-linux-distribution-packages +- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/macos.md + learn_path: /docs/netdata-agent/installation/macos +- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/freebsd.md + learn_path: /docs/netdata-agent/installation/freebsd - custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/kubernetes.md learn_path: /docs/netdata-agent/installation/kubernetes +- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/packages.md + learn_path: /docs/netdata-agent/installation/linux/native-linux-distribution-packages +- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/azure.md + learn_path: /docs/netdata-agent/installation/azure +- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/manual.md + learn_path: /docs/developer-and-contributor-corner/install-the-netdata-agent-from-a-git-checkout - custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/gcp.md learn_path: /docs/netdata-agent/installation/gcp +- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/pfsense.md + learn_path: /docs/netdata-agent/installation/pfsense +- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/ansible.md + learn_path: /docs/netdata-agent/installation/ansible - custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/offline.md learn_path: /docs/netdata-agent/installation/linux/offline-systems -- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/kickstart.md - learn_path: /docs/netdata-agent/installation/linux +- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/installer/methods/aws.md + learn_path: /docs/netdata-agent/installation/aws - custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/windows/WINDOWS_INSTALLER.md learn_path: /docs/netdata-agent/installation/windows -- custom_edit_url: https://github.com/netdata/netdata/edit/master/packaging/maintainers/README.md - learn_path: /docs/developer-and-contributor-corner/build-the-netdata-agent-yourself/package-maintainers -- custom_edit_url: https://github.com/netdata/.github/edit/main/CODE_OF_CONDUCT.md - learn_path: /docs/developer-and-contributor-corner/community-code-of-conduct -- custom_edit_url: https://github.com/netdata/.github/edit/main/CONTRIBUTING.md - learn_path: /docs/developer-and-contributor-corner/contributing +- custom_edit_url: https://github.com/netdata/netdata/edit/master/tests/health_mgmtapi/README.md + learn_path: /docs/developer-and-contributor-corner/health-command-api-tester +- custom_edit_url: https://github.com/netdata/agent-service-discovery/edit/master/README.md + learn_path: /docs/collecting-metrics/service-discovery +- custom_edit_url: https://github.com/netdata/helmchart/edit/master/charts/netdata/README.md + learn_path: /docs/netdata-agent/installation/kubernetes-helm-chart-reference +- custom_edit_url: https://github.com/netdata/netdata-grafana-datasource-plugin/edit/master/README.md + learn_path: /docs/dashboards-and-charts/grafana-plugin +- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/hardening-guide.md + learn_path: /docs/netdata-cloud-on-prem/security-hardening-guide +- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/image-signature-verification.md + learn_path: /docs/netdata-cloud-on-prem/container-image-signature-verification +- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/README.md + learn_path: /docs/netdata-cloud-on-prem +- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/poc-without-k8s.md + learn_path: /docs/netdata-cloud-on-prem/poc-without-k8s +- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/installation.md + learn_path: /docs/netdata-cloud-on-prem/installation +- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/ecr-mirror.md + learn_path: /docs/netdata-cloud-on-prem/mirroring-image-registry +- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/sbom.md + learn_path: /docs/netdata-cloud-on-prem/software-bill-of-materials +- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/netpol.md + learn_path: /docs/netdata-cloud-on-prem/kubernetes-network-policy-configuration +- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/docs/learn.netdata.cloud/troubleshooting.md + learn_path: /docs/netdata-cloud-on-prem/troubleshooting +- custom_edit_url: https://github.com/netdata/netdata-cloud-onprem/edit/master/netdata-cloud-onprem/RELEASE-NOTES.md + learn_path: /docs/netdata-cloud-on-prem/release-notes - custom_edit_url: https://github.com/netdata/.github/edit/main/SECURITY.md learn_path: /docs/developer-and-contributor-corner/security-policy +- custom_edit_url: https://github.com/netdata/.github/edit/main/CONTRIBUTING.md + learn_path: /docs/developer-and-contributor-corner/contributing +- custom_edit_url: https://github.com/netdata/.github/edit/main/CODE_OF_CONDUCT.md + learn_path: /docs/developer-and-contributor-corner/community-code-of-conduct