我们正在使用Log4j创建应用程序日志,并将其附加到文件中,该文件的路径在其logger-config文件中提供。
我们正在为登录系统的每个用户创建日志。并且该系统在生产和应用程序用户同时登录300-500之间。 那么这个基于用户的日志记录将基于规则,仅适用于特定用户(用于监控任何错误/异常)
目前我只想知道如何使用带有JAVA的Log4j为每个用户创建单独的文件日志。
此外,我想知道是否有其他API提供此类选项?
答案 0 :(得分:0)
在独立的java程序/胖客户端中,如果每个用户使用不同的os用户名运行应用程序,则可以在log4j.properties中使用“$ {user.name}”变量。
log_path=./
log_foldername=logs/
log_prefix=logfileprefix_${user.name}_logfilesuffix
log4j.appender.LogDebug=org.apache.log4j.RollingFileAppender
log4j.appender.LogDebug.File=${log_path}${log_foldername}${log_prefix}_LogDebug.txt
log4j.appender.LogDebug.MaxFileSize=5000KB
log4j.appender.LogDebug.MaxBackupIndex=2
log4j.appender.LogDebug.layout=org.apache.log4j.PatternLayout
log4j.appender.LogDebug.layout.ConversionPattern=[%-20t]-[%d] %-5p %c.%M():%L - %m%n
log4j.appender.LogDebug.threshold=debug