voilà, ça va faire quelques années que j’ai proposé bm-stats, d’abord pour BM2, puis pour BM3 et maintenant BM3.5.
Le code a très peu évolué. Il est en PERL, et en PHP, ce qui me/nous pose quelques problèmes de maintenance.
J’ai par ailleurs 2 autres contributions en ligne, un outil graphique de recherche dans les logs postfix, et une autre qui renvoie les éléments d’un message vers une plate-forme ELK.
Je vais fusionner le tout pour qu’au final, on ai :
une stack ELK qui permettra de monitorer votre infra BM, mais aussi vos autres machines (Linux ou Windows) Je vous invite à faire un tour sur “elastic.co” pour avoir la capacité du produit.
un service qui parse les fichiers de log en temps réel, et stocke le rendu dans ELK
une interface web fournissant :
[list=] ]les mêmes items que bm-stats (domaine, utilisateur…)./]
[/list]
[list=] ]un module de recherche dans les traces. On a tous été confronté au “j’ai pas reçu le message” d’un utilisateur. Et bien là, vous pourrez faire vos recherches en lignes sans passer la commande ‘grep’./]
[/list]
[list=*] ]une interface de monitoring (un export de KIBANA)./]
[/list]
Le tout sera écrit en Python (3.x), en m’appuyant sur le framework django.
J’en ai pour 6 mois de travail (DEV + UAT + PROD).
Bien sûr, je vous ferai des points réguliers quant à l’avancement.
j’ai commencé le portage sur Django ce qui va mettre un peu de temps.
Ne connaissant pas ce framework, je dois presque tout apprendre.
Je connais déjà Python, et le principe de micro-applications .
Pour les sources, le projet sera accessible sur mon Giltab.
Ah mon cher ami ,
un gros snifff , je ne connais pas non plus… .
Et mon temps en 2018 va s’orienter vers le Collectif des Hébergeurs Alternatifs,Transparents, Ouverts, Neutres et Solidaires. ( chatons.org )
Par contre, je vais suivre ton GIT
L’un des premiers services qui sera ouvert et qui sera la base des autres, ce sera un service BlueMind … (étonnant , non )
je suis entrain de migrer mon vieux serveur (2.0.17, si si , cela existe encore)
Et j’en ai profité pour faire un rapide template Zabbix pour les stats de mes flux mail …
Je vais attaquer l’installation de plusieurs autres serveurs web, mais je vais revenir en début d’année sur le dev d’un script de supervision de process de BlueMind dans Zabbix, et intégration de stats diverse.
Du coup, étant donnée que tu es la référence dans ce domaine, j’aimerai reprendre tes grands lignes pour faire mon intégration.
et bien après la fête, la petite défaite (j’ai la crève)
Pour ce qui est de Zabbix, j’ai un peu de mal avec le mode de stockage des données. Le rrd lisse trop les courbes dans le temps, amha.
En revanche, on n’est pas surpris par la taille du/des fichier(s).
Enfin, pour ce qui est de la métrologie des messages, les chiffres seront peut être faux. La plupart des scripts que j’ai trouvés se contentent de parser chaque ligne
sans se soucier de savoir si ce n’est pas la 2nde fois qu’il traite le message. Le cas classique est le serveur qui intègre Postfix et un antivirus/spam (amavis/clamav/postgrey).
On va retrouver dans la log postfix 2 blocs de lignes pour le même message, le 1er concernant la gestion par Postfix sur l’IP publique, et le second est relatif au renvoi vers la chaine locale de sécu. Mais, bon, une fois qu’on le sait
Concernant mon GIT, j’utilise GitLab. Il a l’avantage de fournir les mécanismes d’Intégration Continue (CI).
Il n’est pas encore ouvert au publique. Mais je te pousse un compte pour t’y connecter.
Bonne crève , remet-toi s’en bien surtout … . ma fille m’a refilé la sienne, elle est partageuse
Vu ton mail ;-), merci, je regarderai ce soir.
Pour Zabbix, à moins que tu spécifies dans les règles que tu gardes X jours les données (365 j par exemple), tu lui donnes les règles pour garder les tendances … .
Pour ma part, c’est une valeur toutes les 60 secondes, pour les retenir sur 90jours et avec après une tendance sur 365 jours ;-).
Cela soulage fortement la base de donnée, et zabbix construit des tables temporaires pour l’affichage des tendances
Pour le moment, j’utilise logcheck, et je retiens dans des fichiers sous /var les offsets des logs lus … .
Et j’aimerai exécuter un tas de requêtes , et ton travail y en est très riche …
un petit bilan de ce qui a été fait depuis 3 mois, et en image
[list=]
[]Les infos de base d’un compte :
[/]
[]La page supervision :
[/]
[]La recherche dans les traces de messages :
[/]
[]Le détail d’une trace :
[/*]
[/list]
Il me reste encore quelques bricoles (graphes, export pdf)
Normalement, je mettrai en ligne la maquette pour fin juin 2018, histoire d’avoir votre retour.
Oups, j’oubliais,
le portail sera accessible pour n’importe quel utilisateur BM.
Un lambda aura le droit à ses stats ainsi qu’à la recherche dans ses traces.
Alors là, il y a du tafff
Chapeau Pascal … … (mais normal, cher ami, c’est ta signature, c’est bien toi …)
Moi beaucoup de boulot dans mon activité principale,
et je suis entrain de faire la E-reputation de la FFMC50
Snniffffff, pas assez de temps pour m’y mettre …
Merci Pascal.
Pas trop dépaysant par rapport à bmStats !
Question: il est prévu que cela utilise l’instance elasticsearch de l’installation BlueMind ou bien il faut une instance à part ?
Concernant la recherche, il serait pratique d’avoir une interface permettant d’ajouter des critères en fonction des besoins.
Par exemple, il est utile de pouvoir rechercher un message dont l’adresse d’expéditeur est … et dont l’un des destinataire est …
Sans doute plus compliqué au niveau interface.
Après, s’il s’agit d’un elasticsearch à part, il est toujours possible d’utiliser kibana pour rechercher.
Mais je confirme, les recherche dans les logs à coup de grep, c’est pénible !!
Beau travail en tout cas !
Alban
Je relativise quant à la recherche et d’après la capture d’écran dans un post plus haut.
Une fois qu’on a une liste de résultats, on peut les parcourir assez simplement (beaucoup plus qu’avec grep !)
Il s’agit bien d’une infra Elastic à part. Je fournirai pour chaque élément de la stack ELK un paquet pour la configuration (les .yml, jvm.* …), et toute la doc qui va avec pour l’install.
Cette nouvelle version
Pour les critères de recherche, c’est vrai que ça va complexifier les requêtes (AND, OR, NOR, NAND…). Je préfère commencer simplement
Je vais ouvrir un Kibana sur la demo. Vous pourrez voir le schéma (template) pour les messages.
bm-monitor est en phase UAT (User Acceptance Tests), en clair l’installation est validée, et là, je (re)teste les fonctionnalités
un repo Debian sera proposé. il me faut juste un VPS chez un hébergeur Pro.
la doc d’install est déjà faite, en anglais, avec 2 exemples d’infra.
il y a même des scripts (import massif de comptes, synchro en tout genre)
Il me reste une fonction dont je ne sais pas si elle est utile voire utilisée : l’envoi par messagerie des stats mensuelles.
Ces rapports peuvent être générés à la demande, pour un domaine, ou pour un compte, sur une période déterminée.
J’ai juste un souhait, pour ma part, éviter de stocker des données sur le serveur “bm-monitor”.
Enfin, je ferai en sorte que tout soit accessible pour le POSS2018, en espérant vous y voir ( au stand BM bien sûr )