Макросы поиска — это многократно используемые блоки языка обработки поиска (SPL), которые можно вставить в другие поисковые запросы. Они используются, когда вы хотите использовать одну и ту же логику поиска для разных частей или значений в наборе данных динамически. Они могут принимать аргументы динамически, и результат поиска будет обновляться в соответствии с новыми значениями.
Создание макроса
Чтобы создать макрос поиска, перейдем в настройки → Расширенный поиск → Поиск макросов → Добавить новый . Это поднимает экран ниже, где мы начинаем создавать макрос.
Макросценарий
Мы хотим показать различную статистику о размере файла из журнала web_applications . Статистика о максимальном, минимальном и среднем значении размера файла с использованием поля байтов в журнале. Результат должен отображать эту статистику для каждого файла, указанного в журнале.
Таким образом, тип статистики носит динамический характер. Имя функции stats будет передано в качестве аргумента в макрос.
Определение макроса
Далее мы определяем макрос, устанавливая различные свойства, как показано на экране ниже. Имя макроса содержит (1), что указывает на наличие одного аргумента, передаваемого в макрос, когда он используется в строке поиска. fun — это аргумент, который будет передан макросу во время выполнения поискового запроса.
Использование макроса
Чтобы использовать макрос, мы делаем его частью строки поиска. При передаче разных значений аргумента мы видим разные результаты, как и ожидалось.
Попробуйте найти средний размер в байтах файлов. Мы передаем avg в качестве аргумента и получаем результат, как показано ниже. Макрос был сохранен под `sign как часть поискового запроса.
Точно так же, если мы хотим максимальный размер файла для каждого из файлов, присутствующих в журнале, то мы используем max в качестве аргумента. Результат как показано ниже.