在控制台单独运行一个jar,里面用到log4j,但日志只在控制台输出,没在日志文件里输出

jakic 发布于 2014/06/12 14:54
阅读 870
收藏 1

初次使用log4j,在控制台单独运行一个jar,里面用到log4j,但日志只在控制台输出,没在日志文件里输出。

log4j.properties里的内容如下:

log4j.rootLogger=FILE, 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 %p [%c] - %m%n


###输出到文件###
log4j.appender.FILE=org.apache.log4j.FileAppender 
log4j.appender.FILE.File=/home/jakic/temp/logs/file.log 
log4j.appender.FILE.Append=false 
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout 
log4j.appender.FILE.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n 

加载中
0
len
len
目录存不存在,是否有权限。
jakic
jakic
目录存在,/home/jakic/temp/logs/file.log文件也有写权限
0
len
len

你是在Windows还是linux中运行的,如果是Windows,这样的话目录就是在和Tomcat同盘符的根目录下。


jakic
jakic
在linux中,就单独一个jar,直接在命令行java -jar xxx.jar, 这样来运行
0
len
len
#设置日志的根级别。
#log4j中有五级logger FATAL = 0, ERROR = 3, WARN = 4, INFO = 6, DEBUG = 7
#OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL
log4j.rootLogger = DEBUG,INFO,infoTXT,errorTXT

log4j.logger.org.apache=ERROR
log4j.logger.org.springframework=ERROR
log4j.logger.org.securityfilter=ERROR
log4j.logger.org.displaytag=ERROR
log4j.logger.com.danga.MemCached.MemCachedClient=ERROR
log4j.logger.com.danga.MemCached=ERROR
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.INFO =  org.apache.log4j.ConsoleAppender
log4j.appender.INFO.layout = org.apache.log4j.PatternLayout
log4j.appender.debug =  org.apache.log4j.ConsoleAppender
log4j.appender.debug.layout = org.apache.log4j.PatternLayout

#xmemcached
log4j.logger.com.google=ERROR
log4j.logger.net.rubyeye=ERROR

log4j.logger.java.sql = ERROR
log4j.logger.java.sql.Connection = ERROR
log4j.logger.java.sql.Statement = ERROR
log4j.logger.java.sql.PreparedStatement = ERROR
log4j.logger.java.sql.ResultSet = ERROR
log4j.logger.com.ibatis = ERROR
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource = ERROR
log4j.logger.com.ibatis.common.jdbc.ScriptRunner = ERROR
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate = ERROR
log4j.logger.org.apache.catalina.core = INFO


#5 定义 TXT 输出到文件  info,
log4j.logger.infoTXT= debug
log4j.appender.infoTXT = org.apache.log4j.DailyRollingFileAppender
log4j.appender.infoTXT.Threshold = INFO
log4j.appender.infoTXT.append=true
#6 定义 TXT 要输出到哪一个文件
log4j.appender.infoTXT.File = ../logs/fuser/userInfo.log
log4j.appender.infoTXT.DatePattern='.'yyyy-MM-dd'.log'
#9 定义 TXT 的布局模式为PatternLayout
log4j.appender.infoTXT.layout = org.apache.log4j.PatternLayout
#10 定义 TXT 的输出格式
log4j.appender.infoTXT.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss}:%p %t %c - %m%n

#5 定义 TXT 输出到文件
log4j.logger.errorTXT=error
log4j.appender.errorTXT = org.apache.log4j.DailyRollingFileAppender
log4j.appender.errorTXT.Threshold = ERROR
log4j.appender.errorTXT.append=true
#6 定义 TXT 要输出到哪一个文件
log4j.appender.errorTXT.File = ../logs/fuser/userErro.log
log4j.appender.errorTXT.DatePattern='.'yyyy-MM-dd'.log'
#9 定义 TXT 的布局模式为PatternLayout
log4j.appender.errorTXT.layout = org.apache.log4j.PatternLayout
#10 定义 TXT 的输出格式
log4j.appender.errorTXT.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss}:%p %t %c - %m%n



jakic
jakic
行了,谢谢!
返回顶部
顶部