当前位置:  开发笔记 > 前端 > 正文

将通过logstash发送的每个日志附加到TTL字段到Elasticsearch

如何解决《将通过logstash发送的每个日志附加到TTL字段到Elasticsearch》经验,为你挑选了1个好方法。

简介:我想在logstash中附加一个带有日志的TTL字段,并将它们发送到Elastic搜索.

我已经阅读了文档,但由于不太清楚,因此无法获得大量文档.

这是我在logstash中的配置文件.

input {
  stdin {
    type => "stdin-type"
  }
}

output {
  stdout { debug => true debug_format => "json"}
  elasticsearch {}
}

现在假设对于每个读取的日志,我想附加一个TTL,比如5天.

我知道如何在弹性搜索中激活TTL选项.但是我必须在弹性搜索配置文件中做出哪些更改对我来说不是很清楚.文档要求查找映射文件夹,但弹性搜索下载文件夹中没有.

寻求专家帮助.



1> javanna..:

如果您想将映射放在文件系统上,请查看此处.您必须转到该config文件夹并在此处创建一个名为的文件夹mappings,另一个名称中包含索引名称mappings.由于logstash默认情况下每天创建一个索引_default,因此最好使用该文件夹的名称,以便映射将应用于所有索引.您在该文件夹下创建的文件必须具有要应用映射的类型的名称.我不记得logstash使用的确切类型,因此我将使用_default_映射定义.只需调用该文件_default_.json并将以下内容放入其中:

{
    "_default_" : {
        "_ttl" : { "enabled" : true }
    }
}

如您所见,该类型的名称必须同时出现在文件名和内容中.

否则,你可以避免把东西放在文件系统上.您可以创建包含自定义映射的索引模板,如下所示:

{
    "template" : "logstash-*",
    "mappings" : {
        "_default_" : {
            "_ttl" : { "enabled" : true }
        }
    }
}

然后,映射将应用于名称与模板模式匹配的所有索引.如果使用_default_映射定义,则映射将默认应用于将要创建的所有类型.

推荐阅读
郑小蒜9299_941611_G
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有