From 44dca5dde03da74cdbdd25afccb66d2667b67c14 Mon Sep 17 00:00:00 2001 From: David Boucher Date: Tue, 18 Mar 2025 17:58:52 +0100 Subject: [PATCH] doc(generic-snmp): TODO file to remember what to work on --- experimental/TODO.md | 47 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 experimental/TODO.md diff --git a/experimental/TODO.md b/experimental/TODO.md new file mode 100644 index 000000000..0b1a24950 --- /dev/null +++ b/experimental/TODO.md @@ -0,0 +1,47 @@ +## Remarques diverses + +Dans le cas OK, on a deux cas: +* Soit on affiche tout dans l'output +* Soit on met un message generique. + +Pour les seuils, les noms doivent pouvoir être définis dans le json. + +Il semble intéressant de mettre systématiquement l'agrégation en premier. + +le concaténateur de chaîne " - " doit être paramétrable. + +# Cas plus général +Généralement on a trois étapes: + +1. Collect : je récupère les OIDs +2. Compute : je calcule les valeurs agrégées, ou certaines valeurs particulières +3. evaluation du status : je calcule le status du plugin +4. Je génère la sortie + +l'idéal ici serait de séparer ces 4 actions, ceci permettrait que le jour où les plugins http arrivent on peut réutiliser les 3 dernières étapes. + +## Métriques SNMP +La collect est faite à partir d'OIDs: +* SnmpGet multiples +* SnmpWalk multiples + +Exemples: +* cpu +* mem + +## Tables +* Certains OIDs vont remonter des labels +* Certains OIDs remontent les valeurs +* Certains OIDs remontent des seuils (min, max...) + +Exemples: +* Disk + +## Status +Il peut arriver qu'on traduise des entiers en chaînes de caractères. À définir par nous. +Dans d'autres cas, les valeurs sont déjà des chaînes de caractères. + +# Un interpréteur de commandes +On a besoin sûrement d'un interpréteur pour remplacer tous les `eval` du perl. On va essayer de se restreindre à : +* calculs arithmétiques +* calculs booléens \ No newline at end of file