Üretim ortamında her olay aynı önemde değildir. Bir kurum servisinin bakımda olması, tüm kurum servislerinin down olması, cluster IP'nin diğer node'a geçmesi, sertifikanın 30 gün içinde bitecek olması veya request rate eşiğinin aşılması farklı operasyon tepkileri gerektirir. Bunların hepsi tek tip e-posta alarmına dönüşürse ekip kısa sürede alarm yorgunluğu yaşar.
Klasik yaklaşımlarda bildirim genellikle e-posta ve syslog ile sınırlıdır. Oysa operasyon ekipleri farklı olayları farklı kanallardan almak ister: kritik failover SMS ile, rutin uyarı UI ile, güvenlik olayı SNMP veya Syslog ile, yönetici özeti e-posta ile iletilmelidir. Kanal ayrımı yoksa ya herkes her şeyi alır ya da kritik olaylar gözden kaçar.
Sessiz saat yönetimi de önemlidir. Gece 03:00'te düşük önemde bir uyarı için tüm ekibi uyandırmak gereksizdir; fakat gerçek kesinti veya cluster IP değişimi yine de görünür olmalıdır. Sessiz saat, olayın tamamen kaybolması değil, doğru kanalda ve doğru zamanda ele alınması anlamına gelmelidir.
Pool down, kurum servisi down, cluster IP swap ve zone kapanması gibi olayların aynı metinle raporlanması kök neden analizini zorlaştırır. Operatör önce alarmın ne anlama geldiğini çözmeye çalışır, sonra aksiyon alır. Bu gecikme özellikle yüksek trafikli platformlarda doğrudan hizmet kalitesine yansır.
TR7 Bildirim Sistemi, alarm yaşam döngüsü, 30+ hazır durum anahtarı, çoklu kanal, çoklu dil, sessiz saat ve per-pool eşik yönetimiyle olayları ayrıştırır; doğru kişiye, doğru kanaldan, doğru bağlamla iletir.
TR7, bildirimleri tek seferlik mesajlar olarak değil, yaşam döngüsü olan alarm nesneleri ve kanal bazlı aksiyonlar olarak yönetir.
Aktif alarmlar alarmKey bazında tutulur, updateAlarm ile güncellenir ve endAlarm ile kapanır. Böylece aynı olay tekrar tekrar yeni alarm gibi üretilmez; olayın başlangıcı, güncellenmesi ve kapanışı izlenir.
Alarm ve bildirim durumu cluster içindeki diğer node'lara aktarılabilir. Böylece operasyon ekibi yalnızca bağlı olduğu node'un olaylarını değil, küme genelindeki kritik durumu da görebilir.
Pool durumu UNKNOWN, OK, WARN, DISABLED, ERR ve EVALUATING değerleriyle sınıflandırılır. Bu model, bakım, uyarı, hata ve değerlendirme durumlarını aynı düz alarm metnine indirgemez.
Cluster IP durumları, interface erişilebilirliği, IP çakışması, IP geçişi ve iki node davranışı gibi farklı sinyallerle değerlendirilir. Failover olayları operasyon ekibine daha net bağlamla iletilir.
Bildirim Sistemi; alarm lifecycle, pool eşikleri, çoklu kanal, çoklu dil, sessiz saat, sertifika uyarısı ve arşivlenebilir olay geçmişi sunar.
updateAlarm, endAlarm ve getAlarms akışı aktif alarmları yaşam döngüsüyle takip eder. Aynı alarmKey tekrar geldiğinde olay güncellenir; tamamen yeni alarm gibi çoğaltılmaz. staticPayload, ifAbsent ve dontNotify gibi alanlarla olay davranışı daha kontrollü yönetilebilir. Bu yapı alarm gürültüsünü azaltır ve olay geçmişini daha anlamlı hale getirir.
Her pool için serviceStatus, poolStatus, bandwidth, request rate, current session ve new connection eşikleri tanımlanabilir. Aynı yapı içinde email, SMS, WhatsApp, BiP, SNMP ve UI kanal tercihleri belirlenebilir. Böylece kritik servis daha agresif alarm politikasıyla, düşük önemdeki servis daha sessiz politikayla izlenebilir. Bildirim davranışı platform geneline tek tip uygulanmaz.
TR7 e-posta, SMS, WhatsApp, BiP, SNMP, Syslog ve UI gibi birden fazla kanalı destekleyen bildirim modeli sunar. Kritik altyapı olayları SMS veya SNMP ile ağ yönetim sistemlerine, yönetici özetleri e-posta ile, rutin durumlar UI üzerinden iletilebilir. Aynı olay farklı kanallara farklı öncelikle gönderilebilir. Bu esneklik harici alarm yöneticisine bağımlılığı azaltır.
NotificationTranslator, dictionary tabanlı çeviri mantığıyla bildirim metinlerini farklı dillerde üretebilir. Türkçe operasyon ekibi Türkçe, uluslararası ekip İngilizce bildirim alabilir. Aynı olayın farklı kullanıcılara farklı dilde iletilmesi mümkündür. Bu, çok ülkeli operasyonlarda yanlış yorumlama riskini azaltır.
poolDisabled, allBeDown, noBeGiven, beDown, beStateUnknown, beMaint, poolDown, poolInterfaceAbsent, zoneClosed, clusterIpBoth, clusterIpPossibleCollide, clusterIpSwitched ve clusterIpNone gibi 30+ durum anahtarı kullanılabilir. Bu anahtarlar alarm metnini daha açıklayıcı hale getirir. Operatör yalnızca "servis sorunlu" mesajı almaz; sorunun türünü de görür. Müdahale süresi kısalır.
silentAtNight ile belirli bildirimler gece saatlerinde susturulabilir. Bu, olayın tamamen kaybolması anlamına gelmez; UI'da görünmeye devam edebilir veya sabah özetine dahil edilebilir. Kritik olaylar için ayrı kanal politikası uygulanarak gerçekten önemli alarmlar yine iletilebilir. Alarm yorgunluğu azaltılırken operasyon görünürlüğü korunur.
notifyDaysBeforeCertificateExpiry alanı ile sertifika bitiş tarihinden belirli gün önce uyarı üretilebilir. Örneğin 30 gün kala e-posta veya UI bildirimi gönderilebilir. Bu sayede sertifika yenileme operasyonu son güne kalmaz. TLS kesintisi yaratabilecek unutkanlıklar erken aşamada yakalanır.
Contact group üyeleri e-posta adresleri, SMS numaraları ve kullanıcı tipi bilgileriyle tanımlanabilir. Bildirimler tekil kullanıcıya, ekip grubuna veya kullanıcı tipine yönlendirilebilir. Bu model nöbetçi ekip, SOC, SRE veya yönetici gruplarını ayrı ayrı hedeflemeyi kolaylaştırır. Kişi değişiklikleri kanal politikasını bozmadan yönetilebilir.
SMTP host, port, authentication, username, password, TLS güvenliği, sertifika doğrulama, sender name, sender address, cc, bcc, attachment ve HTML mesaj ayarları yapılandırılabilir. E-posta bağlantı timeout değeri 10 saniye seviyesinde tutulabilir. Bu yapı kurumun mevcut mail relay veya SMTP altyapısıyla entegrasyonu kolaylaştırır. E-posta bildirimleri marka ve güvenlik politikalarına uyarlanabilir.
Alarm ve notification logları ayrı adlarla arşivlenebilir. Zip sıkıştırma ve yüksek sıkıştırma seviyesi ile geçmiş olaylar denetim ve inceleme için saklanabilir. PCI, değişiklik yönetimi veya olay sonrası analiz süreçlerinde bildirim geçmişi kanıt olarak kullanılabilir. Lokal görünürlük kaybolmadan dış arşivleme süreçleriyle birlikte çalışabilir.
NotificationType alanı A, N ve I gibi sınıflarla alarm, notification ve info ayrımını yapar. Bu ayrım olayın kritikliği ve kullanıcıya sunulma şekli için önemlidir. Her bilgi mesajı alarm gibi davranmaz; her alarm da sıradan bildirim olarak kaybolmaz. UI ve dış kanal davranışı bu sınıflandırmadan beslenebilir.
BasicNotification pairId alanı aynı olay grubuna ait bildirimleri ilişkilendirmek için kullanılabilir. Örneğin bir alarmın açılması, güncellenmesi ve kapanması aynı olay ailesi içinde izlenebilir. Bu, SIEM veya audit tarafında olay zincirini bir arada görmeyi kolaylaştırır. Tekil mesajlar yerine bütün olay süreci analiz edilebilir.
Bildirim Sistemi; status değerleri, log adları, sıkıştırma, SMTP güvenliği ve cluster IP state machine ile birlikte işletilir.
Pool status değerleri UNKNOWN=-1, OK=0, WARN=1, DISABLED=2, ERR=3 ve EVALUATING=4 olarak sınıflandırılır. Bu numeric model alarm değerlendirme ve UI gösterimi için tutarlı temel sağlar. Durumlar yalnızca metin olarak değil, karar verilebilir değerler olarak ele alınır.
Alarm logları basic-alarms, bildirim logları basic-notifications adıyla tutulabilir. Bu ayrım olay yaşam döngüsü ile kullanıcıya iletilen bildirimlerin ayrı incelenmesini sağlar. Operasyon ve audit süreçleri farklı log tiplerini kendi ihtiyacına göre okuyabilir.
Alarm ve bildirim arşivleri zip formatında ve yüksek sıkıştırma seviyesiyle tutulabilir. Bu, uzun dönem saklama maliyetini azaltır. Denetim için geçmiş bildirim kayıtlarına daha kolay erişim sağlanır.
`_lb.*` altında 30+ hazır durum anahtarı bulunur. Bu anahtarlar pool, kurum servisi, interface, zone ve cluster IP davranışlarını daha granüler açıklamak için kullanılır. Bildirim metni ve karar mantığı bu anahtarlar üzerinden zenginleşir.
E-posta gönderiminde bağlantı timeout değeri 10000 ms olarak yapılandırılabilir. TLS güvenliği ve sertifika doğrulama davranışı kullanıcı kontrollüdür. Bu, kurumun güvenlik gereksinimlerine göre mail relay entegrasyonu yapılmasını sağlar.
Cluster IP durumları ayrı state machine ile yorumlanır. IP erişilemezliği, interface durumu, olası çakışma veya node geçişi gibi durumlar birleştirilmiş cluster IP state değerlerine dönüştürülebilir. Failover alarmları bu bağlamla daha doğru üretilir.
Düşük önemdeki bir kurum servisi down olayı saat 02:00'de oluştuğunda silentAtNight e-posta göndermeyi durdurabilir. Olay UI'da aktif kalır ve sabah özetine dahil edilebilir. Böylece gereksiz gece alarmı azaltılır, olay tamamen kaybolmaz.
Operasyon ekibi notifyDaysBeforeCertificateExpiry değerini 30 gün olarak ayarlayabilir. Sertifika süresi yaklaşınca sistem e-posta veya UI bildirimi üretir. TLS kesintisi yaratabilecek son dakika yenileme riskleri azalır.
Cluster IP başka node'a geçtiğinde clusterIpSwitched olayı üretilebilir. Bu olay operasyon ekibine SMS, SNMP veya UI üzerinden iletilebilir. Failover gerçekleştiğinde ekip olaydan sonra değil, olay anında haberdar olur.
Request rate, bandwidth, session veya yeni bağlantı eşiği aşıldığında SNMP bildirimi üretilebilir. Ağ yönetim sistemi bu olayı kendi alarm panosuna alır. Güvenlik ve ağ operasyon ekipleri aynı eşiği ortak izleme akışında görür.
Alarm ve notification logları sıkıştırılmış arşiv olarak saklanabilir. Denetim sırasında hangi olayın ne zaman oluştuğu, hangi kanalın kullanıldığı ve alarmın kapanıp kapanmadığı gösterilebilir. Bildirim geçmişi operasyon kanıtına dönüşür.
Türkiye ekibi aynı alarmı Türkçe e-posta olarak alırken, uluslararası operasyon ekibi İngilizce mesaj alabilir. NotificationTranslator olay metnini kullanıcının diline göre üretir. Çok ülkeli operasyonlarda alarmın yanlış anlaşılması azaltılır.
Alarm lifecycle, 30+ durum anahtarı, çoklu kanal ve sessiz saat. Kendi ortamınızda canlı bir kurulumda gösterelim.