Skip to content

用Logstash导入json文件到Elasticsearch #10

Open
@Shellbye

Description

@Shellbye

安装所需软件

ES的安装参考这里 #5 ,Logstash的安装参考这里 #7

Json文件

注意这里有一个问题需要注意一下,就是如果你一直在尝试导入一个(比较小的)文件(就像我在这个demo中做的),那么logstash后面就不会继续去导入了,因为logtash会通过sincedb_path所指定的位置去记录当前文件的导入位置,如果你已经导入完成了,那么后续再导入就不会执行了(别问我怎么知道的😂)。

shellbye@localhost:~$ cat data.txt
{"qus": "xyz", "ocr": "xxx", "name": "o001"}
{"qus": "xyz", "ocr": "xxx", "name": "o002"}
{"qus": "xyz", "ocr": "xxx", "name": "o003"}
{"qus": "xyz", "ocr": "xxx", "name": "o004"}

Logstash配置文件

input {
  file {
    path => "/home/shellbye/data.txt"
    discover_interval => 1
    start_position => "beginning"
  }
}

filter {
    json{
        source => "message"
    }
}


output {
    elasticsearch {
        index => "demo_index001"
        hosts => ["localhost:9200"]
    }
}

执行

/path/to/bin/logstash -f /home/shellbye/f.conf

Metadata

Metadata

Assignees

No one assigned

    Labels

    ELKElasticsearch/Logstash/Kibana

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions