Перейти к основному содержимому
Версия: 5.1

fields

Описание

Осуществляет фильтрацию выводимых полей. Позволяет добавить поля в запрос или исключить из него. Поддерживает wildcard.

Синтаксис

fields <filter-options> <field-list>

Обязательные аргументы

ПараметрСинтаксисОписание
<field-list><field>* [, <field>*]Список полей для фильтрации. Поддерживает wildcard.

Опциональные аргументы

ПараметрСинтаксисПо умолчаниюОписание
<filter-options>(+|-)++ указатель на то, что перечисленные поля должны остаться, - указатель на то, что перечисленные поля должны быть убраны из результата.
подсказка

Указатель + можно не указывать.

Примеры запросов

Пример 1

В данном примере network_indexes содержит информацию о сетевых событиях.

Фильтрация выводимых полей

В результате выполнения данного запроса будут выведены поля event.code и observer.hostname.

Пример №1
source network_indexes
| fields event.code, observer.hostname

Результат фильтрации выводимых полей


Пример 2

В данном примере food_orders содержит информацию о заказах.

Фильтрация выводимых полей

В результате выполнения данного запроса будут выведены все поля type и operation_status. Поле type заключено в кавычки, чтобы интерпретатор правильно распознал имя поля.

Пример №2
source food_orders
| fields - 'type', operation_status

Результат фильтрации выводимых полей


Пример 3

В данном примере winevents содержит информацию о журналах событий Windows.

Фильтрация выводимых полей

В результате выполнения данного запроса будут выведены все поля, которые начинаются с event и имеют вхождение target.

Пример №3
source winevents
| fields event*, *target*

Результат фильтрации выводимых полей


Пример 4

В данном примере web_indexes содержит информацию о сетевых запросах к веб-серверу. Команда table формирует табличный вывод с указанными полями. Далее команда eval вычисляет размер тела ответа http.response.body.bytes в килобайтах и сохраняет в новое поле kbytes так же в табличный вывод.

Пример №4
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@timestampurl.path
102025-05-30T17:42:39.729492Z/walk/stove
452025-05-30T17:41:53.013623Z/drink.jpg
92025-05-30T17:41:06.937597Z/fuel
122025-05-30T17:42:24.324308Z/quilt
472025-05-30T17:38:23.999864Z/drink.ico

Пример 5

В данном примере используется wildcard для исключения всех полей, начинающихся с event.:

Пример №5
source radius_logs
| fields - event.*