몇 주 전부터 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 날짜 "grok 수 필터"나는를 사용할 수없는 때죠
내가,yyyy-mm-dd
로 로그 이벤트의 날짜를 포맷해야합니다. " 아니면 위의
yyyymmdd
날짜 형식으로 필터링 할 수있는 방법이 있습니까?
편집 : 은 본인은 내 사용자 정의 패턴과 logstash conf
의 필터 부분을 부착하고있다. I가 사용하고
패턴 : 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"
}
}
와 키바의 출력 :
어떤 도움
주시면 감사하겠습니다.
그래서이 이벤트의 로그 샷 타임 스탬프로'20160805 00 : 00 : 01.296' 타임 스탬프를 사용하고 싶습니까? – Fairy
예, 위의 타임 스탬프를'2016-08-05 00 : 00 : 01.296' – Kulasangar