SORU
4 Ocak 2011, Salı


Dinamik olarak log4j günlük düzeyini Değiştirme

Uygulamayı yeniden dağıtmak istemiyorum bu yüzden log4j günlük düzeyini dinamik olarak değişen, farklı yaklaşımlar. Değişiklikler bu gibi durumlarda kalıcı olacak mı?

CEVAP
4 Ocak 2011, Salı


İzleme Dosyası

Log4j log4j.xml yapılandırma dosyadaki değişiklikleri izlemek mümkün. Eğer değiştirirseniz log4j dosyası, log4j otomatik olarak değişikliklere göre günlük seviyelerini yeniler. org.apache.log4j.xml.DOMConfigurator.configureAndWatch(String,long belgelerine bakın) ayrıntılar için. Varsayılan kontroller 60 saniye arasında bir süre bekleyin. Bu değişiklikler doğrudan yapılandırma dosya sisteminde dosya değiştiği için kalıcı olacaktır. Tüm yapmanız gereken DOMConfigurator çağırmak için.() configureAndWatch bir kere.

Dikkat: configureAndWatch yöntem iş Parçacığı bir sızıntı nedeniyle J2EE ortamlarda kullanım için güvenli değildir

JMX

Günlük düzeyi (ya da genel olarak yeniden yapılandırma) log4j ayarlamak için başka bir yol JMX kullanarak. Log4j JMX MBeans olarak onun vuruşlarını kaydeder. Uygulama sunucularını kullanarak (ya da GÖRDÜM jconsole.exe bu her kaydediciler yeniden yapılandırabilirsiniz MBeanServer konsolları. Bu değişiklikler kalıcı değildir ve uygulama (sunucu) sonra yeniden yapılandırma dosyasında ayarlanan yapılandırma sıfırlamak olacaktır.

Kendi Kendine Yaptı

Aaron tarafından tanımlandığı gibi, günlük düzeyini programlı olarak ayarlayabilirsiniz. Olmasını istediğiniz şekilde uygulamanızda uygulamak. Örneğin, bir kullanıcı veya yönetici giriş seviyesi değiştiği bir GUI var ve kaydedici setLevel() yöntemlerini çağırın. İster ayarları bir yere kalıcı ya da size bağlı değildir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • NightShader1

    NightShader1

    25 Temmuz 2006
  • Ryan Ha

    Ryan Ha

    9 NİSAN 2006
  • THE RED DRAGON

    THE RED DRAG

    6 ŞUBAT 2009