Journal FAIM : un système de monitoring en bash pour le fun à ne pas déployer en prod

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
5
4
nov.
2025

Sans se mentir, il y a une hiérarchie dans les langages ; certains sont cool et montrent que vous êtes des vrais programmeurs : l'assembleur, le C, rust, Go … D'autres sont « du scripting » : php, python, R … Enfin certains sont méprisés comme bash.

Ce projet de monitoring est volontairement fait en bash*; pour le fun.
https://github.com/jul/FAIM

  • Enfin, il requiert en dépendance socat pour écrire et recevoir les messages, et gnuplot-lite pour les collecteurs.

Principe

La raison pour laquelle ce projet est à ne PAS déployer en prod est qu'il communique les résultats des sondes sur une adresse de broadcast UDP.

Chaque sonde est un programme que l'on peut appeler en bash et qui ressort les données sous la forme "nom d'hôte":"nom de la métrique":valeur:"(GAUGE|DERIVE|COUNTER)"
(la dernière information n'est pas utilisée pour l'instant). À la munin.

Un lien symbolique de la sonde vers sonde_enabled permet de l'activer.

Bref, c'est vraiment tout con.

La doc

Je me suis amusé à tester l'autodocumentation en POD (Plain Old Documentation de Perl) que j'ai probablement vu et repiqué aux sondes munin, dont certaines sont adaptées quasi à l'identique.

Un petit script bash qui mêle pandoc et pod permet de générer la doc finale.

Comme quoi, on peut auto-documenter du code bash.

À quoi ça peut servir ?

À s'amuser. En plus, ce système était fait pour pouvoir pisser de la mesure au plus vite que l'overrun permettait, mais un problème de non portabilité vers freeBSD de date m'empêchant d'utiliser les nanosecondes, ça descend au mieux à 1 secondes.

Vitesse parfois nécessaire pour voir des phénomènes bref que des outils se basant sur RRD peuvent lisser.

En plus vu les dépendances, ça se déploit user space ;D

  • # tss tss

    Posté par  (site web personnel) . Évalué à 4 (+2/-0).

    des vrais programmeurs : l'assembleur, le C

    [Tousse, tousse.]

    Enfin certains sont méprisés comme bash.

    Perso je ne méprise pas bash, mais je suis émerveillé de voir jusqu'où la pugnacité peut porter ses excès, et je suis incertain de savoir si je dois admirer une certaine grande tolérance à ses nombreuses faiblesses ou le talent effronté de celles et ceux qui le pratique.

    Adhérer à l'April, ça vous tente ?

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.