splunk排除基于json属性的结果

问题描述

当我使用此搜索运算符search "response.header.status"!=200时,splunk将仅包含存在response.header.status路径的结果。

因此,此处的搜索参数隐式地强制要求该属性的存在,而不管其值是什么

是否有搜索的变体,可以根据路径的值排除结果,但如果路径不存在,仍然包括结果?

解决方法

构造foo != bar的意思是“显示事件,其中“ foo”字段没有值“ bar”。这意味着“ foo”字段必须存在。

要查找“ foo”字段不存在或具有“ bar”以外的值的事件,请使用以下非直观搜索:

search NOT "response.header.status" = 200