diff --git a/docs/Collecting Metrics/Collectors/Applications/Applications.mdx b/docs/Collecting Metrics/Collectors/Applications/Applications.mdx
index 60a328f341..a5d8db402f 100644
--- a/docs/Collecting Metrics/Collectors/Applications/Applications.mdx
+++ b/docs/Collecting Metrics/Collectors/Applications/Applications.mdx
@@ -67,7 +67,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
@@ -131,7 +131,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
@@ -151,7 +151,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
@@ -179,7 +179,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
@@ -311,7 +311,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
diff --git a/docs/Collecting Metrics/Collectors/Applications/Chia.mdx b/docs/Collecting Metrics/Collectors/Applications/Chia.mdx
index a2faf48d7d..53a3213367 100644
--- a/docs/Collecting Metrics/Collectors/Applications/Chia.mdx
+++ b/docs/Collecting Metrics/Collectors/Applications/Chia.mdx
@@ -15,7 +15,7 @@ slug: "/collecting-metrics/collectors/applications/chia"
# Chia
-
+
Plugin: go.d.plugin
diff --git a/docs/Collecting Metrics/Collectors/Applications/DMARC.mdx b/docs/Collecting Metrics/Collectors/Applications/DMARC.mdx
index bbea1d74a0..cbfd17600d 100644
--- a/docs/Collecting Metrics/Collectors/Applications/DMARC.mdx
+++ b/docs/Collecting Metrics/Collectors/Applications/DMARC.mdx
@@ -16,7 +16,7 @@ slug: "/collecting-metrics/collectors/applications/dmarc"
# DMARC
-
+
Plugin: go.d.plugin
diff --git a/docs/Collecting Metrics/Collectors/Applications/Go-ethereum.mdx b/docs/Collecting Metrics/Collectors/Applications/Go-ethereum.mdx
index b3d653794a..883f987db8 100644
--- a/docs/Collecting Metrics/Collectors/Applications/Go-ethereum.mdx
+++ b/docs/Collecting Metrics/Collectors/Applications/Go-ethereum.mdx
@@ -16,7 +16,7 @@ slug: "/collecting-metrics/collectors/applications/go-ethereum"
# Go-ethereum
-
+
Plugin: go.d.plugin
diff --git a/docs/Collecting Metrics/Collectors/Applications/Tankerkoenig API.mdx b/docs/Collecting Metrics/Collectors/Applications/Tankerkoenig API.mdx
index 23eba7dbcc..3ba16818bf 100644
--- a/docs/Collecting Metrics/Collectors/Applications/Tankerkoenig API.mdx
+++ b/docs/Collecting Metrics/Collectors/Applications/Tankerkoenig API.mdx
@@ -15,7 +15,7 @@ slug: "/collecting-metrics/collectors/applications/tankerkoenig-api"
# Tankerkoenig API
-
+
Plugin: go.d.plugin
diff --git a/docs/Collecting Metrics/Collectors/Applications/ZooKeeper.mdx b/docs/Collecting Metrics/Collectors/Applications/ZooKeeper.mdx
index 216afd6522..a20928cc57 100644
--- a/docs/Collecting Metrics/Collectors/Applications/ZooKeeper.mdx
+++ b/docs/Collecting Metrics/Collectors/Applications/ZooKeeper.mdx
@@ -16,7 +16,7 @@ slug: "/collecting-metrics/collectors/applications/zookeeper"
# ZooKeeper
-
+
Plugin: go.d.plugin
diff --git a/docs/Collecting Metrics/Collectors/Collectors.mdx b/docs/Collecting Metrics/Collectors/Collectors.mdx
index 890bf0805f..fb4a6043d0 100644
--- a/docs/Collecting Metrics/Collectors/Collectors.mdx
+++ b/docs/Collecting Metrics/Collectors/Collectors.mdx
@@ -499,7 +499,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
@@ -763,7 +763,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
@@ -851,7 +851,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
@@ -879,7 +879,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
@@ -1179,7 +1179,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
@@ -1207,7 +1207,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
@@ -1215,7 +1215,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
@@ -1299,7 +1299,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
@@ -1363,7 +1363,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
@@ -1435,7 +1435,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
@@ -1751,7 +1751,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
@@ -1891,7 +1891,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
diff --git a/docs/Collecting Metrics/Collectors/Containers and VMs/Containers and VMs.mdx b/docs/Collecting Metrics/Collectors/Containers and VMs/Containers and VMs.mdx
index 9bb36c0cd8..bdd3aacd1e 100644
--- a/docs/Collecting Metrics/Collectors/Containers and VMs/Containers and VMs.mdx
+++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Containers and VMs.mdx
@@ -75,7 +75,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
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 a24e227f24..2da82ef0a5 100644
--- a/docs/Collecting Metrics/Collectors/Containers and VMs/Nomad Containers.mdx
+++ b/docs/Collecting Metrics/Collectors/Containers and VMs/Nomad Containers.mdx
@@ -16,7 +16,7 @@ slug: "/collecting-metrics/collectors/containers-and-vms/nomad-containers"
# Nomad Containers
-
+
Plugin: cgroups.plugin
diff --git a/docs/Collecting Metrics/Collectors/Databases/Databases.mdx b/docs/Collecting Metrics/Collectors/Databases/Databases.mdx
index eae038120a..70834dbb66 100644
--- a/docs/Collecting Metrics/Collectors/Databases/Databases.mdx
+++ b/docs/Collecting Metrics/Collectors/Databases/Databases.mdx
@@ -135,11 +135,11 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
-
+
diff --git a/docs/Collecting Metrics/Collectors/Databases/Typesense.mdx b/docs/Collecting Metrics/Collectors/Databases/Typesense.mdx
index f86a0f7fcb..8130013190 100644
--- a/docs/Collecting Metrics/Collectors/Databases/Typesense.mdx
+++ b/docs/Collecting Metrics/Collectors/Databases/Typesense.mdx
@@ -16,7 +16,7 @@ slug: "/collecting-metrics/collectors/databases/typesense"
# Typesense
-
+
Plugin: go.d.plugin
diff --git a/docs/Collecting Metrics/Collectors/Databases/VerneMQ.mdx b/docs/Collecting Metrics/Collectors/Databases/VerneMQ.mdx
index 019c119875..513db010da 100644
--- a/docs/Collecting Metrics/Collectors/Databases/VerneMQ.mdx
+++ b/docs/Collecting Metrics/Collectors/Databases/VerneMQ.mdx
@@ -16,7 +16,7 @@ slug: "/collecting-metrics/collectors/databases/vernemq"
# VerneMQ
-
+
Plugin: go.d.plugin
diff --git a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Hardware and Sensors.mdx b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Hardware and Sensors.mdx
index 702e70a305..25f0566fd3 100644
--- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Hardware and Sensors.mdx
+++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Hardware and Sensors.mdx
@@ -147,7 +147,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
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 ffa94cacb2..8d6133c7c1 100644
--- a/docs/Collecting Metrics/Collectors/Hardware and Sensors/Powerpal devices.mdx
+++ b/docs/Collecting Metrics/Collectors/Hardware and Sensors/Powerpal devices.mdx
@@ -15,7 +15,7 @@ slug: "/collecting-metrics/collectors/hardware-and-sensors/powerpal-devices"
# Powerpal devices
-
+
Plugin: go.d.plugin
diff --git a/docs/Collecting Metrics/Collectors/Networking/SNMP devices.mdx b/docs/Collecting Metrics/Collectors/Networking/SNMP devices.mdx
index 7068a8755d..169d2c93d2 100644
--- a/docs/Collecting Metrics/Collectors/Networking/SNMP devices.mdx
+++ b/docs/Collecting Metrics/Collectors/Networking/SNMP devices.mdx
@@ -33,7 +33,7 @@ This collector discovers and monitors any SNMP-enabled network device.
- **Automatic vendor/model detection**: Devices are matched to the right profile using selectors such as `sysObjectID` and `sysDescr`.
- **ICMP ping**: Optional round-trip latency monitoring alongside SNMP, with a `ping_only` mode available.
- **SNMP v1, v2c, and v3 support**: Fully implemented via the [gosnmp](https://github.com/gosnmp/gosnmp) library.
-- **Shared device-level licensing metrics for supported profiles**: When a profile exposes license telemetry, Netdata emits compact per-device licensing charts for earliest expiry, license-state counts (`healthy`, `informational`, `degraded`, `broken`, `ignored`), and highest usage pressure. Current branch coverage includes Check Point licensing state and per-blade expiry, Fortinet FortiGate contract/service/account expirations, Cisco traditional licensing end-date/remaining-time/state/usage telemetry, Cisco Smart Licensing authorization, certificate, evaluation, and state telemetry, Sophos Firewall subscription state and per-license expiry telemetry, Blue Coat ProxySG application/feature/component expiry, expire-type, and state telemetry, and basic MikroTik RouterOS upgrade-entitlement telemetry. For MikroTik, epoch-like placeholder `mtxrLicUpgrUntil` values are ignored instead of treated as real expired licenses.
+- **Shared device-level licensing metrics for supported profiles**: When a profile exposes license telemetry, Netdata emits compact per-device licensing charts for earliest expiry, license-state counts (`healthy`, `informational`, `degraded`, `broken`, `ignored`), and highest usage pressure. Supported profile coverage includes Check Point licensing state and per-blade expiry, Fortinet FortiGate contract/service/account expirations, Cisco traditional licensing end-date/remaining-time/state/usage telemetry, Cisco Smart Licensing authorization, certificate, evaluation, and state telemetry, Sophos Firewall subscription state and per-license expiry telemetry, Blue Coat ProxySG application/feature/component expiry, expire-type, and state telemetry, and basic MikroTik RouterOS upgrade-entitlement telemetry. For MikroTik, epoch-like placeholder `mtxrLicUpgrUntil` values are ignored instead of treated as real expired licenses.
- **Interactive licensing drill-down**: The `snmp:licenses` function follows the existing SNMP function pattern and shows normalized licensing rows for the selected SNMP job/device using cached collector data.
@@ -98,7 +98,7 @@ SNMP service discovery can automatically scan configured networks and feed the S
The configuration file name is [go.d/sd/snmp.conf](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/config/go.d/sd/snmp.conf).
-You can edit the configuration file using the edit-config script from the Netdata [config directory](https://learn.netdata.cloud/docs/netdata-agent/configuration#the-netdata-config-directory).
+You can edit the configuration file using the edit-config script from the Netdata [config directory](https://learn.netdata.cloud/docs/netdata-agent/configuration#locate-your-config-directory).
```bash
cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata
@@ -377,21 +377,20 @@ The following alerts are available:
| Alert name | On metric | Description |
|:------------|:----------|:------------|
-| [snmp_license_expiring](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp.conf) | snmp.license.remaining_time | The earliest monitored SNMP license or subscription on this device is close to expiration. |
-| [snmp_license_authorization_expiring](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp.conf) | snmp.license.authorization_remaining_time | The license authorization timer on this device is close to expiration. |
-| [snmp_license_certificate_expiring](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp.conf) | snmp.license.certificate_remaining_time | The license certificate timer on this device is close to expiration. |
-| [snmp_license_grace_period_ending](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp.conf) | snmp.license.grace_remaining_time | The licensing grace or evaluation period on this device is ending or already expired. |
-| [snmp_license_state_warning](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp.conf) | snmp.license.state | One or more monitored licenses on this device are degraded, in grace, or otherwise in warning state. |
-| [snmp_license_state_critical](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp.conf) | snmp.license.state | One or more monitored licenses on this device are expired, invalid, unauthorized, or otherwise in critical state. |
-| [snmp_license_usage_high](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp.conf) | snmp.license.usage_percent | The most constrained monitored license pool on this device is nearing exhaustion. |
+| [ snmp_license_expiring ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp.conf) | snmp.license.remaining_time | The earliest monitored SNMP license or subscription on this device is close to expiration. |
+| [ snmp_license_authorization_expiring ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp.conf) | snmp.license.authorization_remaining_time | The license authorization timer on this device is close to expiration. |
+| [ snmp_license_certificate_expiring ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp.conf) | snmp.license.certificate_remaining_time | The license certificate timer on this device is close to expiration. |
+| [ snmp_license_grace_period_ending ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp.conf) | snmp.license.grace_remaining_time | The licensing grace or evaluation period on this device is ending or already expired. |
+| [ snmp_license_state_warning ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp.conf) | snmp.license.state | One or more monitored licenses on this device are degraded, in grace, or otherwise in warning state. |
+| [ snmp_license_state_critical ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp.conf) | snmp.license.state | One or more monitored licenses on this device are expired, invalid, unauthorized, or otherwise in critical state. |
+| [ snmp_license_usage_high ](https://github.com/netdata/netdata/blob/master/src/health/health.d/snmp.conf) | snmp.license.usage_percent | The most constrained monitored license pool on this device is nearing exhaustion. |
## 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.
+The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.
Metrics and charts are **defined by the matched SNMP profile(s)** at runtime. They differ by vendor/model/OS and may include, for example, interface counters, optics, CPU/memory, temperature, VLANs, and more. Use the **Metrics** tab on the device’s dashboard to see exactly what is collected for that device.
@@ -431,7 +430,7 @@ If `ping.enabled` is true, ICMP latency/packet-loss charts are also provided (or
### Per device licensing
-Shared device-level licensing health metrics emitted when the matched SNMP profile provides licensing telemetry. Current branch coverage includes Check Point licensing state and per-blade expiry, Fortinet FortiGate contract/service/account expirations, Cisco traditional licensing end-date/remaining-time/state/usage telemetry, Cisco Smart Licensing authorization, certificate, evaluation, and state telemetry, Sophos Firewall subscription state and per-license expiry telemetry, Blue Coat ProxySG application/feature/component expiry, expire-type, and state telemetry, and basic MikroTik RouterOS upgrade-entitlement telemetry. MikroTik support is intentionally limited to the RouterOS upgrade-entitlement fields exposed by SNMP, and epoch-like placeholder `mtxrLicUpgrUntil` values are ignored.
+Shared device-level licensing health metrics emitted when the matched SNMP profile provides licensing telemetry. Supported profile coverage includes Check Point licensing state and per-blade expiry, Fortinet FortiGate contract/service/account expirations, Cisco traditional licensing end-date/remaining-time/state/usage telemetry, Cisco Smart Licensing authorization, certificate, evaluation, and state telemetry, Sophos Firewall subscription state and per-license expiry telemetry, Blue Coat ProxySG application/feature/component expiry, expire-type, and state telemetry, and basic MikroTik RouterOS upgrade-entitlement telemetry. MikroTik support is intentionally limited to the RouterOS upgrade-entitlement fields exposed by SNMP, and epoch-like placeholder `mtxrLicUpgrUntil` values are ignored.
Labels:
@@ -733,3 +732,6 @@ Table metrics are usually the slowest and often determine the total collection t
1. Do logs show “skipping data collection”?
2. Does *Internal → Stats* show collection time > `update_every`?
3. Increase `update_every` until skips disappear.
+
+
+
diff --git a/docs/Collecting Metrics/Collectors/Storage and Filesystems/NVMe devices.mdx b/docs/Collecting Metrics/Collectors/Storage and Filesystems/NVMe devices.mdx
index 5653e6376a..a84ccb641b 100644
--- a/docs/Collecting Metrics/Collectors/Storage and Filesystems/NVMe devices.mdx
+++ b/docs/Collecting Metrics/Collectors/Storage and Filesystems/NVMe devices.mdx
@@ -16,7 +16,7 @@ slug: "/collecting-metrics/collectors/storage-and-filesystems/nvme-devices"
# NVMe devices
-
+
Plugin: go.d.plugin
diff --git a/docs/Collecting Metrics/Collectors/Storage and Filesystems/Storage and Filesystems.mdx b/docs/Collecting Metrics/Collectors/Storage and Filesystems/Storage and Filesystems.mdx
index 6a7c3caf64..7903a1b1fc 100644
--- a/docs/Collecting Metrics/Collectors/Storage and Filesystems/Storage and Filesystems.mdx
+++ b/docs/Collecting Metrics/Collectors/Storage and Filesystems/Storage and Filesystems.mdx
@@ -123,7 +123,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
diff --git a/docs/Collecting Metrics/Collectors/Synthetic Testing/Nagios Plugins and Custom Scripts.mdx b/docs/Collecting Metrics/Collectors/Synthetic Testing/Nagios Plugins and Custom Scripts.mdx
index 69629bc1b9..0d71e33ded 100644
--- a/docs/Collecting Metrics/Collectors/Synthetic Testing/Nagios Plugins and Custom Scripts.mdx
+++ b/docs/Collecting Metrics/Collectors/Synthetic Testing/Nagios Plugins and Custom Scripts.mdx
@@ -16,7 +16,7 @@ slug: "/collecting-metrics/collectors/synthetic-testing/nagios-plugins-and-custo
# Nagios Plugins and Custom Scripts
-
+
Plugin: scripts.d.plugin
diff --git a/docs/Collecting Metrics/Collectors/Synthetic Testing/Synthetic Testing.mdx b/docs/Collecting Metrics/Collectors/Synthetic Testing/Synthetic Testing.mdx
index f0803c63fb..ebcc9cacea 100644
--- a/docs/Collecting Metrics/Collectors/Synthetic Testing/Synthetic Testing.mdx
+++ b/docs/Collecting Metrics/Collectors/Synthetic Testing/Synthetic Testing.mdx
@@ -43,7 +43,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
diff --git a/docs/Collecting Metrics/Collectors/Web Servers and Proxies/Varnish.mdx b/docs/Collecting Metrics/Collectors/Web Servers and Proxies/Varnish.mdx
index 55e02ea79e..efa740e891 100644
--- a/docs/Collecting Metrics/Collectors/Web Servers and Proxies/Varnish.mdx
+++ b/docs/Collecting Metrics/Collectors/Web Servers and Proxies/Varnish.mdx
@@ -16,7 +16,7 @@ slug: "/collecting-metrics/collectors/web-servers-and-proxies/varnish"
# Varnish
-
+
Plugin: go.d.plugin
diff --git a/docs/Collecting Metrics/Collectors/Web Servers and Proxies/Web Servers and Proxies.mdx b/docs/Collecting Metrics/Collectors/Web Servers and Proxies/Web Servers and Proxies.mdx
index 59bd72ba90..0f09a24559 100644
--- a/docs/Collecting Metrics/Collectors/Web Servers and Proxies/Web Servers and Proxies.mdx
+++ b/docs/Collecting Metrics/Collectors/Web Servers and Proxies/Web Servers and Proxies.mdx
@@ -91,7 +91,7 @@ import { Grid, Box } from '@site/src/components/Grid_integrations';
-
+
diff --git a/docs/Network Flows/Enrichment Methods/DB-IP IP Intelligence.mdx b/docs/Network Flows/Enrichment Methods/DB-IP IP Intelligence.mdx
index 5dc5d93cdb..f2c1e6b2e4 100644
--- a/docs/Network Flows/Enrichment Methods/DB-IP IP Intelligence.mdx
+++ b/docs/Network Flows/Enrichment Methods/DB-IP IP Intelligence.mdx
@@ -105,7 +105,7 @@ the binary is available (packaged 32-bit installs do not include it) to populate
sudo /usr/sbin/topology-ip-intel-downloader
```
-See the [Enrichment Intel Downloader](https://learn.netdata.cloud/docs/network-flows/intel-downloader)
+See the [Enrichment Intel Downloader](https://learn.netdata.cloud/docs/network-flows/enrichment-intel-downloader)
page for downloader options and how to schedule periodic refreshes. DB-IP Lite
data is published monthly, so a monthly cron of the downloader is the right
cadence -- more frequent runs will not produce newer data.
diff --git a/docs/Network Flows/Flow Protocols/IPFIX.mdx b/docs/Network Flows/Flow Protocols/IPFIX.mdx
index fc3fa2cb89..bfc04e6af4 100644
--- a/docs/Network Flows/Flow Protocols/IPFIX.mdx
+++ b/docs/Network Flows/Flow Protocols/IPFIX.mdx
@@ -139,7 +139,7 @@ See [Troubleshooting](https://learn.netdata.cloud/docs/network-flows/troubleshoo
the full diagnostic recipe. For IPFIX specifically, watch the `template_errors` dimension
on `netflow.input_packets` -- IPFIX is template-driven and data records arriving before
their templates are dropped. See also
-[Validation and Data Quality](https://learn.netdata.cloud/docs/network-flows/validation).
+[Validation and Data Quality](https://learn.netdata.cloud/docs/network-flows/validation-and-data-quality).
diff --git a/docs/Network Flows/Flow Protocols/NetFlow.mdx b/docs/Network Flows/Flow Protocols/NetFlow.mdx
index df6be1faf6..fecfd00d79 100644
--- a/docs/Network Flows/Flow Protocols/NetFlow.mdx
+++ b/docs/Network Flows/Flow Protocols/NetFlow.mdx
@@ -162,7 +162,7 @@ journal:
See [Troubleshooting](https://learn.netdata.cloud/docs/network-flows/troubleshooting) for
the full diagnostic recipe -- including UDP path checks, template-error analysis,
and the "looks like a bug but isn't" section (doubling, mirroring, internal-IP geolocation).
-See also [Validation and Data Quality](https://learn.netdata.cloud/docs/network-flows/validation)
+See also [Validation and Data Quality](https://learn.netdata.cloud/docs/network-flows/validation-and-data-quality)
and [Anti-patterns](https://learn.netdata.cloud/docs/network-flows/anti-patterns).
diff --git a/docs/Network Flows/Flow Protocols/sFlow.mdx b/docs/Network Flows/Flow Protocols/sFlow.mdx
index 40a9e9a53f..d5d51e16d3 100644
--- a/docs/Network Flows/Flow Protocols/sFlow.mdx
+++ b/docs/Network Flows/Flow Protocols/sFlow.mdx
@@ -141,7 +141,7 @@ the full diagnostic recipe. sFlow-specific gotchas: counter samples are not surf
(only flow samples), bytes/packets are statistical estimates that won't match SNMP
byte-for-byte, and VLAN information comes from `ExtendedSwitch` records only -- not
from 802.1Q tags inside the sampled header. See also
-[Validation and Data Quality](https://learn.netdata.cloud/docs/network-flows/validation)
+[Validation and Data Quality](https://learn.netdata.cloud/docs/network-flows/validation-and-data-quality)
and the sFlow section of [Anti-patterns](https://learn.netdata.cloud/docs/network-flows/anti-patterns).