我正在尝试构建一个新的ELK项目。我是这里的新手,所以不确定我错过了什么。我正试图将非常巨大的日志移动到ELK,在这样做的同时,它在KV滤波器中超时,并出现错误";在KV滤波器中达到超时,值输入太大";。
我的日志存储格式如下:
grok {
match => [ "message", "(?<timestamp>%{MONTHDAY:monthday} %{MONTH:month} %{YEAR:year} % {TIME:time} [%{LOGLEVEL:loglevel}] %{DATA:requestId} (%{DATA:thread}) %{JAVAFILE:className}: %{GREEDYDATA:logMessage}" ]
}
kv {
source => logMessage"
}
有没有一种方法,当日志很大时,我可以跳过执行来通过kv过滤器?如果是的话,有人能指导我如何做到这一点吗。
谢谢
我尝试了很多方法,但似乎都不起作用。
我使用dissect解决了这个问题。
该查询大致如下:
dissect{
mapping => { "message" => "%{[@metadata][timestamp] %{[@metadata][timestamp] %{[@metadata][timestamp] %{[@metadata][timestamp] %{loglevel} %{requestId} %{thread} %{classname} %{logMessage}"
}