Monitoratge SNMP a Odoo 19: llindar superat, tiquet obert
Servidors, commutadors (switches), SAI, sensors de temperatura a la sala de servidors: gairebé tot el que penja d'una xarxa parla SNMP i pot informar del seu estat. La pregunta és només qui escolta, i què passa quan un valor se surt de mare.
Per a la infraestructura que atenem per als nostres clients, hem posat ara aquesta cadena en un sol lloc: el nostre Odoo 19 consulta els dispositius, compara els valors amb llindars i, quan s'arriba a un límit, obre un tiquet a l'helpdesk, al client a qui pertany el dispositiu. Cap sistema de monitoratge separat que escrigui per correu electrònic a l'helpdesk, sinó el mateix sistema on client, dispositiu i tiquet ja estan relacionats.
Hem desenvolupat el mòdul per a la nostra pròpia operativa. No és una publicació per a la comunitat com els nostres mòduls d'extractes bancaris o de factures electròniques, sinó part de la nostra plataforma interna d'atenció, com la localització de la qual hem informat darrerament.
Del valor mesurat al tiquet
El procés es manté deliberadament senzill:
- Es crea un dispositiu amb adreça i credencials (SNMP v1, v2c o v3 amb autenticació i xifratge). En desar, Odoo n'obté la descripció del sistema, el nom del sistema i l'uptime: la confirmació més honesta que l'adreça i les credencials són correctes.
- Al dispositiu es defineixen punts de dades: un OID, una unitat, una assignació de client.
- Una planificació consulta tots els punts de dades actius. Per a cada dispositiu es connecta una sola vegada, no per a cada punt de dades; amb vint OID en un commutador, és la diferència entre una i vint sessions.
- Cada punt de dades pot vigilar llindars: un límit superior, un límit inferior o tots dos.
- Si se supera un límit, es crea un tiquet d'helpdesk.
Un tiquet per incident, no per mesura
El punt més important de la lògica d'alarma: només compta el canvi d'estat. Qui crea un tiquet a cada mesura, després d'una nit amb un sensor encallat o que rebota té tres-cents tiquets: això no és alertar, és enterbolir.
Per això el mòdul recorda per a cada punt de dades si és en estat «Normal» o «Alarma». En superar el límit per primera vegada, l'estat canvia, un missatge arriba al chatter del dispositiu i s'obre un tiquet, amb el client afectat com a soci, amb punt de dades, dispositiu, valor mesurat i límit infringit al text. Mentre el valor es manté fora del límit, no passa res més: el tiquet és obert, els nostres tècnics ho saben.
Quan el valor torna al rang normal, el mòdul escriu un avís de fi d'alarma al mateix tiquet i desfà el vincle. Si el tiquet es tanca després, ho continua decidint una persona: un valor que baixa breument per sota del límit encara no vol dir que la causa estigui resolta.
Els llindars es comproven a cada mesura, independentment de si el valor es desa. Un valor constantment massa alt continua sent una alarma. I una alarma mai no pot fallar pel fet que no es pugui crear un tiquet: si la creació falla, el registre i el missatge al dispositiu es conserven igualment.
Desar només el que canvia
Un punt de dades consultat cada cinc minuts dona 105.000 valors a l'any. Amb cent punts de dades, són més de deu milions de files, per a valors que majoritàriament no han canviat gens.
Per això només es desa el que difereix del darrer valor desat en més d'un llindar configurat, per a cada punt de dades com a diferència absoluta (per exemple 0,5 °C), com a desviació percentual o a cada canvi. El valor actual i el moment de l'última consulta sempre figuren, tanmateix, al punt de dades; només s'aprima l'historial.
On s'escriuen els valors també és configurable: a la base de dades d'Odoo, a una MongoDB o com a fitxers CSV al filestore d'Odoo. Així mantenim els valors mesurats fora de la base de dades de l'ERP: el mateix principi que amb les dades de posició de la localització. L'historial es pot mostrar en qualsevol cas com a diagrama, amb la condensació per hores com a mitjana, no com a suma.
Nivell d'ompliment en percentatge en lloc de bytes
Algunes magnituds no figuren com a tals al dispositiu. El nivell d'ompliment d'una partició s'ha de calcular a partir de la memòria ocupada i la mida total; els sensors de temperatura sovint donen enters escalats: 235 per a 23,5 graus.
Per això un punt de dades pot adoptar el valor tal com s'informa, multiplicar-lo per un factor o calcular-lo com a percentatge d'un segon OID. Per als llindars això és decisiu: un límit del 90 % val per a qualsevol mida de disc. Un límit en gigabytes s'hauria de mantenir per a cada unitat.
Ningú no ha de saber OID de memòria
En servidors Windows i Linux, la HOST-RESOURCES-MIB està normalitzada: les unitats i la memòria de treball són en un lloc conegut. Una detecció de dispositius llegeix la taula, converteix els nivells d'ompliment en percentatge i crea amb un clic els punts de dades amb el seu límit d'alarma.
Per a tota la resta hi ha un navegador SNMP que recorre l'arbre d'OID i mostra cada OID trobat amb el seu valor actual i, si és conegut al catàleg, amb nom, descripció i unitat de la MIB del fabricant importada. N'hi ha prou de marcar-ho.
Què hi guanyen els nostres clients
Els dispositius i punts de dades estan assignats a clients. Al portal de clients hi trobarà, a Els meus valors SNMP, els valors mesurats actuals dels seus dispositius i l'evolució de les últimes 24 hores, 7 dies, 30 dies o 12 mesos com a diagrama: els mateixos valors que veiem nosaltres. Només és visible el que està assignat a la seva empresa.
I quan se supera un llindar, no ha de fer res: el tiquet ja és a casa nostra, amb dispositiu, valor i hora, abans que ho noti.
Què no és deliberadament el mòdul
No és un substitut d'un monitoratge complet amb comprovacions de disponibilitat, cadenes d'escalada i arbres de dependències. No accepta SNMP traps, sinó que consulta activament. I no tanca cap tiquet automàticament: l'avís de fi d'alarma és un missatge, no un canvi d'estat.
Es tracta exactament d'un tram: del valor mesurat, passant pel límit, fins al tècnic que se n'ocupa. Aquest tram ara és tan curt com pot ser.
Si vol incorporar els seus servidors, dispositius de xarxa o sensors a aquesta supervisió, posi's en contacte amb nosaltres.