当前位置: 技术问答>java相关
高分请教!关于log4j应用的问题。很难的。(分不够可以加分,来者有分!)
来源: 互联网 发布时间:2015-11-19
本文导语: 我要用log4j写log文件。 可是有一些问题,我不知道如何解决。 1) 我要写的log文件名定义格式是:文件名.yyyy-mm-dd 如果应用配置文件的话,我该怎么做啊? 2) 输出的log语句的格式是 共通的部分为: 日期 时刻 level...
我要用log4j写log文件。
可是有一些问题,我不知道如何解决。
1)
我要写的log文件名定义格式是:文件名.yyyy-mm-dd
如果应用配置文件的话,我该怎么做啊?
2)
输出的log语句的格式是
共通的部分为:
日期 时刻 level名 DBServer名 线程ID IP地址
如果应用配置文件的话,我只找到日期、时刻、level名的格式,其他的都没有找到,为了实现这种格式的输出,我该如何做呢?
3)
我每一个level的log语句的输出格式都不同。我该如何定义每一个level的log语句的输出格式?
4)
有没有详细介绍log4j的api的中文说明的网站或网页,请介绍一两个。多谢!!!
可是有一些问题,我不知道如何解决。
1)
我要写的log文件名定义格式是:文件名.yyyy-mm-dd
如果应用配置文件的话,我该怎么做啊?
2)
输出的log语句的格式是
共通的部分为:
日期 时刻 level名 DBServer名 线程ID IP地址
如果应用配置文件的话,我只找到日期、时刻、level名的格式,其他的都没有找到,为了实现这种格式的输出,我该如何做呢?
3)
我每一个level的log语句的输出格式都不同。我该如何定义每一个level的log语句的输出格式?
4)
有没有详细介绍log4j的api的中文说明的网站或网页,请介绍一两个。多谢!!!
|
我的配置文件如下,你可以参考一下吧,不过你提的有些部分我也不清楚,建议还是查查Log4的文档吧
============================================Notes=======================================================
# Write a configuration file. In this file:
# 1. Specify the level of the root logger and attach an appender to it.
# 2. Specify the properties of the appender.
# 3. Specify a layout for the appender.
========================================================================================================
========================================log4j.properties================================================
log4j.rootLogger = debug, SystemOut ,LogFile
log4j.appender.SystemOut = org.apache.log4j.ConsoleAppender
log4j.appender.SystemOut.layout = org.apache.log4j.PatternLayout
log4j.appender.SystemOut.layout.ConversionPattern = %n [%d{HH:mm},%r] [%t] %x %n (%F:%L) - %m%n
log4j.appender.LogFile = org.apache.log4j.DailyRollingFileAppender
log4j.appender.LogFile.file = D:\asp\log\log4j.log
#log4j.appender.LogFile.datePattern = '.'yyyy-MM-dd-HH-mm
log4j.appender.LogFile.append = true
log4j.appender.LogFile.layout = org.apache.log4j.PatternLayout
log4j.appender.LogFile.layout.ConversionPattern = %n [%d{yyyy-MM-dd HH:mm},%2r] [%t] %x %n (%F:%L) - %m%n
=========================================================================================================
============================================Notes=======================================================
# Write a configuration file. In this file:
# 1. Specify the level of the root logger and attach an appender to it.
# 2. Specify the properties of the appender.
# 3. Specify a layout for the appender.
========================================================================================================
========================================log4j.properties================================================
log4j.rootLogger = debug, SystemOut ,LogFile
log4j.appender.SystemOut = org.apache.log4j.ConsoleAppender
log4j.appender.SystemOut.layout = org.apache.log4j.PatternLayout
log4j.appender.SystemOut.layout.ConversionPattern = %n [%d{HH:mm},%r] [%t] %x %n (%F:%L) - %m%n
log4j.appender.LogFile = org.apache.log4j.DailyRollingFileAppender
log4j.appender.LogFile.file = D:\asp\log\log4j.log
#log4j.appender.LogFile.datePattern = '.'yyyy-MM-dd-HH-mm
log4j.appender.LogFile.append = true
log4j.appender.LogFile.layout = org.apache.log4j.PatternLayout
log4j.appender.LogFile.layout.ConversionPattern = %n [%d{yyyy-MM-dd HH:mm},%2r] [%t] %x %n (%F:%L) - %m%n
=========================================================================================================
|
这个问题我也遇到过。我当时是想根据level设置不同的日志文件。后来没办法,配置了多个Category。这样,每次你在用到log的时候,就可能要生成好几个Logger的实例,也很麻烦。
可能Log4j本身就不支持我们这种需求吧。
不知道有没有人告诉我答案。帮你up
可能Log4j本身就不支持我们这种需求吧。
不知道有没有人告诉我答案。帮你up
|
up
|
UP
|
目前好象不行的说
|
相对路径你可以测试,目前我的log4j的根路径就是WSAD的根路径
|
研究ing...
|
请教各位,我的配置文件中加入“[%d{HH:mm},%r]”就报错
Exception in thread "main" java.lang.NoSuchFieldError: timeStamp
at org.apache.log4j.helpers.PatternParser$DatePatternConverter.convert(PatternParser.java:431)
而没有这个就能正确执行,,不知是什么原因?
log4j.appender.R.layout.ConversionPattern=[%d{HH:mm},%r]%-5p %l %x: %m%n
Exception in thread "main" java.lang.NoSuchFieldError: timeStamp
at org.apache.log4j.helpers.PatternParser$DatePatternConverter.convert(PatternParser.java:431)
而没有这个就能正确执行,,不知是什么原因?
log4j.appender.R.layout.ConversionPattern=[%d{HH:mm},%r]%-5p %l %x: %m%n