我想麋鹿堆棧,到目前爲止好:)ElasticSearch - 不設定日期型
我已經跑到怪現狀regardgin的解析日期字段,並把它發送到ElasticSearch。我設法解析這個字段,它真的是在ElasticSearch中創建的,但它總是以字符串結尾。 我嘗試了許多不同的組合。我也嘗試了許多不同的東西,人們建議,但我仍然失敗。
這是我的設置:
是來自Filebeat的字符串:
[2017年4月26日九時40分33秒] security.DEBUG:存儲安全令牌的會話。 {「key」:「securitysecured_area」} []
[2017-04-26 09:50:42] request.INFO:匹配的路線「home_logged_in」。 {「route_parameters」:{「controller」:「AppBundle \ Controller \ HomeLoggedInController :: showAction」,「locale」:「de」,「route」:「homelogged_in」},「request_uri」:「https://qa.someserver.de/de/home」} []
的logstash分析部:
if [@metadata][type] == "feprod" or [@metadata][type] == "feqa"{
grok {
match => { "message" => "%{TIMESTAMP_ISO8601:logdate}" }
}
date {
#timezone => "Europe/Berlin"
match => [ "logdate", "yyyy-MM-dd HH:mm:ss"]
}
}
根據該文件,我@timestamp場應與LOGDATE值覆蓋。但它沒有發生。
在ElasticSearch中,我可以看到字段logdate正在創建,它的值爲2017-04-26 09:40:33,但它的類型是字符串。
我總是從零開始創建索引,我先刪除它並讓logstash填充它。
我需要@timestamp覆蓋實際日期(而不是它被編入索引的日期),或者logdate字段是使用日期類型創建的。兩者都很好
[@metadata] [type]該類型正在設置與filebeat,所以我知道什麼索引來存儲日誌。感謝您的解釋:) –
根據這個討論:https://discuss.elastic.co/t/logstash-input-beat-not-receiving-metadata-field/40365/3它似乎沒有filebeat @metadata字段超過logstash – Alcanzar
在Filebeat中: - input_type:log path:mylog。日誌 document_type:feprod 發佈feprod作爲類型,我在Logstash中使用它來決定存儲數據的索引 –