1

这是我的日志文件中的行。我想获取所有没有 PAMapped 值的 searchTerms

2012-10-29 11:20:21,711 - searchTerm=speeding&location=Soperton%2C+GA&PAMapped=

这是我给的搜索。

index=savvis-varnish host="dell1000a-12" source="/flocal/logs/lawyers.findlaw.com/search-mapping.log" NOT PMapped=* early=-1mon@mon

但它不会返回所有实例。它只返回一个。

4

2 回答 2

3

我假设该PAMapped字段已被提取...

我将使用fillnull命令 ( docs ) 为该字段中的所有空值添加一个通用值。然后,这将允许对具有 NULL 值的字段进行更简单的过滤,就像在您的用例中一样。

例如,您可能可以执行以下操作:

index=savvis-varnish host="dell1000a-12" source="/flocal/logs/lawyers.findlaw.com/search-mapping.log" earliest=-1mon@mon | fillnull value=NULL PAMapped | search PAMapped=NULL

这可能不是最有效的搜索,但它可能会提供更好的扩展潜力。

您也可以尝试使用where命令来过滤结果(docs1docs2),类似以下内容可能会起作用:

index=savvis-varnish host="dell1000a-12" source="/flocal/logs/lawyers.findlaw.com/search-mapping.log" earliest=-1mon@mon | where isnull(PAMapped)

希望这可以帮助。

PS 您可以在 SplunkBase 官方 Splunk 论坛上找到更多有用和及时的回复。

于 2012-11-06T10:47:10.693 回答
0

试试这个查询:

index=savvis-varnish host="dell1000a-12" source="/flocal/logs/lawyers.findlaw.com/search-mapping.log" earliest=-1mon@mon | where isnull(PAMapped)

于 2017-02-23T18:53:42.013 回答