Meraki : Compter les évènements du log

Gérant un parc de plusieurs centaines de sites équipés des bornes Wi-Fi Meraki MR, j’ai été confronté à la situation suivante : comment garder un oeil sur la stabilité des canaux et compter les évènements DFS (générés par l’utilisation de certains canaux 5GHz), sans avoir à parcourir l’event log site par site ?

L’API Meraki permet de récupérer une partie de cet event log, et renvoie les évènements correspondant à un type donné. Je me suis basé dessus, afin de créer un compteur d’évènements, simple à utiliser, et donnant directement le résultat pour chaque réseau d’une organisation.

J’ai développé ce script en Python, avec pour base technique la librairie Meraki. Le code peut être récupéré sur mon Github.

Ses fonctionnalités principales sont :

  • Choix du type de produit avec le paramètre -p (Par exemple : wireless, switch, appliance)
  • Choix de l’évènement avec le paramètre -t (exemple ici : dfs_event)
  • Comptage sur toute l’organisation ou sur un network donné (en paramètre -n avec le network ID)
  • Réglage de la période d’analyse et de comptage des évènements (par défaut : 24 heures)

Si aucune organisation n’est renseignée le script affiche celles rattachées à votre clé API, comme dans l’exemple ci-dessous :

python getMerakiEventCount.py -p wireless
Using default timespan : 1 day
Please set Org ID in parameters - available organizations :
Organization : 549236, Name : DevNet Sandbox
Organization : 463308, Name : DevNet San Jose

Voici un exemple d’utilisation de ce script sur l’organisation portant l’ID 549236 (pour retrouver votre organisation :

python getMerakiEventCount.py -p wireless -t dfs_event -o 549236

Using default timespan : 1 day
Timespan : between 2020-11-14 16:37:07.722869 and 2020-11-15 16:37:07.722869
Network : DevNet Sandbox ALWAYS ON , Number of dfs_event : 17
Network : DNSMB3 , Number of dfs_event : 0
Network : DNSMB2 , Number of dfs_event : 1

Cela permet d’avoir de façon très simple et rapide une vue synthétique du nombre d’évènements pour chaque réseau (network) rattaché à l’organisation.

Petit bémol , les « event type » à saisir en paramètre ne sont pas listés dans les documentations Meraki. J’ai pris pour l’habitude de les récupérer dans un premier temps par l’utilisation de la requête getNetworkEvents de l’API afin de pouvoir choisir quel event type sera pertinent pour le comptage d’évènements.

N’hésitez pas à me faire part de vos suggestions ou améliorations pour ce script qui je l’espère vous sera utile !

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.