我尝试更新我的索引模板以允许直接在 Elasticsearch 中的映射级别使用纪元和 ISO8601 日期格式,这应该覆盖 @timestamp 字段。到目前为止,我没有运气。我的模板可以在这里查看http://pastebin.com/1DCT6GfM。
本质上,一旦我解析了由 Logstash 解析的 json 日志,Elasticsearch 应该会识别这些字段并自动更新 @timestamp 字段。潜在日志事件的示例包括:
{"timestamp_epoch": "1432146610", "message": "This is a test message to test epoch timestamp events", "category": "testing", "country": "EU"}
或者
{"timestamp_iso8601": "2015-05-20T14:30:20-05:00", "message": "This is a test message to test epoch timestamp events", "category": "testing", "country": "US"}
请注意,该模板中的所有其他映射都可以正常工作,除了timestamp_epoch
和timestamp_iso8601
。我可以告诉这两个映射没有生效,因为@timestamp 没有更新到正确的值。
您可以在此处查看一些原始示例 Elasticsearch 条目:http: //pastebin.com/HmtmNNAb
timestamp_iso8601的类型正在更新为date
,但它没有覆盖 @timestamp 字段,并且timestamp_epoch设置为字符串而不是日期
如果有人能准确地澄清我做错了什么,我将不胜感激。
谢谢!