# 配置RollingFileappender
appender.rolling.type = RollingFile
appender.rolling.name = rolling
# 日志名称 /var/log/elasticsearch/production.log
appender.rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}.log
appender.rolling.layout.type = PatternLayout
appender.rolling.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] %marker%.-10000m%n
# 滚动日志到/var/log/elasticsearch/production-yyyy-MM-dd-i.log; 日志将被压缩在每个滚动,i并将增加
appender.rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}-%d{yyyy-MM-dd}-%i.log.gz
appender.rolling.policies.type = Policies
# 使用基于时间的滚动策略
appender.rolling.policies.time.type = TimeBasedTriggeringPolicy
# 每天滚动日志
appender.rolling.policies.time.interval = 1
# 在日边界上对齐滚动(而不是每24小时滚动一次)
appender.rolling.policies.time.modulate = true
# 使用基于文件大小的滚动策略,比如文件到了100M
appender.rolling.policies.size.type = SizeBasedTriggeringPolicy
# 文件大小在256 MB之后滚动日志
appender.rolling.policies.size.size = 256MB
appender.rolling.strategy.type = DefaultRolloverStrategy
appender.rolling.strategy.fileIndex = nomax
# 滚动日志时使用删除操作
appender.rolling.strategy.action.type = Delete
appender.rolling.strategy.action.basepath = ${sys:es.logs.base_path}
# 只删除匹配文件模式的日志
appender.rolling.strategy.action.condition.type = IfFileName
# 模式是只删除主日志
appender.rolling.strategy.action.condition.glob = ${sys:es.logs.cluster_name}-*
# 只有当我们累积了太多的压缩日志时才删除
appender.rolling.strategy.action.condition.nested_condition.type = IfAccumulatedFileSize
# 压缩日志上的大小条件是2 GB
appender.rolling.strategy.action.condition.nested_condition.exceeds = 2GB

  

如果要在指定的时间段内保留日志文件,则可以使用带有删除操作的滚动策略。

# 配置 DefaultRolloverStrategy
appender.rolling.strategy.type = DefaultRolloverStrategy
# 配置Delete处理滚动的动作
appender.rolling.strategy.action.type = Delete
# Elasticsearch日志的基本路径
appender.rolling.strategy.action.basepath = ${sys:es.logs.base_path}
# 处理滚动时应用的条件
appender.rolling.strategy.action.condition.type = IfFileName
# 从与glob匹配的基本路径中删除文件 ${sys:es.logs.cluster_name}-*; 这是日志文件滚动到的glob; 只需要删除滚动的Elasticsearch日志,而不是删除弃用和慢日志
appender.rolling.strategy.action.condition.glob = ${sys:es.logs.cluster_name}-*
# 嵌套的条件适用于与glob匹配的文件
appender.rolling.strategy.action.condition.nested_condition.type = IfLastModified
# 保留七天的日志
appender.rolling.strategy.action.condition.nested_condition.age = 7D

  

原文链接:https://blog.csdn.net/qq_21383435/article/details/79295329

ES Log4J配置信息的更多相关文章

  1. log4j配置信息

    #INFO的日志信息输出到stdout和R这两个目的地,stdout和R的定义在下面的代码,可以任意起名.等级可分为OFF.FATAL.ERROR.WARN.INFO.DEBUG.ALLlog4j.r ...

  2. log4j配置日志文件log4j.appender.R.File相对路径方法

    方法一. 解决的办法自然是用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如:log4j.appender.logfile.File=${WORKDIR}/logs ...

  3. log4j配置相对路径

    整理自网上: 一般在我们开发项目过程中,log4j日志输出路径固定到某个文件夹,这样如果我换一个环境,日志路径又需要重新修改,比较不方便, 1.log4j的FileAppender本身就有这样的机制, ...

  4. log4j配置相对路径实现日志记录

    从网上简单搜索了一下,发现有三种介绍的方法.总结在这里1. 解决的办法自然是想办法用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如: log4j.appender ...

  5. log4j 配置,tomcat 启动或有后台操作时,控制台会显示很多 DEBUG 信息

    log4j 配置,tomcat 启动或有后台操作时,控制台会显示很多 DEBUG 信息 日志信息可以以文件形式显示,也可以在控制台输出,在 log4j.properties 文件设置. 控制台有很多 ...

  6. 1分钟看懂log4j 配置自己想要的日志信息

    在开发的时候我们会希望 只将  sql信息的日志,已经自定义输出的日志进行打印 ,而一些框架级的日志不需要输出 如下    首先 rootLogger 设置日志级别    log4j.rootLogg ...

  7. 使用log4j配置不同文件输出不同内容

    敲代码中很不注意写日志,虽然明白很重要.今天碰到记录日志,需要根据内容分别输出到不同的文件. 参考几篇文章: 感觉最详细:http://blog.csdn.net/azheng270/article/ ...

  8. log4j 日志信息的引入(通用版)——解决项目运行过程中的日志信息

    定义 log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.GUI组件,甚至是套接口服务器.NT的事件记录器.UNIX Syslog守护进程 ...

  9. log4j 配置

    给java项目添加log4j日志: 1.下载log4j jar包,放入lib目录, 导入项目中 2.创建log4j.properties 文件  目录 Src 3.在需要使用输出的类中使用 priva ...

随机推荐

  1. MariaDB / MySQL数据类型

    MariaDB / MySQL 数据类型 有三种主要的类型:Text(文本).Number(数字)和 Date/Time(日期/时间)类型. Text 类型: 数据类型 描述 CHAR(size) 保 ...

  2. 【转载】TCP 与 UDP 的区别

    原文地址:TCP 与 UDP 的区别 首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信 ...

  3. Python Sip [RuntimeError: the sip module implements API v11.0 to v11.2 but the PyQt5.QtCore module requires API v11.3]

    不知道原因,尝试卸载.编译安装均失败.只有这样曲线救国 import matplotlib matplotlib.use("WXAgg",warn=True) import mat ...

  4. 翻译header

    !/usr/bin/env pyhton --coding:utf-8-- import urllib.request import urllib.parse import os,sys import ...

  5. hdu 5586 Sum 基础dp

    Sum Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Problem Desc ...

  6. Python matplot画柱状图(一)

    图的存在,让数据变得形象化.无论多么复杂的东西,都是简单的组合. import matplotlib.pyplot as plt import numpy as np dict = {'A': 40, ...

  7. ubuntu server 16.04(amd 64) 配置网桥,多网卡使用激活

    安装了Ubuntu16.04的server版本,结果进入系统输入ifconfig后发现,只有一个网卡enp1s0,还有一个网络回路lo,ifconfig -a 发现其实一共有四个网卡,enp1s0,e ...

  8. ubuntu 14.04 server 能ping通,但不能ssh

    ssh是一种安全协议,主要用于给远程登录会话数据进行加密,保证数据传输的安全,我们可以很方便的用ssh链接工具连接远程服务器进行相关操作,但是在享受这种方便的同时我们需要进行一些配置. 首先我们需要在 ...

  9. telnet不是内部或外部命令的解决方案

    telnet主要是为了维护使用,windows默认不打开这个功能,所有无法登陆 按照下面截图,可轻松打开telnet功能 点击控制面板 选择程序和功能 点击左上角打开 turn windows fea ...

  10. 解决在nginx+php环境下$_SERVER['PHP_SELF']获取不到值的问题

    Tp3.2. __APP__获取值不正确.$_SERVER['PHP_SELF']为空导致. 原来是php.ini的问题. sudo vim /usr/local/php/etc/php.ini 重启 ...