Splunk 子搜索


当次要或内部查询的结果是主要或外部查询的输入时,子搜索是常规搜索的一种特殊情况。它类似于 SQL 语言中子查询的概念。在 Splunk 中,主查询应该返回一个可以输入到外部或辅助查询的结果。

当搜索包含子搜索时,首先运行子搜索。在主搜索中,子搜索必须用方括号括起来。

例子


我们考虑从 Web 日志中查找具有最大字节大小的文件的情况。但这可能每天都不一样。然后我们只想找到文件大小等于最大大小并且是星期天的那些事件。

创建子搜索

我们首先创建子搜索以查找最大文件大小。我们使用函数 Stat max 以名为 bytes 的字段作为参数。这标识了运行搜索查询的时间范围内文件的最大大小。

下图显示了该子搜索的搜索和结果:

Subsearch_1

添加子搜索

接下来,我们通过将子搜索放在方括号内,将子搜索查询添加到主查询或外部查询。搜索子句也被添加到子搜索查询中。

Subsearch_2

如我们所见,结果仅包含文件大小等于通过考虑所有事件找到的最大文件大小的事件,并且事件日是星期日。