elasticsearch grok模式从日志消息中提取数据,elasticsearch,logstash,logstash-grok,elasticsearch,Logstash,Logstash Grok" /> elasticsearch grok模式从日志消息中提取数据,elasticsearch,logstash,logstash-grok,elasticsearch,Logstash,Logstash Grok" />

elasticsearch grok模式从日志消息中提取数据

elasticsearch grok模式从日志消息中提取数据,elasticsearch,logstash,logstash-grok,elasticsearch,Logstash,Logstash Grok,最近,我开始分析麋鹿堆栈以进行日志处理。在这种情况下,我需要从日志消息中获取一些数据作为字段,以提高日志的效率。 日志消息示例: 05:25:11,405 DEBUG ClassName:? - Start of some data like ^Akey1=value1^Akey2=value2^Akey3=value3....keyN=valueN 如何使用grok将key2的值输入到字段中。我的尝试如下: %{TIME:timestamp}\s+%{LOGLEVEL:level}.*key

最近,我开始分析麋鹿堆栈以进行日志处理。在这种情况下,我需要从日志消息中获取一些数据作为字段,以提高日志的效率。 日志消息示例:

05:25:11,405 DEBUG ClassName:? - Start of some data like ^Akey1=value1^Akey2=value2^Akey3=value3....keyN=valueN
如何使用grok将key2的值输入到字段中。
我的尝试如下:

%{TIME:timestamp}\s+%{LOGLEVEL:level}.*key2.*
不确定如何保存键2的值
提前谢谢

如果您只想获得value2,可以使用:

%{TIME:timestamp}\s+%{LOGLEVEL:level}%{GREEDYDATA}key2=%{GREEDYDATA:key2}\^A

您可以在此处尝试:

是com.example.classname格式的类名,您需要问号吗谢谢alpert.如果value2是字母数字混合字符,则应该使用什么来代替WORD基本上键值对之间的分隔符由“^A”字符指定更新了我的答案。GREEDYDATA将匹配所有内容,直到^ait结束,包括key3=value3等等,直到结束。可能我提供的示例文本不是我看到的确切消息。因此,我将根据您的上述输入找出grok模式。但是,感谢您的解决方案。如果您需要进一步帮助,请发表意见