环境准备
- Elasticsearch和Logstash版本:5.6.9
- Elasticsearch单机或集群,参考《Elasticsearch5.6.9-elasticsearch集群安装为windows服务》
- Logstash客户端,参考《Elasticsearch5.6.9-windows下安装logstash》
json格式的数据,去json数据生成网站生成的json格式的数据。生成的数据不能直接使用,需要手动加工一下,我已经加工好了,可以点击下载数据
补充:第4点有个坑,json格式的数据末尾需要有回车换行符,否则只能读一条数据。
导入数据
- json.conf配置文件
#读取json文件
input{
file{
#设置json文件路径
#指定单一文件,填写绝对路径
path => "D:\downloadsoftware\elasticsearch\jsonData\generated.json"
#指定数组文件,填写绝对路径
#path => ["D:\downloadsoftware\elasticsearch\jsonData\generated1.json","D:\downloadsoftware\elasticsearch\jsonData\generated2.json","D:\downloadsoftware\elasticsearch\jsonData\generated3.json"]
start_position=>"beginning"
sincedb_path=>"/dev/null"
#设置编码
codec=>json{
charset=>"UTF-8"
}
}
}
#过滤格式化数据阶段
filter {
mutate {
#删除无效的字段
remove_field=>["@version","@timestamp","host","path","message"]
}
}
#数据输出到ES阶段
output{
#日志输出格式,json_lines;rubydebug等
stdout{
codec => rubydebug
}
elasticsearch {
#es地址ip端口
hosts => "127.0.0.1:9200"
#索引
index => "logstashjsontest"
#类型
document_type => "doc"
}
}
脚本文件importGenerated.bat
下面统一填写绝对路径D:\downloadsoftware\elasticsearch\logstash-5.6.9\bin\logstash.bat -f D:\downloadsoftware\elasticsearch\jsonData\json.conf
json格式的文件generated.json放在json.conf配置文件指定的path目录
运行脚本importGenerated.bat,即可导入数据