Bonjour à tous,
J’en parle sur plusieurs sujets depuis quelques temps, mais ce post est l’occasion de parler plus précisément de la v3 du plugin Monitoring plugin-monitoring qui est en cours de développement.
Déjà une première information :
- Le plugin devenait un « mille feuille » au niveau du code, avec les multiples ajouts faits au fil des mois et des années, et devenait compliqué à maintenir, avec tous les cas à gérer (les multiples versions de Linux, de comment vous les utilisez, ce que vous installez dessus, et donc ce qu’il faut adapter dans le code pour gérer ces cas d’usage)
J’ai voulu mettre un peu d’ordre dans tout cela, et je me suis retrouvé au final à réécrire pratiquement entièrement le code
La bonne nouvelle, c’est que cela fonctionne (toujours lol), et que le code est maintenant plus modulable lors de l’ajout d’une commande ou bien à la modification d’une autre (en fonction des versions d’OS qui évoluent, des packages linux etc…), mais ce n’est pas encore terminé.
Autre information : Cette version 3 (comme déjà annoncé) ne sera compatible qu’à partir des version 4.4 de Jeedom et de Debian 11, et a été écrit (pour les parties concernées) en pure JS (sans JQuery).
L’autre bonne nouvelle (c’est une demande que j’avais dans ma backlog), le plugin devient plus personnalisable et surtout utilisable dans des scénarios ou des virtuels (ou autre) sur l’ensemble des données et donc des commandes du plugin :
- Vous voulez tester la place qu’il reste sur un disque = l’info est là
- Vous voulez ne pas tester la mémoire libre, mais la mémoire utilisée, le % est là aussi
- Vous voulez historiser chaque commande pour permettre de suivre son évolution, c’est possible (mémoire, trafic réseau, disque, swap, etc…)
- Vous voulez avec les valeurs en nombre (156678899 disponible sur le disque) et pas en chaine de caractères (Go, To, Ko, etc…), c’est possible
Le template de widget est toujours là, mais se personnalise et s’unifie (autres demandes que j’avais) pour chaque commande, vous avez d’un coup d’oeil les infos : Total + Libre + Utilisé (et non pas un mix de ces infos), chaque icone peut se personnaliser (autant en couleurs que de changer l’icone si vous le souhaitez !)
Côté tableau des commandes, forcément, il y en a plus de disponibles avec tous ces changements (extrait car il y en a encore d’autres) :
MAIS : pour ceux qui cherchent la simplicité :
- Pas besoin d’aller dans ce tableau de commandes et de toucher à quoi que ce soit si vous ne le souhaitez pas : par défaut, le plugin continue à s’afficher sur le Dashboard et à aller récupérer les infos comme l’ancienne version
Donc il peut devenir personnalisable pour ceux qui le souhaitent, et pour ceux qui cherchent la simplicité, il y aura juste à l’installer et comme avant à ajouter vos équipements.
Si vous ne souhaitez pas utiliser le template intégré, vous aurez la possibilité d’utiliser les commandes individuellement pour vous faire votre propre design (soit via un virtuel, soit en désactivant l’usage du template dans les options de l’équipement). Après à vous de les gérer comme bon vous semble :
2ème information :
- Le plugin Monitoring sera intégré au plugin SSH Manager plugin-sshmanager (actuellement en version béta et qui passera en stable d’ici la sortie de Monitoring v3), ce qui signifie que pour que Monitoring fonctionne pour se connecter en SSH à un équipement, il aura besoin que le plugin SSH Manager soit installé, et à l’inverse, si vous souhaitez lancer d’autres commandes SSH sur vos équipements, il vous suffira de les ajouter dans le plugin SSH Manager (sans surcharger le plugin Monitoring)
Alors pas d’inquiétude là non plus :
- Tout cela se fera de manière automatique !
- Il suffira d’installer (ou de mettre à jour) le plugin Monitoring, et le code s’occupera d’installer la bonne version de SSH-Manager (s’il n’est pas déjà installé).
- Et cerise sur le gâteau, la version (beta ou stable) de Monitoring, fera (encore une fois si le plugin n’est pas déjà installé par ailleurs) matcher sa version avec celle de SSH Manager
- si Monitoring est en version béta, il installera par défaut la version béta de SSH Manager, et si Monitoring est en stable, il installera la version stable de SSH Manager.
- MAIS : si SSH Manager est déjà installé (qu’il soit en stable ou en béta) il n’y touchera pas
Alors certains vont se dire « et quid des performances avec tout ca » ? :
La plupart des informations que vont s’afficher étaient déjà récupérées lors des connexions sur vos équipements, mais pas exploitées, donc forcément ca va prendre un peu plus de ressources sur jeedom pour stocker en base de données ces infos, mais on parle de quelques chiffres et de texte de quelques dizaines de caractères ! donc cela ne devrait pas avoir d’impact.
Sur mes plateformes de tests (notamment un pi3b+ et un odroid c2 pour les moins costauds) cela tourne très bien et je ne vois pas de différence.
La contrepartie ? :
- Je ne sais pas encore si la migration (fluide) sera possible entre la version 2.5 et la future v3 du plugin concernant vos équipements ! Il est possible que vous deviez recréer vos équipements et adapter les scénarios que vous utilisiez déjà avec ce plugin.
C’est ce que je suis en train de regarder actuellement, mais il y a eu tellement de changements dans le code, que cela risque d’être compliqué (mais si c’est possible, je le ferai bien entendu, et si ce n’est pas possible, tout sera expliqué dans la documentation)
Via ce post, je suis à votre écoute et il est là pour que l’on discute de cette nouvelle version v3 et de ce que vous attendez en terme de fonctionnalités et qu’il n’y aurait pas encore
Bon week-end,
TiTidom.