【发布时间】:2019-06-12 08:41:16
【问题描述】:
我正在从 fluent-amqp 插件发送日志,该插件添加了一个字段timestamp,格式为:
{
"key": "somekey",
"timestamp": 1547769614,
"payload": {
"log": "some logs",
"stream": "stdout"
}
}
但是,我无法在 Kibana 的时间选择器中选择时间戳字段以将其设置为 _time。
我试图从名为 timestamp 和 _timestamp 的设置中添加一个 metaField ,但没有成功,即使我可以选择它作为时间选择器,它没有在搜索页面中被解释,导致空日志。
有模板可以添加吗?要打勾的设置?还是我应该直接更新上游插件? 我使用的是 6.5.4 版本。
【问题讨论】:
-
可以分享一下你索引的映射吗?
-
当然。抱歉,JSON 无效。对于 3 个主要字段(
key、timestamp、payload)看起来像这样: { "myindex": { "mappings": { "-": { "properties": { "key": { "类型”:“文本”,“字段”:{“关键字”:{“类型”:“关键字”,“ignore_above”:256 } } },“有效负载”:{“属性”:{},“时间戳”: { "type": "long" } } } } } } -
是的,
timestamp的类型是long,而它应该是date。您需要更改映射并重新索引数据。您可能还需要在向其发送数据之前预先配置您的索引。 -
我应该在发送日志时从 fluentd 执行此操作,还是有办法在 Elasticserach 的任何新索引上自动转换该字段?
-
您使用的是 fluentd elasticsearch 插件?
标签: elasticsearch kibana kibana-6