elasticsearch 将带有logstash的csv上载到带有新映射的elasticsearch,elasticsearch,logstash,elasticsearch,Logstash" /> elasticsearch 将带有logstash的csv上载到带有新映射的elasticsearch,elasticsearch,logstash,elasticsearch,Logstash" />

elasticsearch 将带有logstash的csv上载到带有新映射的elasticsearch

elasticsearch 将带有logstash的csv上载到带有新映射的elasticsearch,elasticsearch,logstash,elasticsearch,Logstash,我有一个csv文件,我正在尝试使用Logstash上传到ES。我的conf文件如下: input { file { path => ["filename"] start_position => "beginning" } } filter { csv { columns => ["name1", "name2", "name3", ...] separator => "," } } filter { mutate {

我有一个csv文件,我正在尝试使用Logstash上传到ES。我的conf文件如下:

input {
  file {
    path => ["filename"]
    start_position => "beginning"
  }
}

filter {
  csv {
    columns => ["name1", "name2", "name3", ...]
    separator => ","
  }
}

filter {
  mutate {
    remove_field => ["name31", "name32", "name33"]
  }
}

output {
  stdout{
    codec => rubydebug
}

elasticsearch {
  action => "index"
  host => "localhost"
  index => "newindex"
  template_overwrite => true
  document_type => "newdoc"
  template => "template.json"
  }
}
我的模板文件如下所示:

{
"mappings": {
    "newdoc": {
        "properties": {
            "name1": {
                "type": "integer"
            },
            "name2": {
                "type": "float"
            },
            "name3": {
                "format": "dateOptionalTime",
                "type": "date"
            },
            "name4": {
                "index": "not_analyzed",
                "type": "string"
            },
            ....
        }
     }
 },
  "settings": {
    "number_of_replicas": 0,
    "number_of_shards": 1
 },
 "template": "newindex"
 }
当我尝试覆盖默认映射时,即使只尝试写入一行,也会出现400错误:

failed action with response of 400, dropping action: ["index", + ... 
有什么问题吗?如果我不覆盖映射,一切都正常,但这不是我的解决方案。我在红帽上使用Logstash 1.5.1和Elasticsearch 1.5.0


谢谢

在将数据加载到elasticsearch之前,您应该将您的请求“映射”到elasticsearch


在运行logstash之前,您不需要创建索引,如果您还没有创建索引,它会创建索引,但最好在使用logstash运行conf文件之前创建自己的映射。使您能够更好地控制字段类型等。。下面是一个关于如何使用logstash将csv导入elasticsearch的简单教程:

在替换映射或为文档编制索引时会出现错误?也许完整的错误消息可以提供更多信息。Elasticsearch将删除与映射不兼容的邮件…@Alain您的评论让我思考,仔细查看后,我的一个日期字段格式不正确。我修改了ES日期格式,一切都按预期运行。