Integrate comprehensive monitoring solution.
Motivation
The Tempesta firewall is evolving, and a key component of its success and usability is the ability for users to effectively monitor performance and security metrics. Let's implement own node exporter for Prometheus and a Grafana dashboard that presents these metrics in a user-friendly manner.
Scope
- [ ] ~Custom Node Exporter Development: Create a custom Node Exporter that accurately collects and exports Tempesta firewall-specific metrics.~ We don't need a node exporter, let's just implement
/metricsendpoint. - [ ] Grafana Dashboard Design: Develop a Grafana dashboard that leverages the data provided by our Node Exporter. The dashboard should offer clear visualizations of key metrics, allowing users to quickly assess the health of their Tempesta firewall installation.
Testing
Create separate tests for:
- [ ] Package installation.
- [ ] Node exporter status checks (ensure that the service starts automatically and metrics are accessible).
Documentation
Separate article for Monitoring should be created in Wiki.
Tempesta FW must return the same as in /proc/tempesta statistics for Prometheus - need to implement the Prometheus endpoint for this. The endpoint must be protected by an ACL, like we do this for PURGE.
This is also required for the Escudo analytics daemon and would simplify WebBot logic like https://github.com/tempesta-tech/webshield/issues/11