我已经配置了流利和弹性搜索,他们都工作正常。我正在拖尾文件然后读取它的数据并将其发布到elasticsearch。以下是json数据:
{"time": "2018-05-14T11:37:30.339593", "Data count": 78, "Data status": "Sent", "DataId": "332"}
及以下是流利的配置文件:
<source>
@type tail
time_key time
path /home/user/file.json
format json
tag first
</source>
<match *first*>
@type elasticsearch
hosts 192.168.196.118:9200
user <username>
password <password>
index_name myindex
type_name mytype
id_key 100
time_key time
</match>
在上面的配置文件中,我添加了time_key
,因为时间是我想要从json数据中使用的时间。但是我在elasticsearch
中收到的数据不包含任何时间数据。
另外,我使用的是id_key
,但在弹性搜索中,id_key是一些随机值。
请帮忙。感谢
答案 0 :(得分:2)
我解决了这个问题。我没有在配置文件中添加任何额外的东西。我只是选择时间作为elasticsearch中的时间字段。
答案 1 :(得分:1)
尝试注入您想要的值:
<inject>
time_key @log_time
time_format %Y%m%dT%H%M%S%z
</inject>
按照以下说明操作:https://docs.fluentd.org/v1.0/articles/inject-section