flume的log4j.properties配置说明

简介: flume的log4j.properties配置说明

log4j.properties配置的原文:

#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#  http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.
#
# Define some default values that can be overridden by system properties.
#
# For testing, it may also be convenient to specify
# -Dflume.root.logger=DEBUG,console when launching flume.
#flume.root.logger=info,console
flume.root.logger=INFO,LOGFILE,console,debug
flume.log.dir=../logs
flume.log.file=run_info.log
log4j.logger.org.apache.flume.lifecycle = INFO
log4j.logger.org.jboss = WARN
log4j.logger.org.mortbay = INFO
log4j.logger.org.apache.avro.ipc.NettyTransceiver = WARN
log4j.logger.org.apache.hadoop = INFO
# Define the root logger to the system property "flume.root.logger".
log4j.rootLogger=${flume.root.logger}
# Stock log4j rolling file appender
# Default log rotation configuration
log4j.appender.LOGFILE=org.apache.log4j.RollingFileAppender
log4j.appender.LOGFILE.MaxFileSize=50MB
log4j.appender.LOGFILE.MaxBackupIndex=5
log4j.appender.LOGFILE.File=${flume.log.dir}/${flume.log.file}
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss.SSS} %-5p [%t] (%C.%M:%L) %x - %m%n
# Warning: If you enable the following appender it will fill up your disk if you don't have a cleanup job!
# This uses the updated rolling file appender from log4j-extras that supports a reliable time-based rolling policy.
# Add "DAILY" to flume.root.logger above if you want to use this
log4j.appender.DAILY=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.DAILY.rollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.DAILY.rollingPolicy.ActiveFileName=${flume.log.dir}/${flume.log.file}
log4j.appender.DAILY.rollingPolicy.FileNamePattern=${flume.log.dir}/${flume.log.file}.%d{yyyy-MM-dd}
log4j.appender.DAILY.layout=org.apache.log4j.PatternLayout
log4j.appender.DAILY.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss.SSS} %-5p [%t] (%C.%M:%L) %x - %m%n
# 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=%d{yyyy-MM-dd HH\:mm\:ss.SSS} (%t) [%F:%L] %m%n
#warn
log4j.logger.warn=warn
log4j.appender.warn=org.apache.log4j.RollingFileAppender
log4j.appender.warn.MaxFileSize=50MB
log4j.appender.warn.MaxBackupIndex=5
log4j.appender.warn.File=${flume.log.dir}/run_warn.log 
log4j.appender.warn.Append=true   
log4j.appender.warn.Threshold =WARN
log4j.appender.warn.layout=org.apache.log4j.PatternLayout   
log4j.appender.warn.layout.ConversionPattern=[ %p ]  %-d{yyyy-MM-dd HH:mm:ss.SSS} [%F:%L]  %m%n
#error
log4j.logger.error=error
log4j.appender.error=org.apache.log4j.RollingFileAppender
log4j.appender.error.MaxFileSize=50MB
log4j.appender.error.MaxBackupIndex=5
log4j.appender.error.File=${flume.log.dir}/run_error.log   
log4j.appender.error.Append=true   
log4j.appender.error.Threshold =ERROR
log4j.appender.error.layout=org.apache.log4j.PatternLayout   
log4j.appender.error.layout.ConversionPattern=[ %p ]  %-d{yyyy-MM-dd HH:mm:ss.SSS} [%F:%L]  %m%n
#debug
log4j.logger.debug=debug
log4j.appender.debug=org.apache.log4j.RollingFileAppender
log4j.appender.debug.MaxFileSize=50MB
log4j.appender.debug.MaxBackupIndex=5
log4j.appender.debug.File=${flume.log.dir}/run_debug.log   
log4j.appender.debug.Append=true   
log4j.appender.debug.Threshold =DEBUG
log4j.appender.debug.layout=org.apache.log4j.PatternLayout   
log4j.appender.debug.layout.ConversionPattern=[ %p ]  %-d{yyyy-MM-dd HH:mm:ss.SSS} [%F:%L]  %m%n


让日志回滚,只需要配置它的类型及文件大小(MaxFileSize--默认是10M)、文件数(MaxBackupIndex--默认是1)

如:

log4j.appender.LOGFILE=org.apache.log4j.RollingFileAppender
log4j.appender.LOGFILE.MaxFileSize=2MB
log4j.appender.LOGFILE.MaxBackupIndex=5
log4j.appender.LOGFILE.File=${flume.log.dir}/${flume.log.file}
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss.SSS} %-5p [%t] (%C.%M:%L) %x - %m%n

实现效果:

备份文件数是5个,大小是2M。当run_info.log文件达到2M时,run_info.log.5 会被删除,其他文件会被重命名:run_info.log-->run_info.log.1,run_info.log.1-->run_info.log.2,以此类推。


除了配置之外,还有需要注意的是jar包

log4j-1.2.16.jar

slf4j-api-1.6.4.jar

slf4j-log4j12-1.6.1.jar

之前上个一个当,把slf4j-simple-1.6.4.jar加进去了,一直不打日志。找了好久才发现是jar包加错了。


相关文章
|
11天前
|
数据采集 消息中间件 监控
Flume数据采集系统设计与配置实战:面试经验与必备知识点解析
【4月更文挑战第9天】本文深入探讨Apache Flume的数据采集系统设计,涵盖Flume Agent、Source、Channel、Sink的核心概念及其配置实战。通过实例展示了文件日志收集、网络数据接收、命令行实时数据捕获等场景。此外,还讨论了Flume与同类工具的对比、实际项目挑战及解决方案,以及未来发展趋势。提供配置示例帮助理解Flume在数据集成、日志收集中的应用,为面试准备提供扎实的理论与实践支持。
43 1
|
11天前
|
监控 Serverless 数据库
Serverless 应用引擎常见问题之biphon-education-配置了SLS后一直重启如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
32 5
|
11天前
|
存储 JSON 监控
可以通过配置Filebeat来将Higress日志持久化到磁盘
【2月更文挑战第10天】可以通过配置Filebeat来将Higress日志持久化到磁盘
35 4
|
11天前
|
Unix Linux iOS开发
Elasticsearch如何配置日志
Elasticsearch如何配置日志
|
9天前
|
SQL 存储 Java
实时计算 Flink版产品使用合集之怎么配置日志的输出格式和文件大小
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
25 1
|
10天前
|
消息中间件 SQL 资源调度
实时计算 Flink版产品使用合集之 Flink on YARN 中使用滚动日志时配置不生效如何解决
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
22 0
|
11天前
|
Java
log4j异常日志过滤规则配置
log4j异常日志过滤规则配置
104 0
|
11天前
|
Java
log4j2定期删除日志文件的配置
确保将以上配置嵌入到你的Log4j 2配置文件中,并根据项目的需求进行适当的调整。
56 1
|
11天前
|
XML 数据格式
Flume【付诸实践 01】flume1.9.0版 配置格式说明+常用案例分享(ExecSource+SpoolingDirectorySource+HDFSSink+AvroSourceSink)
【2月更文挑战第19天】Flume【付诸实践 01】flume1.9.0版 配置格式说明+常用案例分享(ExecSource+SpoolingDirectorySource+HDFSSink+AvroSourceSink)
39 1
|
11天前
|
消息中间件 存储 SQL
Flume【基础知识 01】简介 + 基本架构及核心概念 + 架构模式 + Agent内部原理 + 配置格式(一篇即可入门Flume)
【2月更文挑战第18天】Flume【基础知识 01】简介 + 基本架构及核心概念 + 架构模式 + Agent内部原理 + 配置格式(一篇即可入门Flume)
538 0

热门文章

最新文章