xindongyinfu 2009-01-06 10:07
浏览 367
已采纳

log4j打印的log信息莫名其妙

我的log4j是这么配置的
[code]
log4j.rootLogger = DEBUG,console,A,B
log4j.appender.console =org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=-%d{yyyy-MM-dd HH:mm:ss} - [ %p ] %l %x -%m%n

#log4j.appender.A=org.apache.log4j.RollingFileAppender
log4j.appender.A=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A.File=logs/info.txt
log4j.appender.A.Append = true
log4j.appender.A.Threshold = DEBUG
log4j.appender.A.DatePattern='.'yyyy-MM-dd
log4j.appender.A.layout=org.apache.log4j.PatternLayout
log4j.appender.A.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%p] %5p %c{1}:%L - %m%n

#log4j.appender.B = org.apache.log4j.DailyRollingFileAppender
log4j.appender.B=org.apache.log4j.DailyRollingFileAppender
log4j.appender.B.File = logs/error.txt
log4j.appender.B.Append = true
log4j.appender.B.Threshold = ERROR
log4j.appender.B.DatePattern='.'yyyy-MM-dd
log4j.appender.B.layout = org.apache.log4j.PatternLayout
log4j.appender.B.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [%p] %5p %c{1}:%L - %m%n

web.xml如此加载

Log4jInit
util.configutil.Log4jInit

log4j-init-file
WEB-INF/log4j.lcf

1

Class类如此解析:
public class Log4jInit extends HttpServlet{

public void init(){
    String prefix = getServletContext().getRealPath("/");
    String file = getInitParameter("log4j-init-file");
    if(file!=null){
        PropertyConfigurator.configure(prefix+file);
    }
}

}
[/code]
让我纳闷的是在服务器上的weblogic打印出来的东西根本就不是我在程序里写的log信息。
log 如下:
[code]
2009-01-06 05:07:29 [INFO] INFO PropertyMessageResources:127 - Initializing, config='org.apache.struts.util.LocalStrings', returnNull=true
2009-01-06 05:07:29 [INFO] INFO PropertyMessageResources:127 - Initializing, config='org.apache.struts.action.ActionResources', returnNull=true
2009-01-06 05:07:29 [DEBUG] DEBUG Digester:1621 - register('-//Apache Software Foundation//DTD Struts Configuration 1.0//EN', 'zip:/bea/user_projects/domains/sasdomain/SASManagedServer/.wlnotdelete/extract/SASManagedServer_frame_frame/jarfiles/WEB-INF/lib/struts3953.jar!/org/apache/struts/resources/struts-config_1_0.dtd'
2009-01-06 05:07:29 [DEBUG] DEBUG Digester:1621 - register('-//Apache Software Foundation//DTD Struts Configuration 1.1//EN', 'zip:/bea/user_projects/domains/sasdomain/SASManagedServer/.wlnotdelete/extract/SASManagedServer_frame_frame/jarfiles/WEB-INF/lib/struts3953.jar!/org/apache/struts/resources/struts-config_1_1.dtd'
2009-01-06 05:07:29 [DEBUG] DEBUG Digester:1621 - register('-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN', 'zip:/bea/user_projects/domains/sasdomain/SASManagedServer/.wlnotdelete/extract/SASManagedServer_frame_frame/jarfiles/WEB-INF/lib/struts3953.jar!/org/apache/struts/resources/web-app_2_2.dtd'
2009-01-06 05:07:29 [DEBUG] DEBUG Digester:1621 - register('-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN', 'zip:/bea/user_projects/domains/sasdomain/SASManagedServer/.wlnotdelete/extract/SASManagedServer_frame_frame/jarfiles/WEB-INF/lib/struts3953.jar!/org/apache/struts/resources/web-app_2_3.dtd'
2009-01-06 05:07:29 [DEBUG] DEBUG ActionServlet:1426 - Scanning web.xml for controller servlet mapping
2009-01-06 05:07:29 [DEBUG] DEBUG sax:1171 - setDocumentLocator(weblogic.apache.xerces.parsers.AbstractSAXParser$LocatorProxy@58d53986)
2009-01-06 05:07:29 [DEBUG] DEBUG sax:1205 - startDocument()
2009-01-06 05:07:29 [DEBUG] DEBUG sax:1392 - resolveEntity('-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN', 'http://java.sun.com/dtd/web-app_2_3.dtd')
2009-01-06 05:07:29 [DEBUG] DEBUG Digester:1415 - Resolving to alternate DTD 'zip:/bea/user_projects/domains/sasdomain/SASManagedServer/.wlnotdelete/extract/SASManagedServer_frame_frame/jarfiles/WEB-INF/lib/struts3953.jar!/org/apache/struts/resources/web-app_2_3.dtd'
2009-01-06 05:07:29 [DEBUG] DEBUG sax:1234 - startElement(,web-app,web-app)
2009-01-06 05:07:29 [DEBUG] DEBUG Digester:1241 - Pushing body text ''
2009-01-06 05:07:29 [DEBUG] DEBUG Digester:1260 - New match='web-app'
2009-01-06 05:07:29 [DEBUG] DEBUG Digester:1284 - No rules found matching 'web-app'.
2009-01-06 05:07:29 [DEBUG] DEBUG sax:1123 - ignorableWhitespace(
)
2009-01-06 05:07:29 [DEBUG] DEBUG sax:1234 - startElement(,display-name,display-name)
2009-01-06 05:07:29 [DEBUG] DEBUG Digester:1241 - Pushing body text ''
2009-01-06 05:07:29 [DEBUG] DEBUG Digester:1260 - New match='web-app/display-name'
2009-01-06 05:07:29 [DEBUG] DEBUG Digester:1284 - No rules found matching 'web-app/display-name'.
2009-01-06 05:07:29 [DEBUG] DEBUG sax:936 - characters(dw)
2009-01-06 05:07:29 [DEBUG] DEBUG sax:1004 - endElement(,display-name,display-name)
2009-01-06 05:07:29 [DEBUG] DEBUG Digester:1007 - match='web-app/display-name'
2009-01-06 05:07:29 [DEBUG] DEBUG Digester:1008 - bodyText='dw'
2009-01-06 05:07:29 [DEBUG] DEBUG Digester:1039 - No rules found matching 'web-app/display-name'.
2009-01-06 05:07:29 [DEBUG] DEBUG Digester:1046 - Popping body text ''
2009-01-06 05:07:29 [DEBUG] DEBUG sax:1123 - ignorableWhitespace(
)
..........................后面还有很多类似的信息 这些都是什么信息怎么会在我的log里出现啊。是容器的吗?它怎么会打印到我这里来啊。我配置的有问题吗。但在我本地tomcat上都没问题啊
[/code]
[b]问题补充:[/b]
INFO也不行啊 我这里打印出来的info也都没有我程序里的写info信息啊
[b]问题补充:[/b]
同一个应用下配置多个log4j,是怎么配置的!
[b]问题补充:[/b]
确时时我的应用发布的地方也同时有别人的应用,也就是说都用的同一个web。xml里面。我在单独的应用里就没有这个问题,但我不知道如何解决,怎么样配才能和别的区分开来。别人的我没有权限去看。只能修改自己的,而且还必须放在同一个服务下。我要晕死了,到现在这个log都无法使用,每次错现错误我都无法通过log方式去解决很是困惑啊。log4j在配置的时候有没有专门的功能可以在同一服务下配置多套log4j的啊
[b]问题补充:[/b]
[quote]这么简单的话,不可能的,看看你打出来的是不是别的系统的日志,换个服务器试一下.[/quote]

这个应该不会,因为那个目录确实是我在log4j配置信息里配置的目录啊。
log4j.appender.A.File=logs/info.txt

log4j.appender.B.File = logs/error.txt

[b]问题补充:[/b]
非常感谢hanhg (中级程序员) 对我的帮助!

就从单方面来说我上面所做的log4j配置的正确吗?真正的应用里log4j都是怎么配置的,能不能指点我一下 让我上个台阶。

  • 写回答

9条回答 默认 最新

  • hanhg 2009-01-14 13:53
    关注

    我觉得你上面的配置是没有问题的,日志的级别一般情况下会设置为info还是debug,要运行时决定,info的一般为基本信息,dubug为调试信息。
    对于一些基本的应用和你的配置是差不多的。
    有些应用也会通过重写log4j的Appender来打印日志。定义自己的日志打印在哪里。
    你可以往上随便找一遍介绍,我觉得这个东西其实还是比较容易的,用的多了就好了。
    个人的一点建议,有点关公面前耍大刀了。
    希望我们可以一起进步。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(8条)

报告相同问题?

悬赏问题

  • ¥17 pro*C预编译“闪回查询”报错SCN不能识别
  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向