机器数据分析平台

  • 机器数据分析平台 > 使用文档 > 搜索手册 > 搜索宏

    搜索宏

    最近更新时间: 2020-10-10 10:19:20

    对于搜索中需要重复使用的SPL语句,搜索宏功能支持将可复用的SPL语句封装为自定义命令,在其他搜索中可以直接使用,以简化SPL搜索语句。

    搜索宏可以定义为搜索语句的任意部分,例如一段eval表达式或者一个搜索项。在一些场景下您也可以为搜索宏指定变量,以及变量有效性表达式以校验提交的变量是否有效。

    例如,您可以定义搜索宏nginx_searchsourcetype="nginx" repo="nginx",在nginx相关搜索分析中可以复用这部分搜索,只需要在搜索语句中输入`nginx_search`即可。

    • 定义搜索宏
    • 使用搜索宏

    定义搜索宏

    1. 点击左侧菜单栏搜索分析-搜索宏进入搜索宏管理页面。

    2. 点击“+”创建搜索宏,进入配置搜索宏输入框,填写如下参数:

      • 输入搜索宏的名称。以字母开头,仅包含字母、数字、下划线。当定义的搜索宏中包含变量时,需要在搜索宏名称中添加变量个数。例如,搜索宏nginx_search包含1个变量,需要命名为 nginx_search(1)
      • 输入描述(可选),搜索宏的自定义描述内容。
      • 输入搜索语句,即在另一个搜索中引用搜索宏时实际扩展的SPL语句。如果搜索宏中包含了变量,则在搜索语句中必须将变量两边以“$”符标记。例如,sourcetype="nginx" repo="$arg$"$arg$是定义的搜索宏变量。
      • 输入变量(可选)。多个参数以“,”分隔。参数名称只能包含字母数字字符、下划线。
      • 输入验证表达式。当搜索宏中包含了变量,可以定义一个验证表达式以验证用户输入的变量有效性,验证表达式为计算结果为布尔值或字符串值的eval表达式。如果验证表达式计算结果为布尔值,则返回true时验证成功,返回false或null时验证失败。如果验证表达式不是布尔值,则返回null时验证成功,返回字符串时验证失败。
      • 输入验证错误信息(可选)。 定义当调用搜索宏时,输入的搜索宏变量验证失败时显示的验证错误消息。
    3. 点击确认后保存搜索宏。

    4. 您可以在搜索宏列表中查看已配置好的搜索宏命令,在使用时通过使用宏名称调用搜索宏。搜索宏列表展示如下信息:

      我们可以对搜索宏进行包括编辑、授权、复制、删除等操作。

      • 点击编辑按钮,您可以对已创建好的搜素宏的描述、搜索语句、参数、验证表达式、验证错误信息进行修改。
      • 点击授权按钮,您可以授予某个角色某个搜索宏的查看、编辑、授权、删除权限。
      • 点击复制按钮,您可以复制已有的搜索宏。
      • 点击删除按钮,您可以删除某个不需要的搜索宏。

    使用搜索宏

    在搜索中调用搜索宏时,您需要在搜索宏名称前后加上“ ` ”符号。在定义搜索宏时嵌套引用另一个搜索宏也使用同样的语法。例如,如果您有一个名为my_search_2(2)的搜索宏,则在搜索中引用方法如下:

    `my_search_2(309ccfd52708f308,7e513dbd51d74db5)` 
    

    注意:
    引号内的搜索宏不会被展开,例如repo="`nginx`"。
    如果搜索宏的变量包含引号,在搜索中使用搜索宏时需要转义引号。


    根据您的不同需求,搜索宏支持如下3种不同配置方式,您可以在搜索宏示例中查看到具体创建与使用方式:

    • 不包含参数的搜索宏。
    • 包含参数的搜索宏,配置验证表达式及验证错误信息。
    • 嵌套引用其他搜索宏的搜索宏。
    以上内容是否对您有帮助?
  • Qvm free helper
    Close