我有一個log4j屬性文件。在應用程序啓動時,我需要爲其中一個屬性設置值。可能嗎?因爲我知道應用程序上的屬性值只能啓動。以編程方式在log4j屬性文件中設置值?
log4j.properties
----------------
Environment = ${env}
謝謝!
我有一個log4j屬性文件。在應用程序啓動時,我需要爲其中一個屬性設置值。可能嗎?因爲我知道應用程序上的屬性值只能啓動。以編程方式在log4j屬性文件中設置值?
log4j.properties
----------------
Environment = ${env}
謝謝!
java -DEnvironment=dev <YourMainProgram>
然後在日誌文件中你可以調用該變量作爲
log4j.appender.logfile.File=appname-${Environment}.log
編輯:
的Tomcat:如果應用程序在Tomcat中運行,則可以在Catalina.bat中定義環境。
打開放置在「bin」目錄中的「Catalina.bat」文件。
set CATALINA_OPTS=" -DEnvironment=dev"
然後通過Catalina.bat重新啓動您的服務器。
是的。您可以通過在應用程序啓動時指定JVM參數並在log4j文件中使用相同的參數,如下所示: 其中env是JVM參數。
log4j.appender.rollingFile = org.apache.log4j.RollingFileAppender進行 log4j.appender.rollingFile.File = d:/萬桶/ $ {ENV} Userlog.log
感謝您的回覆?我可以在哪裏設置JVM參數?是否可以永久設置它們?謝謝! – user1016403 2012-07-16 12:37:01
如果您使用eclipse,那麼在運行配置中將您設置爲-Denv = someValue,或者如果在命令提示符下運行,則將其設置爲java -Denv = someValue yourApplication。 – GuruKulki 2012-07-16 12:40:17
這是一個網絡應用程序。我在tomcat中部署戰爭。我可以在哪裏設置?請幫幫我? – user1016403 2012-07-16 12:42:44
這是java應用程序還是web應用程序? – amicngh 2012-07-16 12:40:36