我正试图写一个古希腊人来分析我的日志。
使用logstash 7收集日志。但是经过多次尝试,我写grok失败了。
日志如下:
[2018-09-17 18:53:43]-biz_util.py [Line:55]-[ERROR]-[thread:14836]-[process:9504]-需要一个整数
我的Grok(假):
%{TIMESTAMP_ISO8601:log_time}-%{USERNAME:module} [Line:%{NUMBER:line_no}]-[%{WORD:level}]-[thread:%{NUMBER:thread_no}]-[过程: %{NUMBER:process_no}]-%{GREEDYDATA:log}
只有时间戳部分可以。其他人失败了。
答案 0 :(得分:1)
将起作用:
\[%{TIMESTAMP_ISO8601:log_time}\] - %{DATA:module} \[Line:%{NUMBER:line_no}\] - \[%{WORD:level}\]-\[thread:%{NUMBER:thread_no}\]-\[process:%{NUMBER:process_no}\] - %{GREEDYDATA:log}
您需要转义[
答案 1 :(得分:0)
这将起作用,
[%{TIMESTAMP_ISO8601:log_time}]%{NOTSPACE}%{USERNAME:module} [Line:%{BASE10NUM:Line}]%{NOTSPACE} [%{LOGLEVEL}]%{NOTSPACE} [thread:%{ BASE10NUM:thread}]%{NOTSPACE} [进程:%{BASE10NUM:process}]