自從幾周以來,我已開始解決ELK tool stack
問題。我需要的是獲取包含日期和時間的日誌事件的timestamp
,並將其顯示在不同的字段(即:log_timestamp)中。我試過把所有可用的DateStamp選項都拉出來,但是沒有成功。如何在Logstash中將yyyymmdd格式化爲yyyy-mm-dd?
這是我的日誌文件的一行:
「20160805 00:00:01.296,GetProvisioning,3,W1oOOW8oj58GhglVjVNg0Ssl4CXA1P,50219--1958335734-1470326399706,成功,GetProvisioningTransactionId-01223,空, W1oOOW8oj58GhglVjVNg0Ssl4CXA1P,恩,CELCOM_MY_DCB 「
我需要的日誌事件的日期格式yyyy-mm-dd
,因爲我無法使用‘日期’神交過濾器。或者有什麼方法可以用上面的yyyymmdd
日期格式過濾出來?
編輯: 我在此附上我的個性化圖案和logstash conf
的過濾器部分。
圖案我使用其中:LOGTIMESTAMP%{YEAR}%{MONTHNUM}%{MONTHDAY}
過濾標準在logstash CONF:
filter {
grok {
patterns_dir => ["/home/chamith/work/ELK/logstash/logstash-2.3.4/bin/patterns"]
match => { "message" => "%{GREEDYDATA} %{LOGTIMESTAMP:logtimestamp}" }
}
mutate {
add_field => {
"timestamp" => "%{LOGTIMESTAMP}"
}
remove_field => ["logtimestamp"]
}
date {
match => ["logtimestamp", "yyyyMMdd HH:mm:ss"]
target => "logtimestamp"
}
}
和Kibana輸出:
任何幫助,將不勝感激。
所以你想讓你的'20160805 00:00:01.296'時間戳記作爲這個事件的logstash時間戳嗎? – Fairy
是的,我需要上面的時間戳爲'2016-08-05 00:00:01.296' – Kulasangar