The app continues to report Signal-to-Noise Ratio (SNR) metrics for nodes that are no longer neighbors. This issue affects both inactive nodes and active nodes that have stopped being neighbours. As a result, metrics are displayed inaccurately in Prometheus and Grafana, leading to confusion and incorrect network monitoring.
Steps to Reproduce:
-
Set up the Prometheus exporter in a Meshtastic network.
-
Observe the SNR metrics reported for neighboring nodes.
-
Change the network topology such that some nodes are no longer neighbors (while they may still be active in the network).
-
Observe that the SNR metrics for non-neighbor nodes continue to be reported.
Expected Behavior:
• Metrics for nodes that are no longer neighbors should be removed or reset after they stop being reported as neighbors.
• Metrics should be calculated on demand when Prometheus scrapes data, ensuring that only current neighbors are included.
Actual Behavior:
• Stale metrics for nodes that are no longer neighbors persist indefinitely.
• The exporter pre-calculates and stores metrics, rather than recalculating them on demand during Prometheus scrapes.
The app continues to report Signal-to-Noise Ratio (SNR) metrics for nodes that are no longer neighbors. This issue affects both inactive nodes and active nodes that have stopped being neighbours. As a result, metrics are displayed inaccurately in Prometheus and Grafana, leading to confusion and incorrect network monitoring.
Steps to Reproduce:
Set up the Prometheus exporter in a Meshtastic network.
Observe the SNR metrics reported for neighboring nodes.
Change the network topology such that some nodes are no longer neighbors (while they may still be active in the network).
Observe that the SNR metrics for non-neighbor nodes continue to be reported.
Expected Behavior:
• Metrics for nodes that are no longer neighbors should be removed or reset after they stop being reported as neighbors.
• Metrics should be calculated on demand when Prometheus scrapes data, ensuring that only current neighbors are included.
Actual Behavior:
• Stale metrics for nodes that are no longer neighbors persist indefinitely.
• The exporter pre-calculates and stores metrics, rather than recalculating them on demand during Prometheus scrapes.