Bonjour,
Si ça peut intéresser du monde, j'ai mis en publique le fork de SexyGraph / Freebox Monitoring que je maintiens de mon coté depuis pas mal de temps.
Dispo sur mon repo : https://github.com/Daryes/freebox-monitoring
Preneur de tout retour, ici ou via un ticket sur le repo.
Les éléments qui peuvent coincer immédiatement :
La version de bruno78310 utilisée ici a aussi divergée avec le temps, tout comme la mienne.
Donc autant le script principal se remplace par simple copier/coller, autant les métriques générées autres que les principales vont varier sur les noms et mode de présentation.
Pas de dockerfile fourni pour l'instant.
Pour le reste :
principe d'origine conservé, un simple remplacement du script suffit.
Le fichier credential est réutilisable tel que, utiliser le parametre "--api-endpoint-detect-force" pour un ancien fichier credential. Son emplacement est d'ailleurs paramétrable.
détection automatique de la version de l'API, et connexion en https.
Le certificat CA special de Free (répertoire ssl/ ) est utilisé pour valider l'accès SSL à la box, mais est aussi désactivable.
les éléments numérotés tels que n° de port de switchs, sondes, ..., sont présentés via l'usage de tags dans les métriques.
Ceci simplifie et automatise la gestion lorsque le nombre est variable, mais a pour impact de devoir reprendre certains panneaux des dashboards
les métriques suivantes peuvent être collectées : systeme, switch, wifi, LTE, lan, journal d'appels, disques internes, ...
Se reporter à l'aide intégrée pour la liste complète des possibilités.
Attention : certaines métriques n'ont pas été totalement testées, faute de matériel de mon coté.
Le mode --debug permet d'afficher les informations brutes de l'API pour aider à corriger.
Concernant l'usage, toujours le même principe :
# aide
./freebox_monitor.py --help
# enregistrement et status
./freebox_monitor.py --register
./freebox_monitor.py --register-status
# commande de collecte (exemple)
./freebox_monitor.py --status-sys --status-switch --status-lan-browser
Point particulier pour une installation existante, ou pour utiliser la dernière version de l'API :
# forcer la détection de la version de l'API
./freebox_monitor.py --api-endpoint-detect-force --status...
La version est mise en cache dans le fichier credential, évitant l'impact des changements majeurs, mais bloque l'accès aux nouveautés. Utiliser ce paramètre pour toujours appeler la dernière version de l'API proposée par la box.
Nb : c'est peut être dépendant du modèle de box, mais pour la mini4k, je n'ai pas eu à réenregistrer le script depuis des années, alors que l'API a évoluée, et le script aussi.