使用Log4j iam尝试写入登录的用户级别日志。
假设使用' X'用户登录到机器后,我需要在Log4J属性文件中获取用户名。所以,我可以将我的日志写入:/Desktop/X/final.log
同样,如果Y用户则应该写入:/Desktop/Y/final.log
我尝试使用$ {user}但没有工作。
log4j.appender.file = org.apache.log4j.RollingFileAppender进行 log4j.appender.file.File = /桌面/ $ {用户} /final.log
任何帮助表示赞赏!
答案 0 :(得分:0)
这样做的一种方法是在使用log4j
的程序中注入系统属性。例如,如果您正在运行某些Java程序,则可以使用user
传递-Duser=<your_user>
属性。
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=/Desktop/${user}/final.log
更好的是,如果需要,可以参数化整个日志文件名。这是一个类似的问题,详细的回答here。