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

发布于 2021-11-22 20:05:00 字数 785 浏览 912 评论 6

初次使用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 

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

悟红尘 2021-11-29 12:41:14

行了,谢谢!

回忆凄美了谁 2021-11-29 12:40:01
#设置日志的根级别。
#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

顾忌 2021-11-29 11:55:34

在linux中,就单独一个jar,直接在命令行java -jar xxx.jar, 这样来运行

爱的那么颓废 2021-11-29 09:10:31

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

伪装你 2021-11-29 08:11:45

目录存在,/home/jakic/temp/logs/file.log文件也有写权限

长安忆 2021-11-29 05:00:09

目录存不存在,是否有权限。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文