Skip to Content

Odoo 19 Community: Παρακολούθηση SNMP με αυτόματη δημιουργία ticket – η ενότητά μας ανοιχτού κώδικα

18 Σεπτεμβρίου 2026 από
Odoo 19 Community: Παρακολούθηση SNMP με αυτόματη δημιουργία ticket – η ενότητά μας ανοιχτού κώδικα
Alexander Biringer | Biricon IT Services GmbH

Παρακολούθηση SNMP στο Odoo 19: Υπέρβαση ορίου, άνοιγμα ticket

Διακομιστές, switches, συστήματα UPS, αισθητήρες θερμοκρασίας στην αίθουσα διακομιστών: σχεδόν ό,τι είναι συνδεδεμένο σε ένα δίκτυο μιλά SNMP και μπορεί να δώσει πληροφορίες για την κατάστασή του. Το ερώτημα είναι μόνο ποιος ακούει – και τι συμβαίνει όταν μια τιμή ξεφεύγει.

Για την υποδομή που φροντίζουμε για τους πελάτες μας, συγκεντρώσαμε τώρα αυτή την αλυσίδα σε ένα σημείο: το Odoo 19 μας ερωτά τις συσκευές, συγκρίνει τις τιμές με όρια και, όταν επιτευχθεί ένα όριο, ανοίγει ένα ticket στο helpdesk – στον πελάτη στον οποίο ανήκει η συσκευή. Όχι ένα ξεχωριστό σύστημα παρακολούθησης που γράφει με e-mail στο helpdesk, αλλά το ίδιο σύστημα, στο οποίο πελάτης, συσκευή και ticket συνδέονται ούτως ή άλλως.

Την ενότητα την αναπτύξαμε για τη δική μας λειτουργία. Δεν είναι δημοσίευση για την κοινότητα όπως οι ενότητές μας για τραπεζικά αντίγραφα ή ηλεκτρονικά τιμολόγια, αλλά μέρος της εσωτερικής μας πλατφόρμας φροντίδας – όπως ο εντοπισμός, για τον οποίο γράψαμε τελευταία.

Από την τιμή μέτρησης στο ticket

Η διαδικασία είναι σκόπιμα απλή:

  1. Μια συσκευή δημιουργείται με διεύθυνση και διαπιστευτήρια (SNMP v1, v2c ή v3 με πιστοποίηση και κρυπτογράφηση). Κατά την αποθήκευση το Odoo λαμβάνει περιγραφή συστήματος, όνομα συστήματος και uptime – η πιο ειλικρινής επιβεβαίωση ότι η διεύθυνση και τα διαπιστευτήρια είναι σωστά.
  2. Στη συσκευή ορίζονται σημεία δεδομένων: ένα OID, μια μονάδα, μια ανάθεση σε πελάτη.
  3. Ένα χρονοδιάγραμμα ερωτά όλα τα ενεργά σημεία δεδομένων. Για κάθε συσκευή γίνεται σύνδεση μία φορά, όχι ανά σημείο δεδομένων – με είκοσι OIDs σε ένα switch αυτό είναι η διαφορά μεταξύ μίας και είκοσι συνεδριών.
  4. Κάθε σημείο δεδομένων μπορεί να παρακολουθεί όρια: ένα ανώτατο όριο, ένα κατώτατο όριο ή και τα δύο.
  5. Όταν ξεπεραστεί ένα όριο, δημιουργείται ένα ticket helpdesk.

Ένα ticket ανά συμβάν, όχι ανά μέτρηση

Το σημαντικότερο σημείο στη λογική συναγερμών: Μετράει μόνο η αλλαγή κατάστασης. Όποιος δημιουργεί ticket σε κάθε μέτρηση, έχει μετά από μια νύχτα με έναν κολλημένο ή αναπηδώντα αισθητήρα τριακόσια tickets – αυτό δεν είναι ειδοποίηση, αυτό είναι θόλωμα.

Η ενότητα απομνημονεύει γι’ αυτό για κάθε σημείο δεδομένων αν βρίσκεται στην κατάσταση «Κανονικό» ή «Συναγερμός». Στην πρώτη υπέρβαση του ορίου αλλάζει η κατάσταση, ένα μήνυμα καταγράφεται στο Chatter της συσκευής και ανοίγει ένα ticket – με τον επηρεαζόμενο πελάτη ως συνεργάτη, με σημείο δεδομένων, συσκευή, μετρημένη τιμή και παραβιασμένο όριο στο κείμενο. Όσο η τιμή παραμένει εκτός ορίου, δεν συμβαίνει τίποτα περαιτέρω: το ticket είναι ανοιχτό, οι τεχνικοί μας γνωρίζουν.

Όταν η τιμή επιστρέψει στο κανονικό εύρος, η ενότητα γράφει μια ειδοποίηση άρσης στο ίδιο ticket και λύνει τη σύνδεση. Το αν το ticket θα κλείσει τότε, το αποφασίζει και πάλι άνθρωπος – μια τιμή που πέφτει για λίγο κάτω από το όριο δεν σημαίνει ακόμη ότι η αιτία έχει αποκατασταθεί.

Τα όρια ελέγχονται σε κάθε μέτρηση, ανεξάρτητα από το αν η τιμή αποθηκεύεται. Μια σταθερά πολύ υψηλή τιμή παραμένει συναγερμός. Και ένας συναγερμός δεν επιτρέπεται ποτέ να αποτύχει επειδή δεν μπορεί να δημιουργηθεί ένα ticket – αν αποτύχει η δημιουργία, το αρχείο καταγραφής και το μήνυμα στη συσκευή παραμένουν παρ’ όλα αυτά.

Αποθήκευση μόνο όσων αλλάζουν

Ένα σημείο δεδομένων που ερωτάται κάθε πέντε λεπτά παράγει 105.000 τιμές τον χρόνο. Με εκατό σημεία δεδομένων αυτό είναι πάνω από δέκα εκατομμύρια γραμμές – για τιμές που κατά κανόνα δεν έχουν καν αλλάξει.

Αποθηκεύεται γι’ αυτό μόνο ό,τι διαφέρει από την τελευταία αποθηκευμένη τιμή περισσότερο από ένα ρυθμισμένο κατώφλι – ανά σημείο δεδομένων ως απόλυτη διαφορά (π.χ. 0,5 °C), ως ποσοστιαία απόκλιση ή σε κάθε αλλαγή. Η τρέχουσα τιμή και η χρονική στιγμή της τελευταίας ερώτησης βρίσκονται παρ’ όλα αυτά πάντα στο σημείο δεδομένων· αραιώνεται μόνο το ιστορικό.

Το πού γράφονται οι τιμές είναι επίσης ρυθμιζόμενο: στη βάση δεδομένων του Odoo, σε μια MongoDB ή ως αρχεία CSV στο filestore του Odoo. Κρατάμε έτσι τις τιμές μέτρησης εκτός της βάσης δεδομένων ERP – η ίδια αρχή όπως με τα δεδομένα θέσης του εντοπισμού. Το ιστορικό μπορεί σε κάθε περίπτωση να εμφανιστεί ως διάγραμμα, με ωριαία συμπύκνωση ως μέσος όρος, όχι ως άθροισμα.

Ποσοστό πλήρωσης αντί για bytes

Ορισμένα μεγέθη δεν υπάρχουν ως τέτοια στη συσκευή. Το ποσοστό πλήρωσης ενός διαμερίσματος (partition) πρέπει να υπολογιστεί από τη χρησιμοποιούμενη μνήμη και το συνολικό μέγεθος· οι αισθητήρες θερμοκρασίας συχνά επιστρέφουν κλιμακωμένους ακέραιους – 235 για 23,5 βαθμούς.

Ένα σημείο δεδομένων μπορεί γι’ αυτό να υιοθετήσει την τιμή όπως αναφέρεται, να την πολλαπλασιάσει με έναν παράγοντα ή να την υπολογίσει ως ποσοστό ενός δεύτερου OID. Για τα όρια αυτό είναι καθοριστικό: ένα όριο 90 % ισχύει για κάθε μέγεθος δίσκου. Ένα όριο σε gigabyte θα έπρεπε να συντηρείται ξεχωριστά για κάθε μονάδα δίσκου.

Κανείς δεν χρειάζεται να γνωρίζει OIDs απέξω

Στους διακομιστές Windows και Linux το HOST-RESOURCES-MIB είναι τυποποιημένο: οι μονάδες δίσκου και η μνήμη εργασίας βρίσκονται σε γνωστή θέση. Μια αναγνώριση συσκευής διαβάζει τον πίνακα, μετατρέπει τα ποσοστά πλήρωσης σε ποσοστά και δημιουργεί τα σημεία δεδομένων μαζί με το όριο συναγερμού με ένα κλικ.

Για όλα τα υπόλοιπα υπάρχει ένας SNMP browser, που διατρέχει το δέντρο OID και δείχνει κάθε OID που βρέθηκε με την τρέχουσα τιμή του – και, αν είναι γνωστό στον κατάλογο, με όνομα, περιγραφή και μονάδα από το εισαχθέν MIB του κατασκευαστή. Αρκεί ένα τικ.

Τι κερδίζουν οι πελάτες μας

Οι συσκευές και τα σημεία δεδομένων αντιστοιχίζονται σε πελάτες. Στην πύλη πελατών βρίσκετε στο Οι τιμές SNMP μου τις τρέχουσες τιμές μέτρησης των συσκευών σας και το ιστορικό των τελευταίων 24 ωρών, 7 ημερών, 30 ημερών ή 12 μηνών ως διάγραμμα – τις ίδιες τιμές που βλέπουμε κι εμείς. Ορατό είναι αποκλειστικά ό,τι αντιστοιχεί στην επιχείρησή σας.

Και όταν ξεπεραστεί ένα όριο, δεν χρειάζεται να κάνετε τίποτα: το ticket βρίσκεται ήδη σε εμάς, με συσκευή, τιμή και ώρα, προτού το προσέξετε.

Τι δεν είναι σκόπιμα η ενότητα

Δεν αποτελεί υποκατάστατο πλήρους παρακολούθησης με ελέγχους διαθεσιμότητας, αλυσίδες κλιμάκωσης και δέντρα εξαρτήσεων. Δεν δέχεται SNMP traps, αλλά ερωτά ενεργά. Και δεν κλείνει αυτόματα κανένα ticket – η ειδοποίηση άρσης είναι ένα μήνυμα, όχι αλλαγή κατάστασης.

Πρόκειται για ακριβώς μία διαδρομή: από την τιμή μέτρησης μέσω του ορίου στον τεχνικό που αναλαμβάνει. Αυτή η διαδρομή είναι τώρα όσο πιο σύντομη γίνεται.

Εάν θέλετε να συμπεριλάβετε τους διακομιστές, τις συσκευές δικτύου ή τους αισθητήρες σας σε αυτή την παρακολούθηση, επικοινωνήστε μαζί μας.