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
İ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.
Nasıl iki JavaScript nesnelerin özelli...
Olay dinamik olarak oluşturulan öğeler...
Dinamik olarak nesne JavaScript adlı b...
Nasıl dinamik olarak değiştirmek angul...
Yazılı ve dinamik olarak statik olarak...