【问题标题】:Dynamically loading property values in property file在属性文件中动态加载属性值
【发布时间】:2012-07-08 13:53:11
【问题描述】:

我在我的 spring+struts+hibernate 应用程序中使用 log4j。它运行良好,但唯一的问题是日志文件存储在特定路径中。有没有办法动态更改日志文件的路径。我希望日志文件在服务器路径上生成。

这是用于 log4j 的属性文件

# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
**log4j.appender.file.File=C:\\loging.log**
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.MaxBackupIndex=1
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

# Direct log messages to stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

# Root logger option
log4j.rootLogger=debug, file, stdout

我想在这里动态加载服务器路径*log4j.appender.file.File=server path*.

有什么想法吗?

【问题讨论】:

    标签: java log4j


    【解决方案1】:

    你必须改变 log4j.properties file 像:log4j.appender.appender_name.File = ${file.name} 和在代码中调用PropertyConfigurator.configure 时,只做System.setProperty("file.name","your path")

    How to configure log4j with a properties file

    基本上你需要写一个自定义的logger类,在里面调用上面的方法。你可以参考上面的链接。

    【讨论】:

    • 你能告诉我在哪里可以在我的应用程序中设置 PropertyConfigurator.configure
    【解决方案2】:
    猜你喜欢
    • 1970-01-01
    • 2017-12-11
    • 1970-01-01
    • 2021-06-07
    • 1970-01-01
    • 2015-12-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多