「Elasticsearch」- 修改日志配置

  CREATED BY JENKINSBOT

官方文档简记(学习笔记)

官方文档链接:Elasticsearch Reference [7.7] » Set up Elasticsearch » Configuring Elasticsearch » Logging configuration

使用 Log4j 2 记录,可以使用 /etc/elasticsearch/log4j2.properties 配置文件。

可以使用以下三个选项:${sys:es.logs.base_path}, ${sys:es.logs.cluster_name}, ${sys:es.logs.node_name}

官方文档给出配置示例,并解释配置含义

日志归档压缩类型:
可以修改配置以使用不同的日志压缩类型,即轮转产生的日志归档文件使用何种格式压缩

保留特定时间内的日志:
如果想保留特定时间内的日志,可以使用 DefaultRolloverStrategy 配置,参考官方文档说明。

多个配置文件:
可以使用多个日志文件,它们会被自动合并,只要在 Elasticserch 配置目录或其子目录。

配置文件格式:
配置文件的 logger 部分设置 Java 包的日志等级;配置文件的 appender 部分设置日志的写入位置;

修改 Log4j 2 配置:
详细配置信息需要参考 Log4j 2 官方文档:Log4j documentation

设置日志等级:
官方文档给出四种方式来设置日志等级。

弃用功能的日志:
如果某个特性已经被弃用,当启用弃用日志(deprecation logging)将显示已经弃用的功能。

使用 JSON 格式:
日志文件可以使用 JSON 格式存储,以易于解析。

保留特定时间内的日志

appender.rolling.strategy.type = DefaultRolloverStrategy
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 = IfLastModified
appender.rolling.strategy.action.condition.nested_condition.age = 7D

注意事项,配置行的结尾不能有空格,否则重启服务时会提示错误。

参考文献

Elasticsearch Reference [7.7] » Set up Elasticsearch » Configuring Elasticsearch » Logging configuration
Elasticsearch Reference [6.3] » Set up Elasticsearch » Configuring Elasticsearch » Logging configuration