Splunk 搜索宏

 

搜索宏是可重复使用的搜索处理语言 (SPL) 块,您可以将其插入到其他搜索中。当您想对数据集中的不同部分或值动态使用相同的搜索逻辑时,将使用它们。它们可以动态接受参数,搜索结果将根据新值进行更新。

 

宏创建

要创建搜索宏,我们转到 设置→高级搜索→搜索宏→添加新。这将显示以下屏幕,我们开始创建宏。

Search Macro1

 

宏观场景

我们希望显示 web_applications 日志中有关文件大小的各种统计信息。统计信息是使用日志中的字节字段的文件大小的最大值、最小值和平均值。结果应显示日志中列出的每个文件的这些统计信息。

所以这里的统计数据类型本质上是动态的。 stats 函数的名称将作为参数传递给宏。

 

定义宏

接下来,我们通过设置各种属性来定义宏,如下面的屏幕所示。宏的名称包含(1),表示在搜索字符串中使用时,有一个参数要传递给宏。 fun 是在搜索查询中执行期间将传递给宏的参数。

Search Macro2

 

使用宏

要使用宏,我们将其作为搜索字符串的一部分。为参数传递不同的值时,我们会看到预期的不同结果。

考虑找出文件的平均大小(以字节为单位)。我们将 avg 作为参数传递并得到如下所示的结果。宏已作为搜索查询的一部分保留在 ` 符号下。

Search Macro3

同样,如果我们想要日志中每个文件的最大文件大小,那么我们使用 max 作为参数。结果如下图。

Search Macro4

 在 Splunk 搜索中,我们可以根据特定条件从数据集设计我们自己的事件。例如,我们只搜索 http 状态码为 200 的事件。此事件现在可以保存为用户定义名称为 status200 的事件类型,并将此事 ...