# 🧾 PromQL Cheat Sheet – Réseau (NOC Covage) --- ## 🔹 Interfaces réseau ### 🔧 Débit entrant par interface ```promql rate(if_in_octets[1m]) * 8 ``` ### 🔧 Débit sortant par interface ```promql rate(if_out_octets[1m]) * 8 ``` ### 🔧 Débit total (entrant + sortant) ```promql rate(if_in_octets[1m]) * 8 + rate(if_out_octets[1m]) * 8 ``` ### 🔧 Top 5 interfaces par débit total ```promql topk(5, rate(if_in_octets[1m]) * 8 + rate(if_out_octets[1m]) * 8) ``` ### 🔧 Débit moyen par site ```promql avg(rate(if_in_octets[1m]) * 8 + rate(if_out_octets[1m]) * 8) by (site) ``` --- ## 🔹 Erreurs & Paquets perdus ### ❌ Erreurs entrantes ```promql rate(if_in_errors[1m]) ``` ### ❌ Erreurs sortantes ```promql rate(if_out_errors[1m]) ``` ### ❌ Taux d’erreur global ```promql (rate(if_in_errors[1m]) + rate(if_out_errors[1m])) / (rate(if_in_ucast_pkts[1m]) + rate(if_out_ucast_pkts[1m])) * 100 ``` --- ## 🔹 Utilisation bande passante ### 📊 Pourcentage d’utilisation (interface 1 Gbps par ex.) ```promql (rate(if_in_octets[1m]) * 8) / 1e9 * 100 ``` ### 📊 Interface à plus de 80 % : ```promql ((rate(if_in_octets[1m]) + rate(if_out_octets[1m])) * 8) / 1e9 * 100 > 80 ``` --- ## 🔹 Disponibilité & Ping (poller ICMP Covage) ### 📶 Serveur accessible (perte < 100%) ```promql ping_loss_ratio < 1 ``` ### 🔍 Serveur KO (perte totale) ```promql ping_loss_ratio == 1 ``` ### ⏱ Temps de réponse ping ```promql ping_avg_duration_seconds ``` ### ⏱ Temps min ```promql ping_min_duration_seconds ``` ### ⏱ Temps max ```promql ping_max_duration_seconds ``` --- ## 🔹 Alertes types NOC ### 🔔 Interface saturée > 90% ```promql ((rate(if_in_octets[1m]) + rate(if_out_octets[1m])) * 8) / 1e9 * 100 > 90 ``` ### 🔔 Trop d’erreurs sur une interface ```promql (rate(if_in_errors[5m]) + rate(if_out_errors[5m])) > 100 ``` ### 🔔 Perte de lien ```promql if_oper_status == 2 ``` --- ## 🔹 Agrégations utiles | Fonction PromQL | Usage réseau | |------------------------|---------------------------------------------| | `sum()` | Total par site, zone, ou équipement | | `avg()` | Moyenne trafic/erreurs sur 5min | | `topk()`, `bottomk()` | Interfaces les plus actives/inactives | | `max()`, `min()` | Détection des extrêmes | | `rate(metric[1m])` | Vitesse d’évolution par seconde | | `irate(metric[1m])` | Dernière vitesse instantanée | --- ## 🔹 Bonnes pratiques NOC Covage - Utiliser les labels `site`, `equipement`, `interface`, `region`, `vlan` - Grouper les panels par région ou typologie d’équipement (CPE, PE, L2…) - Créer des dashboards de supervision par POP ou backbone - Prioriser les panels réseau critiques : disponibilité, saturation, erreur - Documenter les seuils d’alerte (normal, warning, critique) ---