know5978 2014-12-11 07:33 采纳率: 0%
浏览 7913

启动时log4j报错,log4j应该怎么配置






<appender name="avatarAppender" class="org.apache.log4j.DailyRollingFileAppender">
    <param name="File" value="/data/applogs/tpfun-dealDuplicateCheck-job/logs/avatar.log" />
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="[tpfun-dealDuplicateCheck-job]%d %-5p [%c] %m%n" />
    </layout>
</appender>

<appender name="appAppender" class="org.apache.log4j.DailyRollingFileAppender">
    <param name="File" value="/data/applogs/tpfun-dealDuplicateCheck-job/logs/app.log" />
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="[tpfun-dealDuplicateCheck-job]%d %-5p [%c] %m%n" />
    </layout>
</appender>

<appender name="ibatisAppender" class="org.apache.log4j.DailyRollingFileAppender">
    <param name="File" value="/data/applogs/tpfun-dealDuplicateCheck-job/logs/ibatis.log" />
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="[tpfun-dealDuplicateCheck-job]%d %-5p [%c] %m%n" />
    </layout>
</appender>

<logger name="com.dianping.avatar" additivity="false">
    <appender-ref ref="CONSOLE" />
    <appender-ref ref="avatarAppender" />
</logger>

<logger name="com.ibatis" additivity="false">
    <level value="WARN" />
    <appender-ref ref="ibatisAppender" />
</logger>

<logger name="java.sql">
    <level value="WARN" />
</logger>

<logger name="org.springframework.jms">
    <level value="ERROR" />
</logger>

<logger name="org.springframework.context">
    <level value="INFO" />
    <appender-ref ref="CONSOLE" />
    <appender-ref ref="appAppender" />
</logger>

<root>
    <level value="INFO" />
    <appender-ref ref="CONSOLE" />
    <appender-ref ref="appAppender" />
</root>

这是我的配置文件,报错为
log4j:WARN Fatal parsing error 2 and column 72
log4j:WARN 在 publicId 和 systemId 之间需要有空格。
log4j:ERROR Could not parse url [file:/D:/workspace/tpfun-job/tpfun-dealDuplicateCheck-job/target/classes/log4j.xml].
org.xml.sax.SAXParseException; systemId: file:/D:/workspace/tpfun-job/tpfun-dealDuplicateCheck-job/target/classes/log4j.xml; lineNumber: 2; columnNumber: 72; 在 publicId 和 systemId 之间需要有空格。
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:257)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:347)
at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:177)
at org.apache.log4j.xml.DOMConfigurator$2.parse(DOMConfigurator.java:612)
at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:711)
at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:618)
at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:470)
at org.apache.log4j.LogManager.(LogManager.java:122)
at org.slf4j.impl.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:64)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:253)
at com.dianping.avatar.log.slf4j.Slf4jLogger.(Slf4jLogger.java:38)
at com.dianping.avatar.log.slf4j.Slf4jLoggerBuilder.buildLogger(Slf4jLoggerBuilder.java:60)
at com.dianping.avatar.log.AvatarLoggerFactory.getLogger(AvatarLoggerFactory.java:90)
at com.dianping.tpfun.job.dealDuplicateCheck.App.(App.java:11)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:190)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:116)
log4j:WARN No appenders could be found for logger (com.dianping.tpfun.job.dealDuplicate.App).
log4j:WARN Please initialize the log4j system properly.

  • 写回答

2条回答

  • shenlan0322 2014-12-13 10:36
    关注

    你贴的这个配置文件 没有publicId 和 systemId ,怎么就报log4j:WARN 在 publicId 和 systemId 之间需要有空格,让人怎么解决

    评论

报告相同问题?

悬赏问题

  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?
  • ¥15 matlab(相关搜索:紧聚焦)
  • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计
  • ¥15 Arduino无法同时连接多个hx711模块,如何解决?
  • ¥50 需求一个up主付费课程