Содержание
- Фильтрация и поиск событий
- Выбор хранилища
- Формирование SQL-запроса с помощью конструктора
- Создание SQL-запроса вручную
- Сохранение истории запросов
- Работа с сохраненными поисковыми запросами
- Фильтрация событий по периоду
- Группировка событий
- Отображение названий вместо идентификаторов
- Пресеты
- Ограничение сложности запросов в режиме расследования алерта
- Сохранение и выбор конфигураций фильтра событий
- Удаление конфигураций фильтра событий
- Поддерживаемые функции ClickHouse
- Просмотр информации о событии
- Экспорт событий
- Настройка таблицы событий
- Обновление таблицы событий
- Получение статистики по событиям в таблице
- Просмотр информации о корреляционном событии
- Формирование SQL-запроса с помощью SQL-функций KUMA
Фильтрация и поиск событий
По умолчанию в разделе События веб-интерфейса KUMA данные не отображаются. Для просмотра событий в поле поиска нужно задать SQL-запрос и нажать на кнопку Выполнить запрос. SQL-запрос можно ввести вручную или сформировать с помощью конструктора запросов.
В SQL-запросах поддерживается агрегирование и группировка данных.
Вы можете осуществлять поиск событий по нескольким хранилищам. Например, таким образом вы можете выполнять поиск событий, чтобы определить, где учетная запись блокируется, или на какой URL с каких IP-адресов был выполнен вход. Пример запроса для поиска событий заблокированной учетной записи:
SELECT * FROM `events` WHERE DestinationUserName = 'username' AND DeviceEventClassID = '4625' LIMIT 250
Чтобы выполнить поиск событий по нескольким хранилищам, в разделе События в раскрывающемся списке в верхней правой части раздела установите флажки рядом с нужными хранилищами.
В списке отображаются следующие хранилища:
- Хранилища тенанта Main.
- Доступные хранилища тенантов, для которых выполняется одно из следующих условий:
- Тенант, которому принадлежит хранилище, включен в фильтре тенантов и у пользователя есть права на чтение событий в этом тенанте.
- У пользователя есть доступ к тенанту одной из партиции хранилища и права на чтение событий в этом тенанте.
Например, если у вас есть доступ к тенанту коллектора, но нет доступа к тенанту хранилища, по умолчанию хранилище недоступного тенанта не отображается в списке доступных хранилищ. Если в коллектор доступного вам тенанта добавлена точка назначения в хранилище недоступного вам тенанта, после того как в партицию тенанта коллектора поступило событие, хранилище недоступного тенанта появится в списке хранилищ в разделе События.
В поле раскрывающего списка хранилищ в верхней правой части раздела События отображается название первого из выбранных хранилищ и количество выбранных хранилищ, их несколько. Вы можете навести курсор мыши на поле раскрывающегося списка, чтобы отобразить все выбранные хранилища. Если пространство в хранилище удалено, в раскрывающемся списке хранилищ отображается deleted<идентификатор удаленного пространства>, события доступны для поиска в течение срока TTL.
Тенанты, выбранные в фильтре тенантов, влияют на то, какие хранилища отображаются в раскрывающемся списке хранилищ. Если в фильтре тенантов вы выключите тенанты, хранилища которых вам доступны, эти хранилища не будут отображаться в раскрывающемся списке хранилищ. Если эти хранилища были выбраны в раскрывающемся списке хранилищ, флажки напротив них будут сняты и события из этих хранилищ не будут отображаться. Если в раскрывающемся списке хранилищ выбрано только одно хранилище не из Main тенанта и в выборе тенантов вы выключили тенант, к которому принадлежит выбранное хранилище, это хранилище не будет отображаться в списке хранилищ и KUMA автоматически изменит выбор на одно из хранилищ тенанта Main.
Допускается простой запрос по всем выбранным хранилищам, как в примере выше. Если при выполнении запроса недоступно хотя бы одно из выбранных хранилищ, KUMA вернет ошибку.
Ограничения для поиска событий по нескольким хранилищам:
- При выполнении запроса к нескольким хранилищам недоступен экспорт в TSV, ретроспективная проверка и запросы REST API.
- В SELECT могут быть только * и/или названия полей события. Алиасы, функции, выражения не допускаются.
- В ORDER BY могут быть также только поля события (без функций, констант или выражений). Если такого поля нет в списке полей SELECT, то поле будет добавляться автоматически при отправке на конкретный кластер. ORDER BY ClusterID задать невозможно.
- GROUP BY недоступно.
Сложные запросы с группировками и агрегацией допускаются для одного выбранного хранилища.
Вы можете добавить условия фильтрации в уже сформированный SQL-запрос в окне просмотра статистики, таблицы событий и области деталей событий:
- Изменение запроса из окна статистики
- Изменение запроса из таблицы событий
- Изменение запроса из области деталей события
После изменения запроса все параметры запроса, включая добавленные условия фильтрации, переносятся в конструктор и строку поиска.
Параметры запроса, введенного вручную в строке поиска, при переключении на конструктор не переносятся в конструктор: вам требуется создать запрос заново. При этом запрос, созданный в конструкторе, не перезаписывает запрос, введенный в строке поиска, пока вы не нажмете на кнопку Применить запрос в окне конструктора.
В поле ввода SQL-запроса можно включить отображение непечатаемых символов.
События можно также фильтровать по временному периоду. Результаты поиска можно автоматически обновлять.
Конфигурацию фильтра можно сохранить. Существующие конфигурации фильтров можно удалить.
Функции фильтрации доступны пользователям всех ролей.
При обращении к некоторым полям событий с идентификаторами KUMA возвращает соответствующие им названия.
Подробнее об SQL см. в справке ClickHouse. Также об SQL-операторах и функциях, поддерживаемых в KUMA, см. использование операторов в KUMA и поддерживаемые функции.
Выбор хранилища
События, которые отображаются в веб-интерфейсе KUMA в разделе События, получены из хранилища (то есть кластера ClickHouse). В зависимости от потребностей вашей компании у вас может быть более одного хранилища, однако для получения событий необходимо указывать, события из какого именно хранилища вам требуются.
Чтобы выбрать хранилище, из которого вы хотите получать события,
В разделе События веб-интерфейса KUMA откройте раскрывающийся список хранилищ в верхней правой части раздела и выберите одно или несколько пространств одного или нескольких хранилищ. Вы можете выбрать все доступные пространства хранилища, установив флажок напротив названия хранилища.
В таблице событий отображаются события из указанного хранилища. Имя выбранного хранилища отображается в раскрывающемся списке хранилищ.
В раскрывающемся списке хранилищ отображаются только кластеры тенантов, доступных пользователю, а также кластер главного тенанта.
Формирование SQL-запроса с помощью конструктора
В KUMA вы можете сформировать SQL-запрос для фильтрации событий с помощью конструктора запросов.
Чтобы сформировать SQL-запрос с помощью конструктора:
- В разделе События веб-интерфейса KUMA нажмите на кнопку
.
Откроется окно конструктора запросов.
- Сформулируйте поисковый запрос, указав данные в следующих блоках параметров:
SELECT – поля событий, которые следует возвращать. По умолчанию выбрано значение *, означающее, что необходимо возвращать все доступные поля события. Чтобы вам проще было просматривать результаты поиска, в раскрывающемся списке вы можете выбрать необходимые поля, тогда в таблице будут отображаться данные только для выбранных полей. Стоит учитывать, что Select * в запросе увеличивает длительность выполнения запроса, но избавляет от необходимости прописывать поля в запросе вручную.
Выбрав поле события, вы можете в поле справа от раскрывающегося списка указать псевдоним для столбца выводимых данных, а в крайнем правом раскрывающемся списке можно выбрать операцию, которую следует произвести над данными: count, max, min, avg, sum.
Если вы используете в SQL-запросе функции агрегации, вы можете настроить отображение столбцов в таблице событий. После выполнения запроса без * столбцы придут в соответствие с запросом. Также недоступна сортировка событий по возрастанию и убыванию, а также получение статистики.
Если в запросе используется группировка или агрегирующие функции, радар показывает не одно число, которое пришло по запросу
SELECT max(BytesOut) FROM `events` LIMIT 250
, а распределение событий, из которых получается это число.В режиме расследования алерта при фильтрации по событиям, связанным с алертами, невозможно производить операции над данными полей событий и присваивать названия столбцам выводимых данных.
- FROM – источник данных. Выберите значение events.
- WHERE – условия фильтрации событий.
Условия и группы условий можно добавить с помощью кнопок Добавить условие и Добавить группу. По умолчанию в группе условий выбрано значение оператора И, однако если на него нажать, оператор можно изменить. Доступные значения: И, ИЛИ, НЕ. Структуру условий и групп условий можно менять, перетаскивая выражения с помощью мыши за значок
.
Добавление условий фильтра:
- В раскрывающемся списке слева выберите поле события, которое вы хотите использовать для фильтрации.
- В среднем раскрывающемся списке выберите нужный оператор. Доступные операторы зависят от типа значения выбранного поля события.
- Введите значение условия. В зависимости от выбранного типа поля вам потребуется ввести значение вручную, выбрать его в раскрывающемся списке или выбрать в календаре.
Условия фильтра и группы условий можно удалить с помощью кнопки
.
- GROUP BY – поля событий или псевдонимы, по которым следует группировать возвращаемые данные.
Если вы используете в SQL-запросе группировку данных, в списке событий будут отображаться пользовательские поля, указанные в запросе. Настройка столбцов таблицы в группе недоступна. В событиях группы можно настроить отображение столбцов. Также недоступна сортировка событий по возрастанию и убыванию, получение статистики.
В режиме расследования алерта при фильтрации по событиям, связанным с алертами, невозможно группировать возвращаемые данные.
- ORDER BY – столбцы, по которым следует сортировать возвращаемые данные. В раскрывающемся списке справа можно выбрать порядок: DESC – по убыванию, ASC – по возрастанию.
- LIMIT – количество отображаемых в таблице строк.
Значение по умолчанию – 250.
Если при фильтрации событий по пользовательскому периоду количество строк в результатах поиска превышает заданное значение, вы можете отобразить в таблице дополнительные строки, нажав на кнопку Показать больше. Кнопка не отображается при фильтрации событий по стандартному периоду.
- Нажмите на кнопку Применить запрос.
Текущий SQL-запрос будет перезаписан. В поле поиска отобразится сформированный SQL-запрос.
Если вы хотите сбросить настройки конструктора, нажмите на кнопку Запрос по умолчанию.
Если вы хотите закрыть конструктор, не перезаписывая существующий запрос, нажмите на кнопку
в верхней правой части окна создания запроса.
- Для отображения данных в таблице нажмите на кнопку Выполнить запрос.
В таблице отобразятся результаты поиска по сформированному SQL-запросу.
При переходе в другой раздел веб-интерфейса сформированный в конструкторе запрос не сохраняется. Если вы повторно вернетесь в раздел События, в конструкторе будет отображаться запрос по умолчанию.
Подробнее об SQL см. в справке ClickHouse. Также см. использование операторов в KUMA и поддерживаемые функции.
Создание SQL-запроса вручную
Вы можете вручную использовать строку поиска, чтобы создавать SQL-запросы любой сложности для фильтрации событий.
Чтобы сформировать SQL-запрос вручную:
- Перейдите в раздел События веб-интерфейса KUMA.
Откроется форма с полем ввода.
- Введите SQL-запрос в поле ввода. Вам нужно использовать одинарные кавычки в запросах.
- Нажмите на кнопку Выполнить запрос.
Отобразится таблица событий, соответствующих условиям вашего запроса. При необходимости вы можете отфильтровать события по периоду.
Поддерживаемые функции и операторы
Функция |
Описание |
---|---|
|
Поля событий, которые требуется возвращать. Поддерживаются следующие функции и операторы:
Вы можете комбинировать в SQL-запросе функции и операторы. Если вы используете в SQL-запросе функции агрегации, вы можете настроить отображение столбцов в таблице событий. После выполнения запроса без * столбцы придут в соответствие с запросом. Также недоступна сортировка событий по возрастанию и убыванию, а также получение статистики. Если в запросе используется группировка или агрегирующие функции, радар показывает не одно число, которое пришло по запросу |
|
Источник данных. При создании SQL-запроса в качестве источника данных вам нужно указать значение events. |
|
Условия фильтрации событий:
|
|
Поля событий или псевдонимы, по которым требуется группировать возвращаемые данные. Если вы используете в SQL-запросе группировку данных, в списке событий будут отображаться пользовательские поля, указанные в запросе. Настройка столбцов таблицы в группе недоступна. В событиях группы можно настроить отображение столбцов. Также недоступна сортировка событий по возрастанию и убыванию, получение статистики. |
|
Столбцы, по которым требуется сортировать возвращаемые данные. Возможные значения:
|
|
Количество строк, которые требуется пропустить перед отображением результатов SQL-запроса. |
|
Количество отображаемых в таблице строк. Значение по умолчанию: Если при фильтрации событий по пользовательскому периоду количество строк в результатах поиска превышает указанное значение, вы можете отобразить в таблице дополнительные строки, нажав на кнопку Показать больше. Эта кнопка не отображается при фильтрации событий по стандартному периоду. |
Примеры SQL-запросов:
|
Если вы хотите указать в запросе специальный символ, вам требуется экранировать его, поместив перед ним обратную косую черту (\).
Пример:
Все события таблицы events, которые в поле Message содержат текст, соответствующий шаблону |
При создании нормализатора для событий вы можете выбрать, сохранять ли значения полей исходного события. Данные сохраняются в поле события Extra. Поиск событий по этому полю осуществляется с помощью оператора LIKE.
Пример:
Все события таблицы events для хостов с IP-адресом 00.00.00.000, на которых запущен процесс example, отсортированные по столбцу Timestamp в порядке убывания. Количество отображаемых в таблице строк – 250. |
Если вы создали SQL-запрос вручную в строке поиска и затем переключились на конструктор, параметры SQL-запроса не перенесутся в конструктор. В этом случае вам потребуется создать SQL-запрос в конструкторе заново. SQL-запрос, созданный в конструкторе, не перезаписывает SQL-запрос, введенный в строке поиска, пока вы не нажмете на кнопку Применить запрос в окне конструктора. Если вы создали SQL-запрос в конструкторе и затем переключились на поисковую строку, параметры запроса перенесутся автоматически.
Используемые в поисковых запросах псевдонимы не должны содержать пробелов.
Подробнее об SQL см. в справке ClickHouse. Также см. поддерживаемые функции ClickHouse.
Сохранение истории запросов
В веб-интерфейсе KUMA в разделе События сохраняется персональная история поисковых SQL-запросов. Вы можете обращаться к истории запросов и быстро находить нужный выполненный вами запрос.
Запросы сохраняются в браузере. При смене браузера история запросов очищается. В истории хранятся 32 последних введенных вами запроса. Запросы отображаются с форматированием. Отображается дата и время выполнения запроса.
В истории запросов сохраняются только запросы с правильным синтаксисом.
Чтобы найти поисковый запрос в истории:
- В разделе События поместите курсор в строку запроса.
- Нажмите мышкой на кнопку
(История SQL-запросов), которая размещается на панели инструментов окна ввода запросов, или используйте комбинации клавиш Ctrl+] или Ctrl+[ на клавиатуре.
Откроется окно истории запросов. Вверху списка запросов отображается последний выполненный вами запрос.
- Выберите поисковый запрос. Для навигации по списку сохраненных запросов используйте комбинацию клавиш Ctrl+] или Ctrl+[.
Выбранный запрос подставится в строку запроса.
- При необходимости выполните поисковый запрос. Для этого нажмите комбинацию клавиш Ctrl+Enter.
При выполнении запроса окно истории запросов закрывается.
Также окно с историей запросов вы можете закрыть, нажав на клавишу Esc, при этом курсор переместится в окно редактирования запроса.
Вы можете скопировать запрос в буфер обмена, нажав комбинацию клавиш Ctrl+C. При этом скопируется часть запроса, выделенная мышкой, или вся строка запроса, ограниченная рамкой, если не было выделения.
Вы можете сохранить запрос нажав комбинацию клавиш Ctrl+S, либо нажав мышкой на кнопку (Сохранить запрос) в строке. При этом окно истории закроется, и откроется боковая панель для сохранения запроса с заполненными полями.
Пользователь может вставить запрос в окно запроса без выполнения, нажав мышкой на кнопку (Вставить запрос), либо на клавишу Enter.
Работа с сохраненными поисковыми запросами
В KUMA в разделе События вы можете организовать сохраненные SQL-запросы в дереве папок для структурированного хранения и быстрого поиска SQL-запросов. Вы можете редактировать ранее сохраненные запросы, переименовывать их, размещать запросы в группах (папках) доступных тенантов и осуществлять поиск по ранее сохраненным запросам в поисковой строке.
Сохраненные запросы подчиняются тенантной модели доступа и будут видны всем пользователям, которые имеют доступ к соответствующим тенантам.
Сохраненные запросы размещаются в панели Сохраненные запросы. Вы можете открыть или закрыть панель Сохраненные запросы с помощью кнопки (закладка) в панели инструментов окна ввода запросов.
Навигационная панель Сохраненные запросы отображается слева и содержит:
- Окно поиска запроса, в котором вы можете выполнять поиск по имени папки и имени запроса.
- Дерево папок и запросов, папку Избранное.
- Фильтр запросов: отображение запросов, созданных вами (вкладка Мои) и отображение всех запросов (вкладка Все).
Отображение запроса в окне запросов
Чтобы отобразить запрос в окне запросов:
- В разделе События нажмите на кнопку
(закладка).
Откроется навигационная панель Сохраненные запросы.
- В дереве папок панели Сохраненные запросы мышкой выберите нужный запрос.
Текст выбранного запроса отображается в окне запросов.
Сохранение запроса в папку или тенант
В разделе События после введения запроса в окне запросов и нажатия на кнопку Сохранить текущий запрос (значок дискеты) вы можете сохранить SQL-запрос в доступную для выбора папку или тенант.
Чтобы сохранить запрос в папку:
- В окне Новый запрос в поле Название фильтра введите название фильтра.
При вводе названия фильтра учитывайте следующее:
- Название содержит символы Unicode.
- Минимальная длина названия – 1 символ, максимальная – 128 символов.
- В одном тенанте не может быть одинаковых названий.
- Символы табуляции, переноса строки и красной строки заменяются на символ пробела.
При сохранении названия:
- Пробелы в начале и конце строки удаляются.
- Множественные пробелы между символами сокращаются до одного.
- В поле Запрос введите текст SQL запроса.
- Выберите тенант, папку из списка папок, созданных в доступном вам тенанте, или создайте новую папку, нажав на кнопку Добавить папку.
Добавить папку вы также можете в окне Сохраненные запросы, нажав на кнопку
напротив тенанта и добавив папку в появившемся окне Новая папка.
- Нажмите на кнопку Сохранить.
Запрос будет сохранен в выбранной папке или тенанте.
Просмотр текста запроса
Чтобы просмотреть текст запроса:
- В разделе События нажмите на кнопку
(закладка).
Откроется навигационная панель Сохраненные запросы.
- В дереве папок панели Сохраненные запросы напротив нужного запроса нажмите на кнопку
.
Появляется окно с текстом запроса.
Установка запроса по умолчанию
Вы можете выбрать себе запрос по умолчанию, с которым будет открываться раздел События.
Чтобы установить запрос по умолчанию:
- В разделе События нажмите на кнопку
(закладка).
Откроется навигационная панель Сохраненные запросы.
- В дереве папок панели Сохраненные запросы выберите нужный запрос.
- Нажмите на кнопку
и в открывшемся меню выберите пункт Использовать по умолчанию.
Выбранный запрос будет использоваться по умолчанию.
Добавление папок и запросов в избранное
Чтобы добавить папку или отдельный запрос в избранное:
- В разделе События нажмите на кнопку
(закладка).
Откроется навигационная панель Сохраненные запросы.
- В дереве папок панели Сохраненные запросы выберите нужную папку или запрос.
- Нажмите на кнопку
и в открывшемся меню выберите пункт В избранное.
Выбранная папка или ресурс переместится в папку Избранное.
Редактирование запроса
Чтобы отредактировать запрос:
- В разделе События нажмите на кнопку
(закладка).
Откроется навигационная панель Сохраненные запросы.
- В дереве папок панели Сохраненные запросы выберите нужный запрос.
- Нажмите на кнопку
и в открывшемся меню выберите пункт Изменить.
Откроется окно изменения сохраненного запроса.
- В окне измените название, текст запроса или папку, в которой будет сохранен запрос.
- Нажмите на кнопку Сохранить.
Запрос будет обновлен и сохранен в выбранной папке.
Удаление запроса
Чтобы удалить запрос из папки при наличии прав:
- В разделе События нажмите на значок закладки (
).
Откроется навигационная панель Сохраненные запросы.
- В дереве папок панели Сохраненные запросы выберите нужный запрос.
- Нажмите на значок с тремя точками (
) и в появившемся меню выберите пункт Удалить.
- В открывшемся окне подтвердите удаление.
Запрос будет удален.
В началоФильтрация событий по периоду
В KUMA вы можете настроить отображение событий, относящихся к определенному временному периоду.
Чтобы отфильтровать события по периоду:
- В разделе События веб-интерфейса KUMA в верхней части окна откройте раскрывающийся список временного периода в верхней правой части раздела.
- Выберите период одним из следующих способов:
- Если вы хотите указать точную дату, в календаре слева выберите даты начала и окончания периода и нажмите на кнопку Применить.
Вы можете выбрать дату до текущей включительно. Формат даты и времени зависит от параметров вашего браузера. Если в поле Дата от или Дата до есть значение и вы не меняли вручную значение времени, при выборе даты в календаре в поле Дата от автоматически подставится время 00:00:00.000, а в поле Дата до – 23:59:59.999. Если вы вручную удалили значение в поле Дата от или Дата до, при выборе даты в календаре в поле автоматически подставится текущее время. После того как вы выберите значение в одном из полей, фокус переключается на другое поле. Если в поле Дата до вы выбираете значение, которое меньше значения в поле Дата от, это меньшее значение будет автоматически подставлено в поле Дата от.
- Если вы хотите указать относительный период, выберите один из доступных периодов в списке Относительный период справа.
Период рассчитывается относительно настоящего времени.
- Если вы хотите задать пользовательский период, укажите или измените значение вручную в полях Дата от и Дата до.
Вы можете указать точные дату и время в формате DD.MM.YYYY HH:mm:ss.SSS для русской локализации и YYYY-MM-DD HH:mm:ss.SSS для английской локализации или период относительно текущего времени в виде формулы. При необходимости вы также можете комбинировать эти способы. Если при вводе точной даты вы не указали миллисекунды, значение 000 подставляется автоматически. Если вы вручную изменили время в полях Дата от или Дата до, при переключении даты в календаре значение времени не меняется.
В формулах относительного периода используйте параметр now для обозначения текущих даты и времени и язык параметризации интервалов: символы + (только в поле Дата до), -, / (округление до ближайшего), а также единицы изменения времени y (год), M (месяц), w (неделя), d (день), h (час), m (минута), s (секунда). Например, вы можете указать период now-5d, чтобы получить данные за последние пять дней, или now/w, чтобы получить данные с начала первого дня текущей недели (00:00:00:000 в UTC) до текущего времени now.
Поле Дата от является обязательным, и его значение не может превышать значение, установленное в поле Дата до, а также не может быть меньше 01.01.1970 (при указании точной даты или относительного периода). Значение в поле Дата до не должно быть меньше значения, установленного в поле Дата от. Если вы не укажете значение в поле Дата до, параметр now указывается автоматически.
По умолчанию выбрано значение 5 минут (now-5m). Границы периода включаются: например, для периода Сегодня отобразятся события с начала сегодняшнего дня 00:00:00:000 UTC до текущего времени now включительно, а для периода Вчера – с начала вчерашнего дня 00:00:00:000 UTC до 00:00:00:000 UTC сегодняшнего дня.
Время в KUMA хранится в UTC, но в интерфейсе оно конвертируется в соответствии с часовым поясом вашего браузера. Это нужно учитывать для относительных периодов Сегодня, Вчера, Эта неделя и Этот месяц. Например, если в браузере установлен часовой пояс UTC+3 и вы выбрали период Сегодня, события будут отображаться за период с 03:00:00.000 до текущего времени, а не с 00:00:00.000.
Если при выборе относительного периода Сегодня, Вчера, Эта неделя или Этот месяц вы хотите отобразить события в соответствии с вашим часовым поясом, вам нужно вручную добавить сдвиг по времени в поля Дата от и Дата до (если указано значение кроме now), прибавив или убавив необходимое количество часов. Например,если в браузере установлен часовой пояс UTC+3 и вы хотите отобразить данные за период Вчера, вам нужно изменить значение в поле Дата от на now-1d/d-3h, а в поле Дата до – на now/d-3h. Если же вы хотите отобразить данные за период Сегодня, вам нужно изменить значение только в поле Дата от на now/d-3h.
Если вам нужны результаты до 23:59:59:999 вчерашнего дня, то используйте SQL-запрос с фильтром по Timestamp или укажите точные дату и время.
- Если вы хотите указать точную дату, в календаре слева выберите даты начала и окончания периода и нажмите на кнопку Применить.
- Если вы хотите зафиксировать последний относительный период, по которому выполнялся запрос, как точные дату и время, нажмите на кнопку
.
После этого относительный период преобразуется в точные дату и время. Вы можете навести курсор мыши на эту кнопку, чтобы отобразить дату и время, которые будут зафиксированы. Относительные периоды Сегодня, Вчера, Эта неделя, Этот месяц преобразуются в точные дату и время в UTC, остальные периоды – в дату и время с учетом часового пояса браузера.
Если вы выполнили SQL-запрос с группировкой событий, то при переключении между группами в результатах запроса относительный временной диапазон автоматически преобразуется в точные дату и время.
- Нажмите на кнопку Выполнить запрос.
Отобразятся только события, зарегистрированные в течение указанного интервала времени. Период отобразится в верхней части окна.
Вы также можете настроить отображение событий с помощью гистограммы событий, которая отображается при нажатии на кнопку в верхней части раздела События. События отобразятся, если нажать на нужный столбец данных или выделить требуемый период времени и нажать на кнопку Показать события.
Группировка событий
После получения списка событий часто возникает потребность разделить полученные события по группам, чтобы локализовать событие информационной безопасности. В KUMA есть возможность сгруппировать события по одному или нескольким полям для полученного списка событий.
Чтобы сгруппировать события, теперь не нужно вручную корректировать текст запроса - можно в разделе События нажать на заголовок столбца и в контекстном меню выбрать Добавить GROUP BY в запрос. Вы можете выбрать последовательно несколько полей для группировки, поля будут автоматически добавлены в строку запроса. После того как вы выбрали нужные поля, нажмите Выполнить запрос. В результате будет выполнена группировка событий по заданным полям. Найденные группы будут отображаться в разделе Группы. Отображение доступно в виде таблицы и в виде карточек. Вы можете переключаться между режимами отображения.
Можно исключить группу из запроса:
- В режиме Карточки нажмите на кнопку -.
- В режиме Таблицы нажмите правой кнопкой мыши по группе и в появившемся контекстном меню выберите Исключить группу из фильтра.
В результате запрос автоматически изменится и группа будет исключена из запроса.
Если вы хотите вернуться к исходному запросу, нажмите Вернуться к исходному запросу.
По группам можно переходить и просматривать содержимое каждой группы.
Доступен глобальный поиск по всем группам и локальный поиск по событиям в рамках выбранной группы.
Можно усложнить группировку и добавить одно или несколько полей.
Можно удалить группу из группировки и таким образом вернуться на шаг назад.
Если запрос по группе возвращает много событий, будут отображаться только первые 1000 событий. Если в запросе содержится SELECT Count(ID), можно перейти по ссылке, которой является общее количество событий в результате запроса, и посмотреть все события. Если запрос не содержит Count(ID), количество событий в группе указано не будет, но сохраняется возможность перейти по ссылке и посмотреть общее количество событий в группе.
Доступна статистика, рестроспективная проверка по группам и Экспорт в TSV.
Если вы хотите, чтобы результат группировки не зависел от времени – поскольку события поступают постоянно - вы можете зафиксировать относительный интервал и применить его как абсолютный, чтобы интересующие вас события не выпали из выборки. Чтобы зафиксировать относительный интервал, в разделе События в раскрывающемся списке с временным интервалом выберите Применить текущий диапазон. Теперь вы можете работать с группами в рамках этого запроса.
Если вы хотите распределить выбранные события по месяцам, дням, минутам и секундам, вы можете выполнить группировку событий по полю Timestamp. Чтобы выполнить группировку, в таблице событий в поле Timestamp в контекстном меню выберите нужную опцию группировки.
Если вы хотите нормализовать значение поля Timestamp и смотреть время из разных источников по одной шкале времени UTC, в таблице событий в поле Timestamp в контекстном меню выберите Конвертировать в часовой пояс UTC.
В началоОтображение названий вместо идентификаторов
При обращении к некоторым полям событий, содержащих идентификаторы, KUMA возвращает не идентификаторы, а соответствующие им названия. Это сделано для удобства восприятия информации. Например, если вы обратитесь к полю события TenantID
(в который записывается идентификатор тенанта), вы получите значение из поля событий TenantName
(в которое записывается название тенанта).
При экспорте событий в файл записываются значения из обоих полей: и с идентификатором, и с названием.
В таблице ниже перечислены поля, при обращении к которым происходит замена:
Запрашиваемое поле |
Поле, из которого возвращается значение |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Замена не происходит, если в SQL-запросе полю присвоен псевдоним. Примеры:
SELECT TenantID FROM `events` LIMIT 250
– в результате поиска в поле TenantID будет отображаться название тенанта.SELECT TenantID AS Tenant_name FROM `events` LIMIT 250
– в результате поиска в поле Tenant_name будет отображаться идентификатор тенанта.
Пресеты
Вы можете использовать
для упрощения работы с запросами, если вы регулярно хотите просматривать данные по определенному набору полей событий. В строке с SQL-запросом можно ввестиSelect *
и выбрать сохраненный пресет - выдача будет ограничена только указанными в пресете полями. Такой способ снижает производительность, но при этом избавляет от необходимости каждый раз писать запрос вручную. Пресеты сохраняются на сервере Ядра KUMA и доступны всем пользователям KUMA для указанного тенанта.
Чтобы создать пресет:
- В разделе События нажмите на значок .
- В открывшемся окне на вкладке Столбцы полей событий выберите необходимые поля.
Для упрощения поиска можно начать набирать название поля в области Поиск.
- Чтобы сохранить выбранные поля, нажмите Сохранить текущий пресет.
Откроется окно Новый пресет.
- В открывшемся окне укажите Название пресета и выберите Тенант в раскрывающемся списке.
- Нажмите Сохранить.
Пресет создан и сохранен.
Чтобы применить пресет:
- В поле ввода запроса введите Select *.
- В разделе События веб-интерфейса KUMA нажмите на значок .
- В открывшемся окне на вкладке Пресеты выберите нужный пресет и нажмите на кнопку
.
Поля из выбранного пресета будут добавлены в поле с SQL-запросом, а столбцы будут добавлены в таблицу. В конструкторе запросов изменений не произойдет.
- Нажмите на кнопку Выполнить запрос, чтобы выполнить запрос.
После выполнения запроса столбцы будут заполнены.
Ограничение сложности запросов в режиме расследования алерта
При расследовании алерта сложность SQL-запросов для фильтрации событий ограничена, если при расследовании алерта в раскрывающемся списке источников событий выбрано значение События алерта. В этом случае для фильтрации событий доступны только перечисленные ниже функции и операторы.
При выборе в раскрывающемся списке источников событий значения Все события ограничения не действуют.
SELECT
- В качестве символа подстановки используется
*
.
- В качестве символа подстановки используется
WHERE
AND
,OR
,NOT
,=
,!=
,>
,>=
,<
,<=
IN
BETWEEN
LIKE
inSubnet
Примеры:
WHERE Type IN ('Base', 'Correlated')
WHERE BytesIn BETWEEN 1000 AND 2000
WHERE Message LIKE '%ssh:%'
WHERE inSubnet(DeviceAddress, '10.0.0.1/24')
ORDER BY
Сортировка возможна по столбцам.
OFFSET
Пропуск указанного количества строк перед выводом результатов запроса.
LIMIT
Значение по умолчанию – 250.
Если при фильтрации событий по пользовательскому периоду количество строк в результатах поиска превышает заданное значение, вы можете отобразить в таблице дополнительные строки, нажав на кнопку Показать больше. Кнопка не отображается при фильтрации событий по стандартному периоду.
В режиме расследования алерта при фильтрации по событиям, связанным с алертами, невозможно производить операции над данными полей событий и присваивать названия столбцам выводимых данных.
В началоСохранение и выбор конфигураций фильтра событий
В KUMA вы можете сохранять конфигурации фильтров для использования в будущем. Другие пользователи также могут использовать сохраненные фильтры при условии, что у них есть соответствующие права доступа. При сохранении фильтра вы сохраняете настроенные параметры сразу всех активных фильтров: фильтр по периоду, конструктору запросов и параметры таблицы событий. Поисковые запросы сохраняются на сервере Ядра KUMA и доступны всем пользователям KUMA выбранного тенанта.
Чтобы сохранить текущие настройки фильтра, запроса и периода:
- В разделе События веб-интерфейса KUMA нажмите на значок
рядом с выражением фильтра.
Откроется окно Новый фильтр.
- В открывшемся окне в поле Название введите название конфигурации фильтра. Название должно содержать до 128 символов в кодировке Unicode.
- В блоке Выберите папку выберите тенант, которому будет принадлежать создаваемый фильтр, и папку внутри тенанта при необходимости.
Для упрощения поиска можно начать набирать название в области Поиск.
- При необходимости нажмите на кнопку Добавить папку, чтобы создать новую папку внутри выбранного тенанта.
- Нажмите Сохранить.
Конфигурация фильтра сохранена.
Чтобы выбрать ранее сохраненную конфигурацию фильтра:
в разделе События веб-интерфейса KUMA нажмите на значок рядом с выражением фильтра и выберите нужный фильтр.
Выбранная конфигурация активна: в поле поиска отображается поисковый запрос, в верхней части окна настроенные параметры периода и частоты обновления результатов поиска. Для отправки поискового запроса нажмите на кнопку Выполнить запрос.
Если навести курсор на название конфигурации фильтра, нажать на значок рядом с названием конфигурации и нажать на кнопку В избранное, конфигурация фильтра будет добавлена в избранное.
Удаление конфигураций фильтра событий
Чтобы удалить ранее сохраненную конфигурацию фильтра:
- В разделе События веб-интерфейса KUMA нажмите на значок
рядом с поисковым запросом фильтра.
Откроется окно Сохраненные запросы.
- Наведите курсор мыши на конфигурации, которую требуется удалить, и нажмите на значок
рядом с ее названием.
- В открывшемся меню нажмите на значок
.
Конфигурация фильтра удалена для всех пользователей KUMA.
В началоПоддерживаемые функции ClickHouse
В KUMA поддерживаются следующие функции ClickHouse:
- Арифметические функции.
- Массивы.
- Функции сравнения.
- Логические функции.
- Функции преобразования типов.
- Функции для работы с датами и временем.
- Функции для работы со строками.
- Функции поиска в строках.
- Условные функции: только обычный оператор if, тернарный оператор не поддерживается.
- Математические функции.
- Функции округления.
- Функции разбиения и слияния строк и массивов.
- Битовые функции.
- Функции для работы с UUID.
- Функции для работы с URL.
- Функции для работы с IP-адресами.
- Функции для работы с Nullable-аргументами.
- Функции для работы с географическими координатами.
Функции из остальных разделов не поддерживаются.
Подробнее об SQL см. в справке ClickHouse.
В началоПросмотр информации о событии
Чтобы просмотреть информацию о событии:
- В окне веб-интерфейса программы выберите раздел События.
- Выполните поиск событий с помощью конструктора запросов или введя запрос в строке поиска.
Отобразится таблица событий.
- Выберите событие, информацию о котором вы хотите просмотреть.
Откроется окно с информацией о событии.
В правой части окна отображается область деталей Информация о событии со списком параметров события и их значений. В этой области деталей можно:
- Включить выбранное поле в поиск или исключить его из поиска, нажав на
и
рядом со значением параметра.
- По хешу файла в поле FileHash раскрывается список, в котором вы можете выбрать одно из следующих действий:
- Показать информацию из Threat Lookup.
Доступно при интеграции с Kaspersky Threat Intelligence Portal.
- Добавить в Internal TI CyberTrace.
- Доступно при интеграции с Kaspersky CyberTrace.
- Показать информацию из Threat Lookup.
- Открыть окно со сведениями об активе, если он упоминается в полях события и зарегистрирован в приложении.
- По ссылке с именем коллектора в поле Service вы можете просмотреть параметры сервиса, зарегистрировавшего событие.
Вы также можете привязать событие к алерту, если программа находится в режиме расследования алерта, и открыть окно Информация о корреляционном событии, если выбранное событие является корреляционным.
В области деталей Информация о событии в качестве значений перечисленных ниже параметров вместо идентификатора показывается название описываемого объекта. При этом, если изменить фильтрацию событий по этому параметру (например, нажать на значок , чтобы исключить из результатов поиска события с определенной комбинацией параметр-значение), в SQL-запрос будет добавлен идентификатор объекта, а не его название:
- TenantID
- SeriviceID
- DeviceAssetID
- SourceAssetID
- DestinationAssetID
- SourceAccountID
- DestinationAccountID
Экспорт событий
Из KUMA можно экспортировать информацию о событиях в TSV-файл. Выборка событий, которые будут экспортированы в TSV-файл, зависит от настроек фильтра. Информация экспортируется из столбцов, которые в этот момент отображаются в таблице событий, при этом столбцы в файле наполняются доступными данными, даже если в таблице событий в веб-интерфейсе KUMA они не отображались из-за особенностей SQL-запроса.
Чтобы экспортировать информацию о событиях:
- В разделе События веб-интерфейса KUMA нажмите на кнопку TSV в верхней части таблицы событий.
Новая задача экспорта TSV-файла создается в разделе Диспетчер задач.
- Найдите созданную вами задачу в разделе Диспетчер задач.
Когда файл будет готов к загрузке, в строке задачи в столбце Статус отобразятся статус Завершено и значок
.
- Нажмите на название типа задачи и в раскрывающемся списке выберите Загрузить.
TSV-файл с информацией о событиях будет загружен с использованием настроек вашего браузера. Имя файла по умолчанию: event-export-<date>_<time>.tsv.
Файл сохраняется в соответствии с настройками вашего веб-браузера.
В началоНастройка таблицы событий
В разделе События отображаются ответы на SQL-запросы пользователя, представленные в виде таблицы. Поля, выбранные в пользовательском запросе, отображаются в конце таблицы, после столбцов по умолчанию. Таблицу можно обновлять.
Следующие столбцы в таблице событий отображаются по умолчанию:
- TenantID.
- Timestamp.
- Name.
- DeviceProduct.
- DeviceVendor.
- DestinationAddress.
- DestinationUserName.
В KUMA можно настроить отображаемый набор полей событий и порядок их отображения. Выбранную конфигурацию можно сохранить.
При использовании для фильтрации событий SQL-запросов с группировкой и агрегацией данных статистика недоступна, а состав и порядок столбцов зависит от SQL-запроса.
В таблице событий, в области деталей событий, в окне алертов, а также в виджетах в качестве значений полей SourceAssetID, DestinationAssetID, DeviceAssetID, SourceAccountID, DestinationAccountID и ServiceID вместо идентификаторов отображаются названия активов, учетных записей или сервисов. При экспорте событий в файл идентификаторы сохраняются, однако в файл добавляются столбцы с названиями. Идентификаторы также отображаются при наведении указателя мыши на названия активов, учетных записей или сервисов.
Поиск по полям с идентификаторами возможен только с помощью идентификаторов.
Чтобы настроить поля, отображаемые в таблице событий:
- В правом верхнем углу таблицы событий нажмите значок .
Откроется окно для выбора полей событий, которые требуется отображать в таблице событий.
- Установите флажки напротив полей, которые требуется отображать в таблице. С помощью поля Поиск можно найти нужные поля.
Вы можете отобразить в таблице любое поле события из модели данных событий KUMA и расширенной схемы событий. Параметры Timestamp (Время) и Name (Название) всегда отображаются в таблице. С помощью кнопки По умолчанию можно вернуть исходные настройки отображения таблицы событий.
Когда вы устанавливаете флажок, таблица событий обновляется и добавляется новый столбец. При снятии флажка столбец исчезает.
Столбец можно удалить из таблицы событий, если нажать на его заголовок и в раскрывающемся списке выбрать Скрыть столбец.
- При необходимости измените порядок отображения столбцов, перетаскивая заголовки столбцов в таблице событий.
- Если вы хотите сортировать события по определенному столбцу, нажмите на его заголовок и в раскрывающемся списке выберите один из вариантов: По возрастанию или По убыванию.
Выбранные поля событий отобразятся в таблице раздела События в качестве столбцов в указанном вами порядке.
В началоОбновление таблицы событий
Таблицу событий можно обновлять, перегружая страницу веб-браузера. Можно также настроить автоматическое обновление таблицы событий, установив частоту обновления. По умолчанию автоматическое обновление отключено.
Чтобы включить автоматическое обновление,
Выберите частоту обновления в раскрывающемся списке в верхней правой части раздела События:
- 5 секунд
- 15 секунд
- 30 секунд
- 1 минута
- 5 минут
- 15 минут
Таблица событий обновляется автоматически.
Чтобы выключить автоматические обновление,
В раскрывающемся списке частоты обновления в верхней правой части раздела События выберите Не обновлять.
В началоПолучение статистики по событиям в таблице
Вы можете получить статистику по текущей выборке событий, отображаемой в таблице событий. Выборка событий зависит от параметров фильтрации.
Чтобы получить статистику:
в правом верхнем углу таблицы событий в раскрывающемся списке выберите Статистика или в таблице событий нажмите на любое значение и в открывшемся контекстном меню выберите Статистика.
Появится область деталей Статистика со списком параметров текущей выборки событий. Числа возле каждого параметра указывают количество событий в выборке, для которых задан этот параметр. Если параметр раскрыть, отображается его пять наиболее частых значений. С помощью поля Поиск полей можно найти нужные параметры.
В отказоустойчивой конфигурации для всех полей событий, которые содержат FQDN Ядра, в разделе Статистика будет отображаться не FQDN, а core.
В окне Статистика можно менять фильтр событий.
При использовании для фильтрации событий SQL-запросов с группировкой и агрегацией данных статистика недоступна.
В началоПросмотр информации о корреляционном событии
Вы можете просматривать подробные сведения о корреляционном событии в окне Информация о корреляционном событии.
Чтобы просмотреть информацию о корреляционном событии:
- В разделе События веб-интерфейса KUMA нажмите на корреляционное событие.
Вы можете использовать фильтры для поиска корреляционных событий, присвоив значение
correlated
параметруType
.Откроется область деталей выбранного события. Если выбранное событие является корреляционным, в нижней части области деталей будет отображаться кнопка Подробные сведения.
- Нажмите на кнопку Подробные сведения.
Откроется окно корреляционного события. Название события отображается в левом верхнем углу окна.
В разделе Информация о корреляционном событии окна корреляционного события отображаются следующие данные:
- Уровень важности корреляционного события – важность корреляционного события.
- Правило корреляции – название правила корреляции, которое породило корреляционное событие. Название правила представлено в виде ссылки, по которой можно перейти к настройкам этого правила корреляции.
- Уровень важности правила корреляции – важность правила корреляции, вызвавшего корреляционное событие.
- Идентификатор правила корреляции – идентификатор правила корреляции, которое породило корреляционное событие.
- Тенант – название тенанта, которому принадлежит корреляционное событие.
Раздел Связанные события окна корреляционного события содержит таблицу событий, относящихся к корреляционному событию. Это базовые события, в результате обработки которых было создано корреляционное событие. При выборе события в правой части окна веб-интерфейса открывается область деталей.
Ссылка Найти в событиях справа от заголовка раздела используется для расследования алерта.
Раздел Связанные активы окна корреляционного события содержит таблицу узлов, относящихся к корреляционному событию. Эта информация поступает из базовых событий, связанных с корреляционным событием. При нажатии на название актива открывается окно Информация об активе.
Раздел Связанные пользователи окна корреляционного события содержит таблицу пользователей, относящихся к корреляционному событию. Эта информация поступает из базовых событий, связанных с корреляционным событием.
Формирование SQL-запроса с помощью SQL-функций KUMA
SQL-функции KUMA позволяют использовать атрибуты активов и учетных записей в поисковых запросах для фильтрации событий, формирования отчетов и виджетов (тип графика: Таблица). Вы можете обогащать события, используя данные словарей, таблиц, активов и учетных записей с помощью следующих наборов функций:
- Набор функций enrich. Позволяет обогатить результаты запроса полями актива, учетной записи, значениями из словаря с типом Словарь и словаря с типом Таблица. Набор функций
enrich
включает в себя следующие функции:enrich_assets
;enrich_accounts
;enrich_table
;enrich_dictionary
.
- Набор функций lookup. Позволяет добавить в поисковый запрос условия по активам и учетным записям. Набор функций
lookup
включает в себя следующие функции:lookup_assets
;lookup_accounts
;lookup_assets_category
.
Максимальное количество событий в одном запросе – 10 000.
В началоИспользование набора функций enrich в SQL-запросах
Набор функций enrich
(см. таблицу ниже) применяется в блоке SELECT
SQL-запроса для обогащения результатов.
При использовании этого набора функций вы не можете группировать события по обогащенным полям.
Обогащаемые функциями виджеты и отчеты должны принадлежать не более чем одному тенанту.
Значения полей актива, которые указываются в SQL-запросах, являются регистрозависимыми.
Описание набора функций enrich
Функция |
Поле события |
Поле актива |
Описание |
---|---|---|---|
|
|
|
Позволяет обогатить результат запроса полями актива на основании указанного в функции идентификатора. Например:
|
|
|
|
Позволяет обогатить результат запроса полями учетной записи на основании указанного в функции идентификатора. Например:
Функция доступна только для тенантов, у которых включено обогащение с помощью LDAP. |
|
|
|
Позволяет обогатить результат запроса значениями из словаря с типом Таблица на основании полей событий в ответе от кластера ClickHouse. Например:
Ключевой может быть только один столбец таблицы, но ключ записи может быть составным. Например:
Функция |
|
|
|
Позволяет обогатить результат запроса значениями из словаря с типом Словарь на основании полей событий в ответе от кластера ClickHouse. Например:
Вы можете посмотреть путь до словаря в разделе Ресурсы → Словари. |
Примеры SQL-запросов с функцией enrich Вы можете задавать функцию
|
Использование набора функций lookup в SQL-запросах
Набор функций lookup
(см. таблицу ниже) применяется в блоке WHERE
SQL-запроса для добавления в поисковый запрос условий по активам и учетным записям.
Описание набора функций lookup
Тип функции |
Поле события |
Поле актива |
Оператор |
Описание |
---|---|---|---|---|
|
|
|
|
Позволяет добавить в результат запроса условия по активам, значения полей которых совпадают со значением, указанным в запросе. Для значений, которые являются числами, надо указывать строку с необходимым числом. Например:
|
|
|
Позволяет добавить в результат запроса условия по активам, значения полей которых:
Для значений, которые являются числами, надо указывать строку с необходимым числом. Например:
Значения, которые являются датами, можно указывать в следующих форматах:
|
||
|
|
Позволяет добавить в результат запроса условия по активам с помощью строкового литерала или регулярного выражения. Например:
Допускается использовать регистронезависимое регулярное выражение (PCRE2). |
||
|
|
Позволяет добавить в результат запроса условия по активам, значение которых соответствует значению, указанному в запросе. Например:
|
||
|
|
Позволяет добавить в результат запроса условия по активам с IP-адресами, которые входят в указанную подсеть. IP-адрес указывается в формате CIDR. Например:
|
||
|
|
Позволяет добавить в результат запроса условия по активам, IP-адрес которых попадает в указанный диапазон. Первый указанный в запросе IP-адрес является начальным, второй Например:
По результатам выполнения запроса будут отфильтрованы активы с IP-адресами, находящимися в диапазоне от 192.168.1.1 до 192.168.1.184. |
||
|
|
|
|
Позволяет добавить в результат запроса условия по учетным записям, значения полей которых совпадают со значением, указанным в запросе. Для значений, которые являются числами, надо указывать строку с необходимым числом. Например:
|
|
|
Позволяет добавить в результат запроса условия по учетным записям, значения полей которых соответствуют like-выражению, указанному в запросе. Подробнее об операторе like см. в SQL Language Expressions.
|
||
|
|
|
|
Позволяет найти все события, у которых связанные активы находятся в указанной папке. Например:
где |
Примеры SQL-запросов с функцией lookup Вы можете задавать функцию
|