我一直在尝试解析从海狸发送到我的logstash索引器的rails日志条目。但是某些条目根本没有进入过滤器部分,而是以其原始状态出现在我的 kibana 仪表板上(即没有被提取的字段)。
beaver conf
path:[path to the log]
exclude:[.gz]
multiline_regex_before = ^\s+
multiline_regex_after = ^F
基本上任何以新行开头并带有 F 的内容都是多行条目。
logstash conf
input {
sqs{ ------parameters for the queue------- } }
filter {
grok {
match => ["message","%{NOTSPACE:level}, \[%{TIMESTAMP_ISO8601:timestamp} #%{POSINT:pid}\]%{SPACE}%{LOGLEVEL:event_level} -- %{GREEDYDATA:info}"] }
multiline {
pattern => ^F
what => next
negate => false
}
output {
elasticsearch_http {
host => "host
address" port "80" }
}
示例日志条目:
E, [2015-03-10T10:52:34.125841 #26480] ERROR -- : [1;32mDeface:[0m 'auth_shared_login_bar' matched 0 times with 'li#search-bar'</b>