码迷,mamicode.com
首页 > 其他好文 > 详细

kafka客户端打印日志

时间:2018-04-15 12:08:02      阅读:631      评论:0      收藏:0      [点我收藏+]

标签:配置文件   scope   code   默认   logging   OLE   自定义log   ace   框架   

kafka 0.10.0 java客户端使用slf4j作为日志门面,需要我们加入具体的日志实现依赖才能打印日志,日志框架:http://www.cnblogs.com/set-cookie/p/8836496.html

1 客户端依赖jar包

使用命令

mvn dependency:tree -Dverbose

查看客户端依赖的那些包,可以看到java客户端只依赖了slf4j,并没有具体的日志实现:
技术分享图片

运行客户端,会打印slf4j的warn提示
技术分享图片

2 使用log4j2

加入依赖

<dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>

        <!-- kafka客户端-->
        <dependency>
            <groupId>org.apache.kafka</groupId>
            <artifactId>kafka-clients</artifactId>
            <version>0.10.0.0</version>
        </dependency>

        <!--log4j2到slf4j桥梁-->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-slf4j-impl</artifactId>
            <version>2.9.1</version>
        </dependency>

        <!--log4j2-->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            <version>2.11.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.11.0</version>
        </dependency>
        <!--log4j2-->
    </dependencies>

如果不创建log4j2.xml配置文件的话,log4j2会使用默认的配置,输出级别是ERROR,如下:

 <?xml version="1.0" encoding="UTF-8"?>
  <Configuration status="WARN"> <!--status表示log4j2自身日志的级别-->
    <Appenders>
      <Console name="Console" target="SYSTEM_OUT">
        <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
      </Console>
    </Appenders>
    <Loggers>
      <Root level="error">
             <AppenderRef ref="Console"/>
                  </Root>
   </Loggers>
 </Configuration>

为了灵活性,我们可以在resources目录下创建log4j2.xml来自定义log4j2的打印,其实仅仅是将日志级别从error修改为了trace

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
        </Console>
    </Appenders>
    <Loggers>
        <Root level="trace"> <!--error改成trace,便于debug-->
            <AppenderRef ref="Console"/>
        </Root>
    </Loggers>
</Configuration>

再次运行, 已经打印了trace日志
技术分享图片

kafka客户端打印日志

标签:配置文件   scope   code   默认   logging   OLE   自定义log   ace   框架   

原文地址:https://www.cnblogs.com/set-cookie/p/8836715.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!