java - 自定义输出log4j

标签 java log4j

我尝试自定义 log4j 的输出,为此我使用 org.apache.log4j.PatternLayout

我当前的输出是:

2016-11-30 10:04:42,928 信息 [org.mobicents.smsc.library.CdrGenerator] OrangeSmsc,18004,null,null,null,id:0000018004 sub:00,,21

我希望它看起来像这样:

2016-11-30 10:04:42 OrangeSmsc,18004,null,null,null,id:0000018004 子:00,,21

为此,我使用以下模式:

<layout class="org.apache.log4j.PatternLayout"> 
    <param name="ConversionPattern" value="%d{yyyy-MM-dd} %m%n"/> 
</layout> 

但它不起作用。

完整的附加程序描述:

<appender name="CDR" class="org.jboss.logging.appender.DailyRollingFileAppender">
    <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
    <param name="File" value="${jboss.server.home.dir}/log/cdr.log"/>
    <param name="Append" value="true"/>
    <param name="Threshold" value="INFO"/>
    <param name="DatePattern" value="'.'yyyy-MM-dd"/>
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d{yyyy-MM-dd} %m%n"/>
    </layout>
</appender>

最佳答案

我能够使用您提到的模式运行 log4j 日志。这没有问题。唯一的问题是,直到我评论以下行

之前它才起作用
<param name="DatePattern" value="'.'yyyy-MM-dd" />

这是最终的appender 的样子。 (请注意,我已经删除了 jboss 记录器错误处理程序)

<appender name="CDR" class="org.apache.log4j.RollingFileAppender">
    <!-- <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler" /> -->
    <param name="File" value="cdr.log" />
    <param name="Append" value="true" />
    <param name="Threshold" value="DEBUG" />
    <!-- 
    <param name="DatePattern" value="'.'yyyy-MM-dd" /> -->
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d{yyyy-MM-dd} %m%n" />
    </layout>
</appender>

这是我放在java类上的日志。

logger.debug("Log4j appender configuration is successful !!");

这是我使用的addepter,下面是输出文件内容。

2016-11-30 Log4j appender configuration is successful !!

关于java - 自定义输出log4j,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40884494/

相关文章:

java - 分布式系统应该使用哪些Appender?如何配置它们?

java - log4j-to-slf4j 未实现 org.apache.logging.log4j.LogManager

java - 如何登录JBoss控制台

java - 测试时老虎机问题

java - 子类也会继承其父类的父类(super class)吗?

java - 发送蓝色 : sending mail with attachement to sendinblue

java - log4j 在 Catalina.out 和日志文件之间重复日志

java - DataJPATest Junit 方法命名和 NullPointerExceptions

java - org.springframework.remoting.RemoteAccessException : Could not access HTTP invoker remote service occurs when starting tasks from anbother thread

java - 轻松禁用小程序的 log4j?