Logger kitaplığını Yakut kodunuzla ilgili bir şeylerin ne zaman yanlış gittiğini takip etmenin kolay bir yoludur. Bir şeyler ters gittiğinde, hataya neden olan şeyin tam bir hesabına sahip olmak, hatayı bulmak için size saatlerce tasarruf sağlayabilir. Programlarınız büyüdükçe ve karmaşıklaştıkça, günlük iletileri yazmak için bir yol eklemek isteyebilirsiniz. Ruby bir dizi yararlı sınıflar ve standart kütüphane adı verilen kütüphaneler. Bunlar arasında öncelikli ve döndürülmüş günlük kaydı sağlayan günlükçü kitaplığı bulunur.
Temel Kullanım
Logger kitaplığı Ruby ile birlikte geldiğinden, herhangi bir mücevher veya başka kitaplık yüklemenize gerek yoktur. Kaydedici kitaplığını kullanmaya başlamak için gerektirir 'logger' ve yeni bir Logger nesnesi oluşturun. Logger nesnesine yazılan tüm iletiler günlük dosyasına yazılır.
#! / usr / bin / env yakut
'logger' gerektir
log = Logger.new ('log.txt')
log.debug "Günlük dosyası oluşturuldu"
Öncelikleri
Her günlük mesajının bir önceliği vardır. Bu öncelikler, günlük dosyalarında ciddi iletiler için arama yapmanın yanı sıra, günlükçü nesnesinin daha az ileti gerektiğinde otomatik olarak filtrelemesini kolaylaştırır. Gün için Yapılacaklar listeniz gibi düşünebilirsiniz. Bazı şeyler kesinlikle yapılmalı, bazı şeyler gerçekten yapılmalı ve bazı şeyler bunları yapmak için zamanınız olana kadar ertelenebilir.
Önceki örnekte öncelik, ayıklama, tüm önceliklerin en önemlisi (Yapılacaklar listenizdeki "zamanınız olana kadar erteleyin"). Günlük mesajı öncelikleri, en önemlisi ile en önemlisi sırasıyla şu şekildedir: hata ayıklama, bilgi, uyar, hatave ölümcül. Kaydedicinin yoksayması gereken mesajların seviyesini ayarlamak için seviye özniteliği.
#! / usr / bin / env yakut
'logger' gerektir
log = Logger.new ('log.txt')
log.level = Kaydedici:: UYARI
log.debug "Bu önemsenmeyecek"
log.error "Bu göz ardı edilmeyecek"
İstediğiniz kadar günlük mesajı oluşturabilir ve programınızın yaptığı her küçük küçük şeyi kaydedebilirsiniz, bu da öncelikleri son derece kullanışlı hale getirir. Programınızı çalıştırırken, önemli şeyleri yakalamak için uyarıcı veya hata gibi bir şeyde kaydedici düzeyini bırakabilirsiniz. Daha sonra, bir şeyler ters gittiğinde, daha fazla bilgi almak için günlükçünün seviyesini (kaynak kodunda veya komut satırı anahtarıyla) düşürebilirsiniz.
rotasyon
Günlük kitaplığı aynı zamanda günlük döndürmeyi de destekler. Günlük döndürme, günlüklerin çok büyük olmasını önler ve eski günlüklerde arama yapmaya yardımcı olur. Günlük döndürme etkinleştirildiğinde ve günlük belirli bir boyuta veya belirli bir yaşa ulaştığında, günlükçü kitaplığı bu dosyayı yeniden adlandırır ve yeni bir günlük dosyası oluşturur. Eski günlük dosyaları da belirli bir yaştan sonra silinecek (veya "döndürülmeyecek") şekilde yapılandırılabilir.
Günlük döndürmeyi etkinleştirmek için, Logger yapıcısına 'aylık', 'haftalık' veya 'günlük' iletin. İsteğe bağlı olarak, yapıcıya rotasyonda tutmak için maksimum dosya boyutu ve dosya sayısı iletebilirsiniz.
#! / usr / bin / env yakut
'logger' gerektir
log = Logger.new ('log.txt', 'günlük')
log.debug "Günlük en az bir olduğunda"
log.debug "gün eski, yeniden adlandırılacak ve"
log.debug "yeni log.txt dosyası oluşturulacak."