用log4j输出日志文件。
多线程运行时,每个线程的日志都写到一个文件中了,很混乱。
有办法在运行时指定输出的文件名吗
多线程运行时,每个线程的日志都写到一个文件中了,很混乱。
有办法在运行时指定输出的文件名吗
解决方案 »
- javax.mail.AuthenticationFailedException: Unable to log on
- 我找到两本好书,大家快来下啊
- Ant增量编译
- 系统架构问题
- tomcat5.5.4如果不连到公网上,启动后就会报错,而且影响到程序运行。
- Tomcat中的问题
- 大家能来聊聊基于J2EE平台的工作流的成功经验吧(最好提供些基于开源的)。来者给分
- java初学者向高手请教
- jboss3.2.1的部署问题(分少了点,别介意,这已经是我全部家当了:))
- mybatis中的动态代理底层如何实现
- 怎么把字符串内的子字符串替换掉?
- XStream的bug,比如在定义别名中的下划线“_”解析为xml后。xml的节点<per_name>对应person类中的per_name字段不匹配
看清我的问题没有?
我问的是如何把不同线程的log写到不同文件
但是Logger logger = Logger.getLogger(A.class);
都是从一个Logger中获取的实例,如果一个线程改了输出文件名,其他线程受不受影响?
### set log levels - for more verbose logging change 'info' to 'debug' ###
log4j.rootLogger=info,stdout,file,cl log4j.logger.innerControlAction = info, console, innerControlAction### 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{MM dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n### direct messages to file hibernate.log ###
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=clBackOffice.log
log4j.appender.file.MaxFileSize=1024KB
log4j.appender.FILE.MaxBackupIndex=20
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{MM dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n
log4j.appender.cl=org.apache.log4j.DailyRollingFileAppender
log4j.appender.cl.File=.//logs//clB2C_log.log
log4j.appender.cl.DatePattern='_'yyyy-MM-dd
log4j.appender.cl.layout=org.apache.log4j.PatternLayout
log4j.appender.cl.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}][%m]%n
###definition for debug###
#log4j.logger.java.sql=DEBUG
#log4j.logger.org.springframework=DEBUG
#innerControlAction Log
log4j.appender.innerControlAction=org.apache.log4j.DailyRollingFileAppender
log4j.appender.innerControlAction.File=c://logs//innerControlAction.log
log4j.appender.innerControlAction.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.innerControlAction.encoding=GBK
log4j.appender.innerControlAction.layout=org.apache.log4j.PatternLayout
log4j.appender.innerControlAction.layout.ConversionPattern=[%d{yyyy-MM-dd HH\:mm\:ss} | %t | %c\:%L]%n[%p\: %m]%n看见innerControlAction 这个没有,然后你在你代码中这样:
private Logger logger = Logger.getLogger("innerControlAction");然后日志就会输出到你指定的位置。