logstash 创建索引的分步指南?

62o28rlo  于 2023-02-27  发布在  Logstash
关注(0)|答案(1)|浏览(169)

我正在寻找一个指南来创建一个索引在elasticsearch,但它不是那么简单的指南给出:
https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-create-index.html
我想做的事情看起来很简单,但我就是不能让它工作。现在,我希望我的索引是每日索引(与默认的logstash索引相同),但有一些变化。这些变化包括名称的变化和特定类型字段的特定Map。现在我知道我必须在logstash配置的output-elasticsearch部分指定:

index => "name-%{+YYYY.MM.dd}"

我找到的唯一信息是可以基于模板创建索引,我尝试创建模板,但仍然没有任何React。
创建模板时我使用了以下内容:

PUT _template/ids
{
"template": "ids-*", 
"order":    0, 
"settings": {
"index": {
  "number_of_shards": 5,
  "number_of_replicas": 1
},
"mappings": {
  "log": {
    "_all": {
      "enabled": true,
      "omit_norms": true
    },
    "properties": {
      "@timestamp": {
        "type": "date",
        "format": "strict_date_optional_time||epoch_millis"
      },
      "@version": {
        "type": "string",
        "index": "not_analyzed"
      },
      "field1": {
        "type": "string",
        "index": "not_analyzed"
      },
      "field2": {
        "type": "string",
        "index": "not_analyzed"
      },
vq8itlhq

vq8itlhq1#

对于有“一些变化”的每日指数,使用模板是很好的。
要检查群集中已设置哪些模板,请用途:

GET {es_url}/_template

要为群集设置新模板,请用途:

PUT {es_url}/_template/ids
{
"template": "ids-*", 
"order":    0, 
"settings": {
"index": {
  "number_of_shards": 5,
  "number_of_replicas": 1
},
"mappings": {
  "log": {
    "_all": {
      "enabled": true,
      "omit_norms": true
    },
    "properties": {
      "@timestamp": {
        "type": "date",
        "format": "strict_date_optional_time||epoch_millis"
      },
      "@version": {
        "type": "string",
        "index": "not_analyzed"
      },
      "field1": {
        "type": "string",
        "index": "not_analyzed"
      },
      "field2": {
        "type": "string",
        "index": "not_analyzed"
      }
    }
  }
}}}

要删除现有模板,请用途:

DELETE {es_url}/_template/{template_name}

如果您将“ids”模板设置为集群-任何将插入到集群的文档,使用匹配“ids-*”(aka“ids-123”,“ids-sheker”,“ids-2016.05.02”)的名称进行索引,将获得插入的ids模板的Map。

相关问题