Log4j配置使用&集成kafka

浪子不回头ぞ 提交于 2020-03-02 16:58:29

Log4j配置使用 1、配置根Logger: log4j.rootLogger = [level],appenderName1(输出目录1),appenderName2(输出目录2),… 1.1、level一般分为5个级别:DEBUG < INFO < WARN < ERROR < FATAL Log4j有一个规则:只输出级别不低于(>=)设定级别的日志信息 假设Loggers级别设定为INFO,则INFO、WARN、ERROR和FATAL级别的日志信息都会输出,而级别比INFO低的DEBUG则不会输出 1.2、appenderName:就是指定日志信息输出到哪个地方,可以同时指定多个输出目录
注意:
这里设置的输出目录要和下面具体配置输出目录名保持一致 示例: log4j.rootLogger=INFO,KAFKA,rolling

2、配置日志信息输出目的地(appender):

appender KAFKA

log4j.appender.KAFKA=kafka.producer.KafkaLog4jAppender log4j.appender.KAFKA.topic=tigbs_monitor_log log4j.appender.KAFKA.brokerList=kafka04broker01.cnsuning.com:9092,kafka04broker02.cnsuning.com:9092,kafka04broker03.cnsuning.com:9092 log4j.appender.KAFKA.requiredNumAcks=0 log4j.appender.KAFKA.compressionType=none log4j.appender.KAFKA.syncSend=false log4j.appender.KAFKA.layout=org.apache.log4j.PatternLayout log4j.appender.KAFKA.layout.ConversionPattern=%m%n

appender console

log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.target=System.err log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.layout.ConversionPattern=%m%n

appender Rolling File

log4j..roappenderlling=org.apache.log4j.RollingFileAppender log4j.appender.rolling.File=${jboss.home.dir}/standalone/log/access.log log4j.appender.rolling.BufferSize=8192 log4j.appender.rolling.MaxFileSize=50MB log4j.appender.rolling.MaxBackupIndex=20 log4j.appender.rolling.layout=org.apache.log4j.PatternLayout log4j.appender.rolling.append=true log4j.appender.rolling.layout.ConversionPattern=%m%n

3、配置日志信息的输出格式(Layout): log4j.appender.appenderName.layout=className className:可设值如下: (1)org.apache.log4j.HTMLLayout(以HTML表格形式布局) (2)org.apache.log4j.PatternLayout(可以灵活地指定布局模式) (3)org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串) (4)org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息) (1)HTMLLayout选项: LocationInfo=true:输出java文件名称和行号,默认值是false。 Title=My Logging: 默认值是Log4J Log Messages。 (2)PatternLayout选项: ConversionPattern=%m%n:设定以怎样的格式显示消息 %m::输出代码中指定的具体日志信息。 %n:输出一个回车换行符,Windows平台为"rn",Unix平台为"n"。

4、简介 链接地址:https://www.cnblogs.com/wangzhuxing/p/7753420.html Log4j有三个主要的组件:Loggers(记录器),Appenders(输出源)和Layouts(布局)。 这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。 综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置

Log4j支持两种配置文件格式,一种是XML格式的文件,一种是properties属性文件

5、实战应用

private static final Logger logger = LoggerFactory.getLogger(ApplyCenterController.class);

6、SLF4J和Log4j的关系 slf4j的全称是Simple Logging Facade for Java--简单日志门面,是各种日志系统(例如log4j, logback等)实现的抽象层 它是把不同的日志系统的实现进行了具体的抽象化,只提供了统一的日志使用接口,使用时只需要按照其提供的接口方法进行调用即可 因此不难看出,slf4j类似于各种日志框架的api层,这样如果我们在我们需要使用日志的地方,采用slf4j的api而不是采用特定的日志框架的api去产生日志,在可扩展性和可维护性上得到了提高

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!