Ürünleri yurtdışında dağıtılan bir şirkette geliştiriciyim. Bir destek ekibi bir sorun tanımı hakkında soru sormaya başladığında, teşhis için tek araçlarım günlük dosyalarım ve müşterinin veritabanının bir kopyası. Veritabanını ve geliştirme ortamımı kullanarak hatalı durumu yeniden oluşturma fırsatım var çünkü gelen verileri modülüme ve ilgili işlemlere kaydederim. Hatayı, topladığım veriler yardımıyla yeniden oluşturabilirsem, hata ayıklama ile düzeltebilirim. Kayıt dosyam olmasaydı, müşterinin ya da destek ekibinin hangi durumda ne olacağına (büyük bir yanıltıcılık olasılığı var) açıklamasına bağlı kalmam gerekirdi.
İkincisi, günlüğe kaydetme, belirli eylemlerin tarihini ve saatini günlüğe kaydettiğim ve ardından hangi eylemin ne kadar zaman harcadığına bir göz atabildiğim için, modülümün yayılma alanındaki darboğazlarını saptama şansı veriyor.
Buna ek olarak, çözümümüzün 6 modülden oluştuğunu ve günlük dosyalarımda veritabanı zaman aşımları ile ilgili hata günlükleri görüyorum. Bu hatalar diğer modüllerin 5'inde de kaydedilmişse, bunun SQL server ile ilgili bir sorun olma olasılığı artar. Bu sadece benim modülüme kaydedilirse, sorgularımın buggy olma olasılığı artar. Bu tür şeylerin faydalı göstergeler olduğunu düşünüyorum.
Günlük dosyalarımda ne tür veriler gördüğüm hakkında, günlük düzeyinin yapılandırmasına bağlıdır. Eğer bu yeni bir ürün ise, mümkün olduğunca çok veri toplamak için log seviyesini "All" olarak ayarladık. Ancak ürünü iyileştirdiğimizde, sadece hatayı günlüğe kaydetmek için günlük seviyesini "Hata" da tutmayı tercih edebiliriz, ancak bilgi düzeyi günlüklerini vb.