İçeriğe geç

Yazılım Hatası Canlıda Nasıl Fark Edilir? İzleme ve Alarm

Sunucu ve Performans
Yazılım Hatası Canlıda Nasıl Fark Edilir? İzleme ve Alarm

Canlıdaki bir hatayı müşteri aramadan önce görmek için üç şey gerekir: her hatanın bağlamıyla birlikte düştüğü merkezi bir hata kaydı, teknik değil iş sonucunu ölçen sağlık kontrolleri ve bir eşik aşıldığında insana ulaşan alarm. Bu üçü kurulmadığında hata yok olmaz; yalnızca öğrenme yolu müşterinin telefonu olur. Aşağıda her birinin neyi içermesi gerektiği ve alarmın gürültüye dönüşmemesi için hangi kuralların konduğu var.

Hata kaydı neyi içermeli

Ekranda "bir hata oluştu" yazısı gören kullanıcı size yalnızca o cümleyi bildirebilir. O anın yeniden kurulabilmesi için kaydın şunları taşıması gerekir:

  • İz numarası: kullanıcıya gösterilen kısa bir numara. Destek kaydı ile hata kaydını tek adımda eşleştirir.
  • Zaman ve saat dilimi: sunucu saatiyle kullanıcı saatinin karışması teşhisin en sık kaybedildiği yerdir.
  • Kim ve nerede: kullanıcı, rol, hangi ekran ya da hangi uç nokta, hangi kayıt.
  • Girdi özeti: isteğin önemli alanları. Kişisel veri ve kart bilgisi maskeli yazılır; parola ve anahtar hiç yazılmaz.
  • Hatanın kendisi: tür, mesaj ve çağrı yığını; dış servis hatasıysa dönen kod ve yanıt gövdesinin kısaltılmış hâli.
  • Sürüm: hangi yazılım sürümünde oluştuğu. Dün olmayan hatanın dünkü sürümle ilgisini yalnızca bu alan kurar.

Kayıtların her sunucuda ayrı dosyalarda kalması pratikte izlemeyi imkânsız yapar. Aynı hatanın tekrar sayısını görmek için kayıtların tek yerde toplanması ve aynı imzalı hataların gruplanması gerekir. "Bu hata ilk kez mi oluştu, yoksa gün içinde dört yüz kez mi oluştu" sorusunun cevabı önceliği belirler.

Hangi olay alarm üretir, hangisi sadece kayıt

Her hatanın telefonu çaldırması, bir süre sonra kimsenin telefona bakmaması demektir. Ayrım şöyle kurulur: kullanıcının kendi başına çözebildiği doğrulama hataları yalnızca kaydedilir; iş akışını durduran ya da sessizce veri kaybettiren durumlar alarm üretir.

BelirtiEşikNereye düşer
Form doğrulama hatasıEşik yokYalnızca kayıt, haftalık gözden geçirme
Beklenmeyen sunucu hatasıKısa sürede tekrar eden artışNöbetçiye alarm
Ödeme ya da e-belge çağrısında ret artışıNormal dışı orana çıkışNöbetçi ve ilgili iş birimi
Kuyruk birikmesiBekleyen iş sayısı ya da bekleme süresiNöbetçiye alarm
Gece işinin hiç koşmamasıBeklenen saatte bitiş kaydı yokSabah alarmı, iş birimi bilgisi
Yedeğin oluşmamasıGünlük tek kontrolNöbetçiye alarm
Disk ya da bağlantı havuzu dolmasıDoluluk oranıNöbetçiye alarm

Alarm metninin kendisi de teşhisin parçasıdır. "Hata oluştu" diyen bir alarm, nöbetçiyi sıfırdan araştırmaya zorlar. İçinde hangi iş, hangi eşik, kaç kez ve hangi iz numarası geçen bir alarm, ilk bakışta önceliği belli eder.

Sağlık kontrolü: ping değil iş kontrolü

Sunucunun ayakta olması yazılımın çalıştığı anlamına gelmez. Sayfa açılıyorken siparişler muhasebeye geçmiyor olabilir, kuyruk duruyor olabilir, gece işi hiç koşmamış olabilir. Bu yüzden izleme teknik değil iş sonucu üzerinden kurulur.

İşe yarayan kontroller şu biçimdedir: son bir saatte kaç sipariş oluştu ve kaçı dış sisteme aktarıldı, en eski bekleyen kuyruk işi kaç dakikadır bekliyor, dünkü gece işleri bitiş kaydı bıraktı mı, son yedek ne zaman oluştu ve boyutu beklenen aralıkta mı. Bu sorular sıfır cevabını da anlamlı kılar: gece yarısı sipariş olmaması normaldir, iş saatinde olmaması değildir. Eşiği saate göre tanımlamak, boş alarmların büyük bölümünü ortadan kaldırır.

Gürültü sorunu ve nöbet düzeni

İzlemenin başarısızlık biçimi genellikle sessizlik değil, gürültüdür. Çok alarm kuran ekipler kısa sürede alarmları susturur ve gerçek olay da kaybolur. Gürültüyü azaltan dört kural:

  1. Aynı olay tek alarm: süren bir olayda her hata için değil, olay açıldığında ve kapandığında bildirim gider.
  2. Eşik tek olaya değil orana bağlı: bir işlemin başarısız olması değil, başarısızlık oranının yükselmesi alarm üretir.
  3. Sahibi olan alarm: kime gideceği belli olmayan alarm kimseye gitmiş sayılmaz.
  4. Kapanan alarm gözden geçirilir: boş çıkan alarmın eşiği düzeltilir, tekrar eden alarmın kök nedeni kapatılır.

Alarm geldiğinde teşhis sırası

Hangi sırayla bakılacağı yazılı olmazsa, her olayda baştan araştırma yapılır. İşleyen sıra şudur:

  1. Dün ne değişti: yeni sürüm, yeni ayar, yeni entegrasyon anahtarı.
  2. Hata tek bir kullanıcıda mı, tek bir kayıtta mı, yoksa her yerde mi?
  3. Kendi yazılımınız mı hata veriyor, çağırdığınız dış servis mi?
  4. Kuyruk ve zamanlanmış işler koşuyor mu, biriken var mı?
  5. Veri tarafında bir kilit ya da uzun süren işlem var mı?
  6. Kaynak sınırına dayanılmış mı: disk, bellek, bağlantı sayısı.

Olay kapandıktan sonra yazılan kısa not, bir sonraki olayı kısaltan en ucuz yatırımdır: belirti, kök neden, geçici çözüm ve kalıcı düzeltme.

Özet

Hata kaydı olayın yeniden kurulmasını sağlar, sağlık kontrolü işin gerçekten yürüdüğünü ölçer, alarm da bunu insana ulaştırır. Üçü birlikte kurulduğunda hatanın öğrenilme süresi günlerden dakikalara iner. KAV Yazılım, geliştirdiği uygulamalarda hata kaydı, sağlık kontrolü ve alarm düzenini devreye alma planının parçası olarak kurar.

Sık sorulan sorular

Hata kaydında kişisel veri tutmak sorun olur mu?

Kayıtlar da bir veri deposudur ve aynı koruma yükümlülüğüne tabidir. Teşhis için gereken alanlar maskelenerek yazılır, kart bilgisi, parola ve entegrasyon anahtarı hiç yazılmaz. Kayıtların saklama süresi ve erişim yetkisi de ayrıca tanımlanmalıdır.

Küçük bir uygulama için izleme kurmak gerekir mi?

Ölçek küçükse izlemenin kapsamı da küçülür ama kalkmaz. Merkezi hata kaydı, günlük yedek kontrolü ve iş akışını durduran hatalar için tek bir alarm kanalı en küçük kurulumda bile anlamlıdır. Bunlar kurulmadığında hatayı ilk gören taraf müşteri olur.

Dış servis hatası ile kendi hatamızı nasıl ayırt ederiz?

Dış servise yapılan her çağrının süresi, dönen kodu ve sonucu ayrıca kaydedilirse ayrım kendiliğinden görünür. Ret oranı yalnızca o entegrasyonda yükseliyorsa sorun karşı taraftadır; birden çok farklı işlemde aynı anda yükseliyorsa kendi tarafınıza bakmak gerekir.

Alarmların çoğu boşa çıkıyorsa ne yapmalı?

Alarmı susturmak yerine eşiği düzeltmek gerekir. Boş çıkan her alarm için eşiğin hangi koşulda yanlış olduğu yazılır; genellikle eşik tek olaya bağlıdır ve orana ya da saate bağlanması gerekir. Gözden geçirilmeyen alarm düzeni kısa sürede güvenilirliğini kaybeder.
  • entegrasyon
  • hata kaydı
  • iş sürekliliği
  • izleme