fields
Описание
Осуществляет фильтрацию выводимых полей. Позволяет добавить поля в запрос или исключить из него. Поддерживает wildcard
.
Синтаксис
fields <filter-options> <field-list>
Обязательные аргументы
Параметр | Синтаксис | Описание |
---|---|---|
<field-list> | <field>* [, <field>*] | Список полей для фильтрации. Поддерживает wildcard . |
Опциональные аргументы
Параметр | Синтаксис | По умолчанию | Описание |
---|---|---|---|
<filter-options> | (+|-) | + | + указатель на то, что перечисленные поля должны остаться, - указатель на то, что перечисленные поля должны быть убраны из результата. |
Указатель +
можно не указывать.
Примеры запросов
Пример 1
В данном примере network_indexes
содержит информацию о сетевых событиях.
В результате выполнения данного запроса будут выведены поля event.code
и observer.hostname
.
source network_indexes
| fields event.code, observer.hostname
Пример 2
В данном примере food_orders
содержит информацию о заказах.
В результате выполнения данного запроса будут выведены все поля type
и operation_status
. Поле type
заключено в кавычки, чтобы интерпретатор правильно распознал имя поля.
source food_orders
| fields - 'type', operation_status
Пример 3
В данном примере winevents
содержит информацию о журналах событий Windows.
В результате выполнения данного запроса будут выведены все поля, которые начинаются с event
и имеют вхождение target
.
source winevents
| fields event*, *target*
Пример 4
В данном примере web_indexes
содержит информацию о сетевых запросах к веб-серверу. Команда table
формирует табличный вывод с указанными полями. Далее команда eval
вычисляет размер тела ответа http.response.body.bytes
в килобайтах и сохраняет в новое поле kbytes
так же в табличный вывод.
source web_indexes
| table @timestamp, user.name, user_agent.name, url.path, http.response.status_code, http.response.body.bytes
| eval kbytes=if(isnull(http.response.body.bytes), "-", round(http.response.body.bytes/1024))
Наконец, команда fields
фильтрует итоговый набор полей, исключая из таблицы поля http.response.body.bytes
и поля, попадающие под шаблон wildcard *status*
и user*
.
| fields - http.response.body.bytes, *status*, user*
Результатом выполнения запроса может быть следующая таблица:
kbytes | @timestamp | url.path |
---|---|---|
10 | 2025-05-30T17:42:39.729492Z | /walk/stove |
45 | 2025-05-30T17:41:53.013623Z | /drink.jpg |
9 | 2025-05-30T17:41:06.937597Z | /fuel |
12 | 2025-05-30T17:42:24.324308Z | /quilt |
47 | 2025-05-30T17:38:23.999864Z | /drink.ico |
Пример 5
В данном примере используется wildcard для исключения всех полей, начинающихся с event.
:
source radius_logs
| fields - event.*