我试图在归档时间戳上显示以下数据。我不确定为什么我的日期和时间都没有被解析。根据我的grok调试器,它工作正常。
http://i.stack.imgur.com/GDFAy.png
示例输入:
[15/06/02@11:05:31.233-0700] P-007158 T-4131301152 2 WS 4GLTRACE Run htmAssociate "vsess vsess 1349" [htmOffsets - dpa/setup/vsysadv.w @ 9563]
配置文件
input {
file {
path => "/Users/philipp/Documents/Performance/ProductionMetrics/4gltrace_logs/4gltrace_log_bstash.txt"
start_position => beginning
}
}
filter {
grok {
match => ["message", "\[%{DATE}@%{TIME}-%{INT:TIMEZONE}] %{NOTSPACE:PID} % {NOTSPACE:T} %{INT:NUM} %{WORD:WS} %{WORD:4GLTRACE} %{GREEDYDATA} \[%{DATA:PROGRAM}]"]
}
}
output {
elasticsearch { host => localhost protocol => "http" port => "9200" }
stdout { codec => rubydebug }
}
我确信这是一个愚蠢的疏忽但不确定它在哪里。任何帮助表示赞赏。
答案 0 :(得分:0)
您需要使用logstash中的date{} filter从事件中获取字段,并将@timestamp替换为该值。
如果您有一个名为my_timestamp
的字段,其格式如下:
date {
match => [ 'my_timestamp', "dd/MMM/yyyy:HH:mm:ss Z" ]
remove_field => [ 'my_timestamp' ]
}