如何在Graylog中实现文本部分匹配搜索?
字符串字面量中通配符无效的解决办法
要实现文本的部分匹配,获取所有包含.pdf的日志,你可以试试这几种方案:
去掉双引号直接使用通配符
双引号会强制触发精确匹配,导致通配符失效。去掉双引号后,通配符*就能正常工作,完整查询语句:source: org.*.application-* AND *.pdf这个写法会匹配所有以
.pdf结尾的内容。使用正则表达式匹配
如果你的查询工具支持正则语法(比如Splunk、ELK等),可以用正则来实现更灵活的匹配:source: org.*.application-* AND regex=".*\.pdf"其中
.*匹配任意长度的任意字符,\.是转义后的点(避免被当作正则通配符),能匹配所有包含.pdf的日志内容。用内置函数检查内容包含
部分日志查询工具提供了内容检查函数(比如Splunk的contains),可以直接判断原始日志里是否包含目标字符串:source: org.*.application-* AND contains(_raw, ".pdf")_raw指代原始日志内容,这个写法会匹配所有带有.pdf的日志,不管.pdf在内容里的哪个位置。
内容的提问来源于stack exchange,提问作者Braden Borman
相关产品推荐
相关产品推荐

