Odoo 19'da SNMP izleme: Sınır değer aşıldı, talep açıldı
Sunucular, switch'ler, UPS sistemleri, sunucu odasındaki sıcaklık sensörleri: Bir ağa bağlı hemen her şey SNMP konuşur ve durumu hakkında bilgi verebilir. Soru yalnızca şu: Kim dinliyor – ve bir değer kontrolden çıktığında ne oluyor?
Müşterilerimiz için bakımını yaptığımız altyapıda bu zinciri artık tek bir yere topladık: Odoo 19'umuz cihazları sorgular, değerleri sınır değerlerle karşılaştırır ve bir sınıra ulaşıldığında Helpdesk'te, cihazın sahibi olan müşteri adına bir talep açar. E-postayla Helpdesk'e yazan ayrı bir izleme sistemi değil; müşterinin, cihazın ve talebin zaten birbirine bağlı olduğu aynı sistem.
Modülü kendi işletmemiz için geliştirdik. Banka hesap özetleri veya e-faturalar modüllerimiz gibi bir topluluk yayını değil, dahili bakım platformumuzun bir parçasıdır – son olarak hakkında yazdığımız takip gibi.
Ölçüm değerinden talebe
Akış bilinçli olarak basit tutuldu:
- Bir cihaz, adres ve erişim bilgileriyle oluşturulur (SNMP v1, v2c veya kimlik doğrulama ve şifrelemeli v3). Kaydederken Odoo sistem açıklamasını, sistem adını ve uptime değerini alır – adres ve erişim bilgilerinin doğru olduğunun en dürüst teyidi.
- Cihaz üzerinde veri noktaları tanımlanır: bir OID, bir birim, bir müşteri ataması.
- Bir zamanlama, tüm etkin veri noktalarını sorgular. Her cihaz için bir kez bağlanılır, her veri noktası için değil – bir switch üzerinde yirmi OID olduğunda bu, bir oturumla yirmi oturum arasındaki farktır.
- Her veri noktası sınır değerleri izleyebilir: bir üst sınır, bir alt sınır veya ikisi birden.
- Bir sınır aşılırsa bir Helpdesk talebi oluşur.
Ölçüm başına değil, olay başına bir talep
Alarm mantığındaki en önemli nokta: Yalnızca durum değişikliği sayılır. Her ölçümde talep oluşturan, takılan veya sıçrayan bir sensörle geçen bir geceden sonra üç yüz talebe sahip olur – bu alarm vermek değil, bulanıklaştırmaktır.
Bu nedenle modül her veri noktası için “Normal” veya “Alarm” durumunda olup olmadığını hatırlar. Sınır ilk kez aşıldığında durum değişir, cihazın chatter'ına bir mesaj düşer ve bir talep açılır – etkilenen müşteri iş ortağı olarak, metinde veri noktası, cihaz, ölçülen değer ve ihlal edilen sınır ile birlikte. Değer sınırın dışında kaldığı sürece başka bir şey olmaz: Talep açıktır, teknisyenlerimiz haberdardır.
Değer normal aralığa döndüğünde, modül aynı talebe bir normale dönüş bildirimi yazar ve bağlantıyı çözer. Talebin ardından kapatılıp kapatılmayacağına hâlâ bir insan karar verir – kısa süreliğine sınırın altına düşen bir değer, nedenin giderildiği anlamına gelmez.
Sınır değerler, değerin kaydedilip kaydedilmediğinden bağımsız olarak her ölçümde kontrol edilir. Sürekli çok yüksek bir değer alarm olarak kalır. Ve bir alarm asla bir talebin oluşturulamamasına takılmamalıdır – oluşturma başarısız olursa, kayıt ve cihazdaki mesaj yine de kalır.
Yalnızca değişeni kaydetmek
Her beş dakikada bir sorgulanan bir veri noktası yılda 105.000 değer üretir. Yüz veri noktasında bu, on milyonun üzerinde satır eder – çoğunlukla hiç değişmemiş değerler için.
Bu nedenle yalnızca, son kaydedilen değere göre ayarlanmış bir eşikten fazla farklı olan kaydedilir – veri noktası başına mutlak fark olarak (örneğin 0,5 °C), yüzde sapma olarak veya her değişiklikte. Güncel değer ve son sorgunun zamanı yine de her zaman veri noktasında durur; yalnızca geçmiş seyreltilir.
Değerlerin nereye yazılacağı da ayarlanabilir: Odoo veritabanına, bir MongoDB'ye veya CSV dosyaları olarak Odoo filestore'a. Böylece ölçüm değerlerini ERP veritabanının dışında tutuyoruz – takibin konum verilerindeki ile aynı ilke. Geçmiş her durumda diyagram olarak gösterilebilir; saatlik birleştirmede toplam olarak değil, ortalama olarak.
Bayt yerine yüzde olarak doluluk düzeyi
Bazı büyüklükler cihazda doğrudan bulunmaz. Bir bölümün doluluk düzeyi, kullanılan bellek ve toplam boyuttan hesaplanmalıdır; sıcaklık sensörleri çoğu zaman ölçeklenmiş tam sayılar verir – 23,5 derece için 235.
Bu nedenle bir veri noktası değeri bildirildiği gibi devralabilir, bir çarpanla çarpabilir veya ikinci bir OID'nin yüzdesi olarak hesaplayabilir. Sınır değerler için bu belirleyicidir: Yüzde 90'lık bir sınır her disk boyutu için geçerlidir. Gigabayt cinsinden bir sınırın her sürücü için ayrıca güncellenmesi gerekirdi.
OID'leri kimsenin ezbere bilmesi gerekmez
Windows ve Linux sunucularında HOST-RESOURCES-MIB standartlaştırılmıştır: Sürücüler ve ana bellek bilinen bir yerde bulunur. Bir cihaz keşfi tabloyu okur, doluluk düzeylerini yüzdeye çevirir ve veri noktalarını alarm sınırıyla birlikte tek tıklamayla oluşturur.
Diğer her şey için, OID ağacını dolaşan ve bulunan her OID'yi güncel değeriyle gösteren bir SNMP tarayıcısı vardır – ayrıca katalogda biliniyorsa, içe aktarılan üretici MIB'inden ad, açıklama ve birimle birlikte. İşaretlemek yeterlidir.
Müşterilerimizin buradan kazancı
Cihazlar ve veri noktaları müşterilere atanır. Müşteri portalında SNMP değerlerim altında, cihazlarınızın güncel ölçüm değerlerini ve son 24 saatin, 7 günün, 30 günün veya 12 ayın geçmişini diyagram olarak bulursunuz – bizim de gördüğümüz aynı değerler. Yalnızca şirketinize atanmış olanlar görünür.
Ve bir sınır değer aşıldığında hiçbir şey yapmanız gerekmez: Siz fark etmeden önce talep, cihaz, değer ve saat bilgisiyle zaten bizdedir.
Modülün bilinçli olarak ne olmadığı
Erişilebilirlik kontrolleri, yükseltme zincirleri ve bağımlılık ağaçlarıyla eksiksiz bir izlemenin yerine geçmez. SNMP trap'lerini kabul etmez, etkin olarak sorgular. Ve hiçbir talebi otomatik olarak kapatmaz – normale dönüş bildirimi bir mesajdır, durum değişikliği değil.
Konu tam olarak tek bir hattır: ölçüm değerinden sınır üzerinden ilgilenen teknisyene. Bu hat artık olabileceği kadar kısadır.
Sunucularınızı, ağ cihazlarınızı veya sensörlerinizi bu izlemeye almak isterseniz, bize ulaşın.