log4j2.properties 文件的更改导致 elasticsearch 失败

2024-02-22

我已经安装了elasticsearch(6.6.0)和CentOS 7。我想添加一些用于旋转日志的属性,例如大小为50MB的旋转和压缩。但是,如果我向 /etc/elasticsearch/log4j2.properties 文件添加更多配置并重新启动 elasticsearch 服务器,则会失败。

我当前的 log4j2.properties 文件:

status = error

# log action execution errors for easier debugging
logger.action.name = org.elasticsearch.action
logger.action.level = debug

appender.console.type = Console
appender.console.name = console
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] %marker%m%n

appender.rolling.type = RollingFile
appender.rolling.name = rolling
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
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
appender.rolling.policies.time.modulate = true

rootLogger.level = info
rootLogger.appenderRef.console.ref = console
rootLogger.appenderRef.rolling.ref = rolling

当我尝试添加时,正如elasticsearch文档中给出的那样,这是添加配置的方法,

appender.rolling.policies.size.size = 2MB
appender.rolling.strategy.action.condition.age = 3D
appender.rolling.strategy.action.type = Delete
appender.rolling.strategy.action.condition.type = IfFileName

它失败了error :

Exception in thread "main" org.apache.logging.log4j.core.config.ConfigurationException: No type attribute provided for component size
    at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationBuilder.createComponent(PropertiesConfigurationBuilder.java:333)
    at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationBuilder.processRemainingProperties(PropertiesConfigurationBuilder.java:347)
    at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationBuilder.createComponent(PropertiesConfigurationBuilder.java:336)
    at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationBuilder.processRemainingProperties(PropertiesConfigurationBuilder.java:347)
    at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationBuilder.createAppender(PropertiesConfigurationBuilder.java:224)
    at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationBuilder.build(PropertiesConfigurationBuilder.java:157)
    at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationFactory.getConfiguration(PropertiesConfigurationFactory.java:56)
    at org.apache.logging.log4j.core.config.properties.PropertiesConfigurationFactory.getConfiguration(PropertiesConfigurationFactory.java:35)
    at org.apache.logging.log4j.core.config.ConfigurationFactory.getConfiguration(ConfigurationFactory.java:244)
    at org.elasticsearch.common.logging.LogConfigurator$1.visitFile(LogConfigurator.java:105)
    at org.elasticsearch.common.logging.LogConfigurator$1.visitFile(LogConfigurator.java:101)
    at java.nio.file.Files.walkFileTree(Files.java:2670)
    at org.elasticsearch.common.logging.LogConfigurator.configure(LogConfigurator.java:101)
    at org.elasticsearch.common.logging.LogConfigurator.configure(LogConfigurator.java:84)
    at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:316)
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:123)
    at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:114)
    at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67)
    at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:122)
    at org.elasticsearch.cli.Command.main(Command.java:88)
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91)
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84)

我有一个warning在 /var/log/elasticsearch/elasticsearch_deprecation.log 中:

[2018-02-20T02:09:32,694][WARN ][o.e.d.e.NodeEnvironment  ] ES has detected the [path.data] folder using the cluster name as a folder [/data/es], Elasticsearch 6.0 will not allow the cluster name as a folder within the data path

谁能解释一下如何将配置添加到 log4j2.properties 文件中?


由于日志表明您失踪了type尺寸配置的属性。你也失踪了type属性为RolloverStrategy.

尝试以下配置 -

appender.rolling.policies.size.type = SizeBasedTriggeringPolicy
appender.rolling.policies.size.size = 2 MB

appender.rolling.strategy.type = DefaultRolloverStrategy
appender.rolling.strategy.action.type = Delete
appender.rolling.strategy.action.basePath = ${sys:es.logs.base_path}${sys:file.separator}
appender.rolling.strategy.action.maxDepth = 1
appender.rolling.strategy.action.ifLastModified.type = IfLastModified
appender.rolling.strategy.action.ifLastModified.age = 3d
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

log4j2.properties 文件的更改导致 elasticsearch 失败 的相关文章

随机推荐

  • 如何在不修改java.security文件的情况下在Java 8中启用SSLv3?

    在 JDK 8 中 默认情况下禁用 SSLv3 并启用 TLSv1 2 当我谷歌时 我发现很多帖子都通过注释掉以下行来启用 SSLv3java securitylib 文件夹中的文件 我想通过设置系统属性来启用 SSLv3 而不需要修改 j
  • 如何获取枚举条目的名称?

    我想迭代 TypeScript 枚举对象并获取每个枚举符号名称 例如 枚举 myEnum 条目 1 条目 2 for var entry in myEnum use entry s name here e g entry1 尽管已经给出了答
  • 类型错误:无法读取未定义的属性“prepareStyles”

    My Component好像 import React PropTypes from react import TransactionListRow from TransactionListRow import Table TableBod
  • Laravel 用户有权访问某些页面吗?

    我创建了一个 slug 页面 如下所示 Create pages table for dynamic pages id slug title page template 0 about about us about blade 1 cont
  • 使用 jQuery 调整父元素的高度以匹配其可见子元素的高度

    我有一个在容器中运行的幻灯片 需要容器的高度与可见幻灯片的高度相匹配 不幸的是 这些图像是绝对定位的 我对此无能为力 为了解决这个问题 我使用了一些 jQuery 魔法来处理相同的功能 由于某种原因 我的代码无法正常工作 每当 contai
  • 有没有JavaScript静态分析工具? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 当我做了一些愚蠢的事情 例如变量名拼写错误 时 我习惯于让编译器抱怨 但 JavaScript 习惯于让
  • 为什么我不能直接将 document.getElementById 分配给不同的函数?

    所以我试图定义一个类似于 document getElementById 的函数 g 以下工作正常 var g function id return document getElementById id 但为什么这个更直接的代码不起作用呢
  • dplyr:mutate 内的整数采样

    我正在尝试在中生成一列tbl df这是一个 0 或 1 的随机整数 这是我正在使用的代码 library dplyr set seed 0 Dummy data frame to test df lt tbl df data frame x
  • 设置 Yii2 预览

    Yii2 预览版最近发布 可在github https github com yiisoft yii2 我想对其进行试驾 但到目前为止 文档 几乎立即就过时了 因为它仍在大量开发中 我曾尝试遵循本指南 http www yiiframewo
  • 无法刷新状态存储

    我正在尝试在 Kafka Streams 中创建一个 leftJoin 它对于大约 10 条记录工作正常 然后由于以下原因导致异常崩溃 NullPointerException用这样的代码 private static KafkaStrea
  • 如何在eclipse中同时调试两个项目?

    我有两个项目 consle 和 android 项目 我想比较变量的值 因为相同的代码 正如我认为的 给出了不同的结果 我必须找到错误 如果我按 F6 按钮 状态只会在一个项目中发生变化 是否可以即时切换调试项目 在两个项目中放置断点并以调
  • 尝试使用类型族来消除具有灵活上下文的重叠实例时出错

    我试图在我正在使用的类型的类型参数上使用一些相当复杂的条件来定义类型类的实例 并且认为一个有用的方法是声明一个封闭的类型系列 该系列在我定义的实例之间进行选择 不幸的是 我根本无法让这个想法发挥作用 因为 GHC 抱怨这些实例是重复的 这是
  • grails-app/utils 目录

    我刚刚注意到的存在grails app utils目录 我从未在任何文档中看到过它 或在项目中使用过 它是在运行时默认创建的create app 知道你应该在那里放什么吗 实用程序 代码是一个明显的猜测 但似乎应该放在src dir 谢谢
  • 扩展 JavaScript 字符串中的 ${var} 引用 [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 学习一些超越普通 JavaScript 的东西 我正在读的书告诉我这样的说法 let someVar Happy console
  • 从R中的矩阵中删除对角线元素

    如何使用 R 从矩阵 L 中删除对角元素 diagL 我尝试使用以下内容 subset L select diag L or subset L select c diag L 但我得到了 0 个号码 R 编程语言 我更喜欢C 它更容易拼写
  • 带有事务的 SourcePollingChannelAdapter

    我想使用 SourcePollingChannelAdapter 来实现轮询时需要事务传播 以便在发生错误时回滚所有操作 setTransactionSynchronizationFactory 方法没有注释 非常感谢你的帮助 在 XML
  • Kendo UI 参考在 Razor 视图中不起作用

    我正在尝试创建 Telerik 网格视图 但是当我去参考剑道时它无法识别它 当我尝试引用剑道时 Visual Studio 给出错误 这是代码 Html Kendo Grid 下面是错误 System Web Mvc HtmlHelper
  • MongoDB 的插入安全模式有多安全?

    我正在开发一个项目 其中包含一些重要数据 这意味着如果灯或服务器出现故障 我们不会丢失任何数据 我们使用 MongoDB 作为数据库 我想确保插入后我的数据位于数据库中 如果未插入一个元素 则回滚整个批次 我知道 Mongo 背后的理念是我
  • 在 JCuda 中加载多个模块不起作用

    在jCuda中 可以将cuda文件加载为PTX或CUBIN格式并调用 启动 global 来自 Java 的函数 内核 考虑到这一点 我想使用 JCuda 开发一个框架来获取用户的 device 函数在一个 cu文件在运行时加载并运行它 我
  • log4j2.properties 文件的更改导致 elasticsearch 失败

    我已经安装了elasticsearch 6 6 0 和CentOS 7 我想添加一些用于旋转日志的属性 例如大小为50MB的旋转和压缩 但是 如果我向 etc elasticsearch log4j2 properties 文件添加更多配置