Содержание
Правила корреляции
Ресурсы правила корреляции используются в сервисах корреляторов для распознавания определенных последовательностей обрабатываемых событий и выполнения определенных действий после распознавания: например, создание корреляционных событий или алертов, взаимодействие с активным листом.
Доступные параметры правила корреляции зависят от выбранного типа. Типы правил корреляции:
- standard – используется для поиска корреляций между несколькими событиями. Ресурсы этого типа могут создавать корреляционные события.
Этот тип ресурсов используется для определения сложных закономерностей в последовательности событий. Для более простых комбинаций следует использовать другие типы правил корреляции, которые требуют меньше ресурсов.
- simple – используется для создания событий корреляции при обнаружении определенного события.
- operational – используется для операций с активными листами. Этот тип ресурсов не может создавать корреляционные события.
Для этих ресурсов в полях ввода, кроме поля Описание, можно включить отображение непечатаемых символов.
Если правило корреляции используется в корреляторе и по нему был создан алерт, то при изменении ресурса правила корреляции существующий алерт не будет изменен, даже если перезапустить сервис коррелятора. Например, если у правила корреляции было изменено название, название алерта останется прежним. Если существующий алерт закрыть, то новый алерт будет создан уже с учетом изменений ресурса правила корреляции.
Правила корреляции типа standard
Правила корреляции типа standard используются для определения сложных закономерностей в обрабатываемых событиях.
Поиск закономерностей происходит с помощью контейнеров
Окно ресурса правила корреляции содержит следующие закладки параметров:
- Общие – используется для указания основных параметров ресурса правила корреляции. На этой закладке можно выбрать тип правила корреляции.
- Селекторы – используется для определения условий, которым должны удовлетворять обрабатываемые события для срабатывания правила корреляции. Доступные параметры зависят от выбранного типа ресурса.
- Действия – используется для установки триггеров, срабатывающих при выполнении условий, заданных в группе настроек Селекторы. У ресурса правила корреляции должен быть хотя бы один триггер. Доступные параметры зависят от выбранного типа ресурса.
Закладка Общие
- Название (обязательно) – уникальное имя для этого типа ресурса. Должно содержать от 1 до 128 символов Юникода.
- Тенант (обязательно) – тенант, которому принадлежит правило корреляции.
- Тип (обязательно) – раскрывающийся список для выбора типа правила корреляции. Выберите standard, если хотите создать правило корреляции типа standard.
- Группирующие поля (обязательно) – поля событий, которые должны быть сгруппированы в контейнере. Хеш-код значений выбранных полей используется в качестве ключа контейнера. Если срабатывает селектор (см. ниже), отобранные поля копируются в корреляционное событие.
- Уникальные поля – поля событий, которые должны быть отправлены в контейнер. Если задан этот параметр, в контейнер будут отправляться только уникальные поля. Хеш-код значений отобранных полей используется в качестве ключа контейнера. Если срабатывает правило корреляции, отобранные поля копируются в корреляционное событие.
- Частота срабатываний – максимальное количество срабатываний правила корреляции в секунду. Значение по умолчанию: 100.
Если правила корреляции, в которых реализована сложная логика обнаружения закономерностей, не срабатывают, причиной могут быть особенности подсчета срабатываний правила в KUMA. Попробуйте увеличить значение Частота срабатываний, например, до
1000000
. - Время жизни контейнера, сек. (обязательно) – время жизни контейнера в секундах. Этот таймер запускается при создании контейнера (когда он получает первое событие). Время жизни не обновляется, и когда оно истекает, срабатывает триггер По истечении времени жизни контейнера из группы настроек Действия, а контейнер удаляется. Триггеры На каждом срабатывании правила и На последующих срабатываниях правила могут срабатывать более одного раза в течение времени жизни контейнера.
- Политика хранения базовых событий – этот раскрывающийся список используется, чтобы определить, какие базовые события должны быть сохранены в корреляционном событии:
- first (значение по умолчанию) – поместить в корреляционное событие первое базовое событие из коллекции событий, инициировавшей создание корреляционного события.
- last – поместить в корреляционное событие последнее базовое событие из коллекции событий, инициировавшей создание корреляционного события.
- all – поместить в корреляционное событие все базовые события из коллекции событий, инициировавшей создание корреляционного события.
- Уровень важности – базовый коэффициент, используемый для определения уровня важности правила корреляции. Значение по умолчанию: Низкий.
- Сортировать по – в этом раскрывающемся списке можно выбрать поле события, по которому селекторы правила корреляции будут отслеживать изменение ситуации. Это может пригодиться, если, например, вы захотите настроить правило корреляции на срабатывание при последовательном возникновении нескольких типов событий.
- Описание – описание ресурса. До 256 символов Юникода.
Закладка Селекторы
В ресурсе типа standard может быть несколько селекторов. Селекторы можно добавлять с помощью кнопки Добавить селектор и удалять с помощью кнопки Удалить селектор. Селекторы можно перемещать с помощью кнопки .
Для каждого селектора доступны две закладки Параметры и Локальные переменные.
Закладка Параметры содержит следующие параметры:
- Название (обязательно) – уникальное имя группы событий, удовлетворяющих условиям селектора. Название используется для идентификации событий в объединяющем фильтре. Должно содержать от 1 до 128 символов Юникода.
- Порог срабатывания селектора (количество событий) (обязательно) – количество событий, которое необходимо получить для срабатывания селектора.
- Фильтр (обязательно) – используется для установки критериев определения событий, из-за которых будет срабатывать селектор. В раскрывающемся списке можно выбрать существующий ресурс фильтра или выбрать Создать, чтобы создать новый фильтр.
- Обнуление – этот флажок должен быть установлен, если правило корреляции НЕ должно срабатывать при получении селектором определенного количества событий. По умолчанию этот флажок снят.
На закладке Локальные переменные с помощью кнопки Добавить переменную можно объявлять переменные, которые будут действовать в пределах этого правила корреляции.
Закладка Действия
В ресурсе типа standard может быть несколько триггеров.
- На первом срабатывании правила – этот триггер срабатывает, когда контейнер регистрирует первое в течение срока своей жизни срабатывание селектора.
- На последующих срабатываниях правила – этот триггер срабатывает, когда контейнер регистрирует в течение срока своей жизни второе и последующие срабатывания селектора.
- На каждом срабатывании правила – этот триггер срабатывает каждый раз, когда контейнер регистрирует срабатывание селектора.
- По истечении времени жизни контейнера – этот триггер срабатывает по истечении времени жизни контейнера и используется в связке с селектором с установленным флажком Обнуление. То есть триггер срабатывает, если в течение заданного времени ситуация, обнаруженная правилом корреляции, не разрешается.
Каждый триггер представлен в виде группы настроек со следующими доступными параметрами:
- Отправить событие на дальнейшую обработку – если этот флажок установлен, корреляционное событие будет отправлено на пост-обработку: на обогащение, для реагирования и в точки назначения.
- Отправить событие снова в коррелятор – если этот флажок установлен, созданное корреляционное событие будет обрабатываться текущим ресурсом правила корреляции. Это позволяет достичь иерархической корреляции.
Если установлены оба флажка, правило корреляции будет отправлено сначала на пост-обработку, а затем в селекторы текущего правила корреляции.
- Не создавать алерт – если этот флажок установлен, алерт не будет создаваться при срабатывании этого правила корреляции.
- Группа параметров Обновление активных листов – используется для назначения триггера на одну или несколько операций с активными листами. С помощью кнопок Добавить действие с активным листом и Удалить действие с активным листом можно добавлять и удалять операции с активными листами.
Доступные параметры:
- Название (обязательно) – этот раскрывающийся список используется для выбора ресурсов активного листа.
- Операция (обязательно) – этот раскрывающийся список используется для выбора операции, которую необходимо выполнить:
- Получить – получить запись активного листа и записать значения указанных полей в корреляционное событие.
- Установить – записать значения указанных полей корреляционного события в активный лист, создав новую или обновив существующую запись активного листа. При обновлении записи активного листа данные объединяются, и только указанные поля перезаписываются.
- Удалить – удалить запись из активного листа.
- Ключевые поля (обязательно) – это список полей события, используемых для создания записи активного листа. Этот список также используется в качестве ключа записи активного листа.
Ключ записи активного листа зависит только от состава полей и не зависит от порядка их отображения в веб-интерфейсе KUMA.
- Сопоставление (требуется для операций Получить и Установить) – используется для сопоставления полей активного листа с полями событий. Можно установить более одного правила сопоставления.
- Левое поле используется для указания поля активного листа.
Поле не должно содержать специальные символы или только цифры.
- Средний раскрывающийся список используется для выбора полей событий.
- Правое поле можно использовать для назначения константы полю активного листа, если была выбрана операция Установить.
- Левое поле используется для указания поля активного листа.
- Группа параметров Обогащение – вы можете менять значения полей корреляционных событий, используя правила обогащения, аналогичные ресурсам правил обогащения. Эти правила обогащения хранятся в ресурсе правила корреляции, в котором они были созданы. Можно создать более одного правила обогащения. Правила обогащения можно добавлять или удалять с помощью кнопок Добавить обогащение и Удалить обогащение.
- Тип источника – в этом раскрывающемся списке можно выбрать тип обогащения. В зависимости от выбранного типа отобразятся дополнительные параметры, которые также потребуется заполнить.
Доступные типы обогащения:
- Отладка – с помощью этого раскрывающегося списка можно включить логирование операций сервиса.
- Описание – описание ресурса. До 256 символов Юникода.
- Блок параметров Фильтр – позволяет выбрать, какие события будут отправляться на обогащение. Настройка происходит, как описано выше.
- Тип источника – в этом раскрывающемся списке можно выбрать тип обогащения. В зависимости от выбранного типа отобразятся дополнительные параметры, которые также потребуется заполнить.
- Группа параметров Изменение категорий – используется для изменения категорий активов, указанных в событии. Правил категоризации может быть несколько: их можно добавить или удалить с помощью кнопок Добавить категоризацию или Удалить категоризацию. Активам можно добавлять или удалять только реактивные категории.
- Действие – этот раскрывающийся список используется для выбора операции над категорией:
- Добавить – присвоить категорию активу.
- Удалить – отвязать актив от категории.
- Поле события – поле события, в котором указан актив, над которым будет совершена операция.
- Идентификатор категории – с помощью кнопки
можно выбрать категорию, над которой будет совершена операция. При нажатии на нее открывается окно Выбор категорий, где отображается дерево категорий.
- Действие – этот раскрывающийся список используется для выбора операции над категорией:
Правила корреляции типа simple
Правила корреляции типа simple используются для определения простых последовательностей событий.
Окно ресурса правила корреляции содержит следующие закладки параметров:
- Общие – используется для указания основных параметров ресурса правила корреляции. На этой закладке можно выбрать тип правила корреляции.
- Селекторы – используется для определения условий, которым должны удовлетворять обрабатываемые события для срабатывания правила корреляции. Доступные параметры зависят от выбранного типа ресурса.
- Действия – используется для установки триггеров, срабатывающих при выполнении условий, заданных в группе настроек Селекторы. У ресурса правила корреляции должен быть хотя бы один триггер. Доступные параметры зависят от выбранного типа ресурса.
Закладка Общие
- Название (обязательно) – уникальное имя для этого типа ресурса. Должно содержать от 1 до 128 символов Юникода.
- Тенант (обязательно) – тенант, которому принадлежит правило корреляции.
- Тип (обязательно) – раскрывающийся список для выбора типа правила корреляции. Выберите simple, если хотите создать правило корреляции типа simple.
- Наследуемые поля (обязательно) – поля событий, по которым отбираются события. При срабатывания селектора (см. ниже) эти поля будут записаны в корреляционное событие.
- Частота срабатываний – максимальное количество срабатываний правила корреляции в секунду. Значение по умолчанию: 100.
Если правила корреляции, в которых реализована сложная логика обнаружения закономерностей, не срабатывают, причиной могут быть особенности подсчета срабатываний правила в KUMA. Попробуйте увеличить значение Частота срабатываний, например, до
1000000
. - Уровень важности – базовый коэффициент, используемый для определения уровня важности правила корреляции. Значение по умолчанию:
Низкий
. - Описание – описание ресурса. До 256 символов Юникода.
Закладка Селекторы
В ресурсе типа simple может быть только один селектор, для которого доступны закладки Параметры и Локальные переменные.
Закладка Параметры содержит параметры с блоком параметров Фильтр:
- Фильтр (обязательно) – используется для установки критериев определения событий, из-за которых будет срабатывать селектор. В раскрывающемся списке можно выбрать существующий ресурс фильтра или выбрать Создать, чтобы создать новый фильтр.
На закладке Локальные переменные с помощью кнопки Добавить переменную можно объявлять переменные, которые будут действовать в пределах этого правила корреляции.
Закладка Действия
В ресурсе типа simple может быть только один триггер: На каждом событии. Он активируется каждый раз, когда срабатывает селектор.
Доступные параметры триггера:
- Отправить событие на дальнейшую обработку – если этот флажок установлен, корреляционное событие будет отправлено на пост-обработку: на обогащение, для реагирования и в точки назначения.
- Отправить событие снова в коррелятор – если этот флажок установлен, созданное корреляционное событие будет обрабатываться текущим ресурсом правила корреляции. Это позволяет достичь иерархической корреляции.
Если установлены оба флажка, правило корреляции будет отправлено сначала на пост-обработку, а затем в селекторы текущего правила корреляции.
- Не создавать алерт – если этот флажок установлен, алерт не будет создаваться при срабатывании этого правила корреляции.
- Группа параметров Обновление активных листов – используется для назначения триггера на одну или несколько операций с активными листами. С помощью кнопок Добавить действие с активным листом и Удалить действие с активным листом можно добавлять и удалять операции с активными листами.
Доступные параметры:
- Название (обязательно) – этот раскрывающийся список используется для выбора ресурсов активного листа.
- Операция (обязательно) – этот раскрывающийся список используется для выбора операции, которую необходимо выполнить:
- Получить – получить запись активного листа и записать значения указанных полей в корреляционное событие.
- Установить – записать значения указанных полей корреляционного события в активный лист, создав новую или обновив существующую запись активного листа. При обновлении записи активного листа данные объединяются, и только указанные поля перезаписываются.
- Удалить – удалить запись из активного листа.
- Ключевые поля (обязательно) – это список полей события, используемые для создания записи активного листа. Этот список также используется в качестве ключа записи активного листа.
Ключ записи активного листа зависит только от состава полей и не зависит от порядка их отображения в веб-интерфейсе KUMA.
- Сопоставление (требуется для операций Получить и Установить) – используется для сопоставления полей активного листа с полями событий. Можно установить более одного правила сопоставления.
- Левое поле используется для указания поля активного листа.
Поле не должно содержать специальные символы или только цифры.
- Средний раскрывающийся список используется для выбора полей событий.
- Правое поле можно использовать для назначения константы полю активного листа, если была выбрана операция Установить.
- Левое поле используется для указания поля активного листа.
- Группа параметров Обогащение – вы можете менять значения полей корреляционных событий, используя правила обогащения, аналогичные ресурсам правил обогащения. Эти правила обогащения хранятся в ресурсе правила корреляции, в котором они были созданы. Можно создать более одного правила обогащения. Правила обогащения можно добавлять или удалять с помощью кнопок Добавить обогащение и Удалить обогащение.
- Тип источника – в этом раскрывающемся списке можно выбрать тип обогащения. В зависимости от выбранного типа отобразятся дополнительные параметры, которые также потребуется заполнить.
Доступные типы обогащения:
- Отладка – с помощью этого раскрывающегося списка можно включить логирование операций сервиса.
- Описание – описание ресурса. До 256 символов Юникода.
- Блок параметров Фильтр – позволяет выбрать, какие события будут отправляться на обогащение. Настройка происходит, как описано выше.
- Тип источника – в этом раскрывающемся списке можно выбрать тип обогащения. В зависимости от выбранного типа отобразятся дополнительные параметры, которые также потребуется заполнить.
- Группа параметров Изменение категорий – используется для изменения категорий активов, указанных в событии. Правил категоризации может быть несколько: их можно добавить или удалить с помощью кнопок Добавить категоризацию или Удалить категоризацию. Активам можно добавлять или удалять только реактивные категории.
- Действие – этот раскрывающийся список используется для выбора операции над категорией:
- Добавить – присвоить категорию активу.
- Удалить – отвязать актив от категории.
- Поле события – поле события, в котором указан актив, над которым будет совершена операция.
- Идентификатор категории – с помощью кнопки
можно выбрать категорию, над которой будет совершена операция. При нажатии на нее открывается окно Выбор категорий, где отображается дерево категорий.
- Действие – этот раскрывающийся список используется для выбора операции над категорией:
Правила корреляции типа operational
Правила корреляции типа operational используются для работы с активными листами.
Окно ресурса правила корреляции содержит следующие закладки:
- Общие – используется для указания основных параметров ресурса правила корреляции. На этой закладке можно выбрать тип правила корреляции.
- Селекторы – используется для определения условий, которым должны удовлетворять обрабатываемые события для срабатывания правила корреляции. Доступные параметры зависят от выбранного типа ресурса.
- Действия – используется для установки триггеров, срабатывающих при выполнении условий, заданных в группе настроек Селекторы. У ресурса правила корреляции должен быть хотя бы один триггер. Доступные параметры зависят от выбранного типа ресурса.
Закладка Общие
- Название (обязательно) – уникальное имя для этого типа ресурса. Должно содержать от 1 до 128 символов Юникода.
- Тенант (обязательно) – тенант, которому принадлежит правило корреляции.
- Тип (обязательно) – раскрывающийся список для выбора типа правила корреляции. Выберите operational, если хотите создать правило корреляции типа operational.
- Частота срабатываний – максимальное количество срабатываний правила корреляции в секунду. Значение по умолчанию: 100.
Если правила корреляции, в которых реализована сложная логика обнаружения закономерностей, не срабатывают, причиной могут быть особенности подсчета срабатываний правила в KUMA. Попробуйте увеличить значение Частота срабатываний, например, до
1000000
. - Описание – описание ресурса. До 256 символов Юникода.
Закладка Селекторы
В ресурсе типа operational может быть только один селектор, для которого доступны закладки Параметры и Локальные переменные.
Закладка Параметры содержит параметры с блоком параметров Фильтр:
- Фильтр (обязательно) – используется для установки критериев определения событий, из-за которых будет срабатывать селектор. В раскрывающемся списке можно выбрать существующий ресурс фильтра или выбрать Создать, чтобы создать новый фильтр.
На закладке Локальные переменные с помощью кнопки Добавить переменную можно объявлять переменные, которые будут действовать в пределах этого правила корреляции.
Закладка Действия
В ресурсе типа operational может быть только один триггер: На каждом событии. Он активируется каждый раз, когда срабатывает селектор.
Доступные параметры триггера:
- Группа параметров Обновление активных листов – используется для назначения триггера на одну или несколько операций с активными листами. С помощью кнопок Добавить действие с активным листом и Удалить действие с активным листом можно добавлять и удалять операции с активными листами.
Доступные параметры:
- Название (обязательно) – этот раскрывающийся список используется для выбора ресурсов активного листа.
- Операция (обязательно) – этот раскрывающийся список используется для выбора операции, которую необходимо выполнить:
- Получить – получить запись активного листа и записать значения указанных полей в корреляционное событие.
- Установить – записать значения указанных полей корреляционного события в активный лист, создав новую или обновив существующую запись активного листа. При обновлении записи активного листа данные объединяются, и только указанные поля перезаписываются.
- Удалить – удалить запись из активного листа.
- Ключевые поля (обязательно) – это список полей события, используемые для создания записи активного листа. Этот список также используется в качестве ключа записи активного листа.
Ключ записи активного листа зависит только от состава полей и не зависит от порядка их отображения в веб-интерфейсе KUMA.
- Сопоставление (требуется для операций Получить и Установить) – используется для сопоставления полей активного листа с полями событий. Можно установить более одного правила сопоставления.
- Левое поле используется для указания поля активного листа.
Поле не должно содержать специальные символы или только цифры.
- Средний раскрывающийся список используется для выбора полей событий.
- Правое поле можно использовать для назначения константы полю активного листа, если была выбрана операция Установить.
- Левое поле используется для указания поля активного листа.
Переменные в корреляторах
Если для покрытия каких-то сценариев обеспечения безопасности недостаточно отслеживания значений в полях событий, активных листах или словарях, вы можете воспользоваться глобальными и локальными переменными. С их помощью можно выполнять различные действия над поступающими в корреляторы значениями, реализуя сложную логику выявления угроз. Переменные можно объявить в корреляторе (глобальные переменные) или в правиле корреляции (локальные переменные), присвоив им какую-либо функцию, а затем обращаться к ним из правил корреляции, как к обычным полям событий, получая в ответ результат срабатывания функции.
Область применения переменных:
- При поиске группирующих или уникальных значений полей в правилах корреляции.
- В селекторах правил корреляции в фильтрах условий, при которых должно срабатывать правило корреляции.
- При обогащении корреляционных событий. В качестве типа источника следует выбирать Событие.
- При наполнении активных листов значениями.
К переменным можно обращаться так же, как к полям события, предваряя их название символом $.
Свойства переменных
Локальные и глобальные переменные
Свойства глобальных и локальных переменных различаются.
Глобальные переменные:
- Глобальные переменные объявляются на уровне коррелятора и действуют только в пределах этого коррелятора.
- К глобальным переменным коррелятора можно обращаться из всех правил корреляции, которые в нем указаны.
- В правилах корреляции типа standard одна и та же глобальная переменная в каждом селекторе может принимать разные значения.
- Невозможно переносить глобальные переменные между разными корреляторами.
Локальные переменные:
- Локальные переменные объявляются на уровне правила корреляции и действуют только в пределах этого правила.
- В правилах корреляции типа standard областью действия локальной переменной является только тот селектор, в котором переменная была объявлена.
- Локальные переменные можно объявлять в любых типах правил корреляции.
- Невозможно переносить локальные переменные между правилами или селекторами.
- Локальная переменная не может быть использована в качестве глобальной переменной.
Переменные в разных типах правил корреляции
- В правилах корреляции типа operational в закладке Действия можно указывать все доступные или объявленные в этом правиле переменные.
- В правилах корреляции типа standard в закладке Действия можно указывать только переменные, указанные в этих правилах на закладке Общие в поле Группирующие поля.
- В правилах корреляции типа simple в закладке Действия можно указывать только переменные, указанные в этих правилах на закладке Общие в поле Наследуемые поля.
Требования к переменным
Добавляя функцию переменной необходимо сначала указать название функции, а затем в круглых скобках перечислить ее параметры. Исключением являются простейшие математические операции (сложение, вычитание, умножение, деление), при их использовании скобками обозначается приоритет выполнения операций.
Требования к названиям функций:
- Должно быть уникально в рамках коррелятора.
- Должно содержать от 1 до 128 символов Юникода.
- Не может начинаться с символа $.
- Должно быть написано в camelCase или CamelCase.
Особенности указания функций переменных:
- Последовательность указания параметров имеет значение.
- Параметры передаются через запятую:
,
. - Строковые параметры передаются в одинарных кавычках:
'
. - Наименования полей событий и переменные указываются без кавычек.
- При обращении к переменной как параметру перед ее названием необходимо добавлять символ
$
. - Ставить пробел между параметрами необязательно.
- Во всех функциях, где в качестве параметров допускается использование переменной, допускается создавать вложенные функции.
Функции переменных
Операции с активными листами и словарями
Функция "active_list"
Получение информации из активного листа о значении в указанном столбце.
Необходимо указать параметры в следующей последовательности:
- название активного листа;
- название столбца активного листа;
- ключ записи активного листа.
В качестве ключа записи активного листа используется название одного или нескольких полей события.
Пример использования
Результат выполнения
active_list('exampleActiveList', 'score', SourceAddress,SourceUserName)
Получение данных из активного листа
exampleActiveList
из записиSourceAddress,SourceUserName
из столбцаscore
.
Функция "table_dict"
Получение информации о значении в указанном столбце словаря типа таблица.
Необходимо указать параметры в следующей последовательности:
- название словаря;
- название столбца словаря;
- ключ строки словаря.
Пример использования
Результат выполнения
table_dict('exampleTableDict', 'office', SourceUserName)
Получение данных из словаря
exampleTableDict
из строки с ключомSourceUserName
из столбцаoffice
.
Функция "dict"
Получение информации о значении в указанном столбце словаря типа словарь.
Необходимо указать параметры в следующей последовательности:
- название словаря;
- ключ строки словаря.
Пример использования
Результат выполнения
dict('exampleDictionary', SourceAddress)
Получение данных из словаря
exampleDictionary
из строки с ключомSourceAddress
.
Операции со строками
Функция "len"
Возвращает число символов в строке.
Строку можно передать строкой, названием поля или переменной.
Примеры использования |
|
|
|
Функция "to_lower"
Перевод символов в строке в нижний регистр.
Строку можно передать строкой, названием поля или переменной.
Примеры использования |
|
|
|
Функция "to_upper"
Перевод символов в строке в верхний регистр. Строку можно передать строкой, названием поля или переменной.
Примеры использования |
|
|
|
Функция "append"
Добавление символов в конец строки.
Необходимо указать параметры в следующей последовательности:
- исходная строка;
- добавляемая строка.
Строки можно передать строкой, названием поля или переменной.
Примеры использования |
Результат использования |
|
Строка из поля |
|
Строка из переменной |
|
Строка из поля |
Функция "prepend"
Добавление символов в начало строки.
Необходимо указать параметры в следующей последовательности:
- исходная строка;
- добавляемая строка.
Строки можно передать строкой, названием поля или переменной.
Примеры использования |
Результат использования |
|
Строка из поля |
|
Строка из переменной |
|
Строка из поля |
Функция "substring"
Возвращает подстроку из строки.
Необходимо указать параметры в следующей последовательности:
- исходная строка;
- позиция начала подстроки (натуральное число или 0);
- (необязательно) позиция конца подстроки.
Строки можно передать строкой, названием поля или переменной. Если номер позиции больше, чем длина строки исходных данных, возвращается пустая строка.
Примеры использования |
Результат использования |
|
Возвращает часть строки из поля |
|
Возвращает часть строки из переменной |
|
Возвращает всю строку из поля |
Функция "tr"
Убирает из начала и конца строки указанные символы.
Необходимо указать параметры в следующей последовательности:
- исходная строка;
- (необязательно) строка, которую следует удалить из начала и конца исходной строки.
Строки можно передать строкой, названием поля или переменной. Если строку на удаление не указать, в начале и в конце исходной строки будут удалены пробелы.
Примеры использования |
Результат использования |
|
В начале и в конце строки из поля |
|
Если переменной |
|
Если в поле события |
Функция "replace"
Замена в строке всех вхождений последовательности символов А на последовательность символов B.
Необходимо указать параметры в следующей последовательности:
- исходная строка;
- строка поиска: последовательность символов, подлежащая замене;
- строка замены: последовательность символов, на которую необходимо заменить строку поиска.
Строки можно передать строкой, названием поля или переменной.
Примеры использования |
Результат использования |
|
Возвращается строка из поля события |
|
Возвращается строка из переменной |
Функция "regexp_replace"
Замена в строке последовательности символов, удовлетворяющих регулярному выражению, на последовательность символов и группы захвата регулярного выражения.
Необходимо указать параметры в следующей последовательности:
- исходная строка;
- строка поиска: регулярное выражение;
- строка замены: последовательность символов, на которую необходимо заменить строку поиска, и идентификаторы групп захвата регулярного выражения.
Строки можно передать строкой, названием поля или переменной. Допускается использовать неименованные группы захвата.
Примеры использования |
Результат использования |
|
Возвращается строка из поля события |
Функция "regexp_capture"
Получение из исходной строки результата, удовлетворяющего условию регулярного выражения.
Необходимо указать параметры в следующей последовательности:
- исходная строка;
- строка поиска: регулярное выражение.
Строки можно передать строкой, названием поля или переменной. Допускается использовать неименованные группы захвата.
Примеры использования |
Примеры значений |
Результат использования |
|
|
|
Операции с метками времени
Функция now
Получение временной метки в формате epoch. Запускается без аргументов.
Примеры использования |
|
Функция "extract_from_timestamp"
Получение атомарных представлений времени (в виде год, месяц, день, час, минута, секунда, день недели) из полей и переменных с временем в формате epoch.
Параметры необходимо указать в следующей последовательности:
- Поле события, имеющего тип timestamp, или переменная.
- Обозначение атомарного представления времени. Параметр регистрозависимый.
Возможные варианты обозначения атомарного времени:
- y – год в виде числа.
- M – месяц, числовое обозначение.
- d – число месяца.
- wd – день недели: Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday.
- h – часы в 24-часовом формате.
- m – минуты.
- s – секунды.
- (необязательно) Обозначение часового пояса. Если параметр не указан, время высчитывается в формате UTC.
Примеры использования
extract_from_timestamp(Timestamp, 'wd')
extract_from_timestamp(Timestamp, 'h')
extract_from_timestamp($otherVariable, 'h')
extract_from_timestamp(Timestamp, 'h', 'Europe/Moscow')
Функция "parse_timestamp"
Представление времени из формата RFC3339 (например, "2022-05-24 00:00:00", "2022-05-24 00:00:00+0300) в формат epoch.
Примеры использования |
|
|
Функция "format_timestamp"
Представление времени из формата epoch в формат RFC3339.
Параметры необходимо указать в следующей последовательности:
- Поле события, имеющего тип timestamp, или переменная.
- Обозначение формата времени: RFC3339.
- (необязательно) Обозначение часового пояса. Если параметр не указан, время высчитывается в формате UTC.
Примеры использования
format_timestamp(Timestamp, 'RFC3339')
format_timestamp($otherVariable, 'RFC3339')
format_timestamp(Timestamp, 'RFC3339', 'Europe/Moscow')
Функция "truncate_timestamp"
Округление времени в формате epoch. После округления время возвращается в формате epoch. Время округляется в меньшую сторону.
Параметры необходимо указать в следующей последовательности:
- Поле события, имеющего тип timestamp, или переменная.
- Параметр округления:
- 1s – округление до секунд;
- 1m – округление до минут;
- 1h – округление до часов;
- 24h – округление до суток.
- (необязательно) Обозначение часового пояса. Если параметр не указан, время высчитывается в формате UTC.
Примеры использования
Примеры округляемых значений
Результат использования
truncate_timestamp(Timestamp, '1m')
1654631774175 (7 June 2022 г., 19:56:14.175)
1654631760000 (7 June 2022 г., 19:56:00)
truncate_timestamp($otherVariable, '1h')
1654631774175 (7 June 2022 г., 19:56:14.175)
1654628400000 (7 June 2022 г., 19:00:00)
truncate_timestamp(Timestamp, '24h', 'Europe/Moscow')
1654631774175 (7 June 2022 г., 19:56:14.175)
1654560000000 (7 June 2022 г., 0:00:00)
Функция "time_diff"
Получение интервала времени между двумя метками времени в формате epoch.
Параметры необходимо указать в следующей последовательности:
- Время конца отрезка. Поле события, имеющего тип timestamp, или переменная.
- Время начала отрезка. Поле события, имеющего тип timestamp, или переменная.
- Представление временного интервала:
- ms – в миллисекундах;
- s – в секундах;
- m – в минутах;
- h – в часах;
- d – в днях.
Примеры использования
time_diff(EndTime, StartTime, 's')
time_diff($otherVariable, Timestamp, 'h')
time_diff(Timestamp, DeviceReceiptTime, 'd')
Математические операции
Представлены как простейшими математическими операциями, так и функциями.
Простейшие математические операции
Операции:
- сложение;
- вычитание;
- умножение;
- деление;
- деление по модулю.
Использование круглых скобок определяет последовательность действий
Доступные аргументы:
- числовые поля события;
- числовые переменные;
- вещественные числа.
При делении по модулю в качестве аргументов можно использовать только натуральные числа.
Ограничения использования:
- деление на ноль возвращает ноль;
- математические операции между числами и строками возвращают ноль;
- целые числа, полученные в результате операций, возвращаются без точки.
Примеры использования
(Type=3; otherVariable=2; Message=text)
Результат использования
Type + 1
4
$otherVariable - Type
-1
2 * 2.5
5
2 / 0
0
Type * Message
0
(Type + 2) * 2
10
Type % $otherVariable
1
Функция "round"
Округление чисел.
Доступные аргументы:
- числовые поля события;
- числовые переменные;
- числовые константы.
Примеры использования
(DeviceCustomFloatingPoint1=7.75; DeviceCustomFloatingPoint2=7.5 otherVariable=7.2)
Результат использования
round(DeviceCustomFloatingPoint1)
8
round(DeviceCustomFloatingPoint2)
8
round($otherVariable)
7
Функция "ceil"
Округление чисел в большую сторону.
Доступные аргументы:
- числовые поля события;
- числовые переменные;
- числовые константы.
Примеры использования
(DeviceCustomFloatingPoint1=7.15; otherVariable=8.2)
Результат использования
ceil(DeviceCustomFloatingPoint1)
8
ceil($otherVariable)
9
Функция "floor"
Округление чисел в меньшую сторону.
Доступные аргументы:
- числовые поля события;
- числовые переменные;
- числовые константы.
Примеры использования
(DeviceCustomFloatingPoint1=7.15; otherVariable=8.2)
Результат использования
floor(DeviceCustomFloatingPoint1)
7
floor($otherVariable)
8
Функция "abs"
Получение числа по модулю.
Доступные аргументы:
- числовые поля события;
- числовые переменные;
- числовые константы.
Примеры использования
(DeviceCustomNumber1=-7; otherVariable=-2)
Результат использования
abs(DeviceCustomFloatingPoint1)
7
abs($otherVariable)
2
Функция "pow"
Возведение числа в степень.
Параметры необходимо указать в следующей последовательности:
- База. Вещественные числа.
- Степень. Натуральные числа.
Доступные аргументы:
- числовые поля события;
- числовые переменные;
- числовые константы.
Примеры использования
pow(DeviceCustomNumber1, DeviceCustomNumber2)
pow($otherVariable, DeviceCustomNumber1)
Объявление переменных
Для объявления переменных их необходимо добавить в коррелятор или правило корреляции.
Чтобы добавить глобальную переменную в существующий коррелятор:
- В веб-интерфейсе KUMA в разделе Ресурсы → Корреляторы выберите набор ресурсов нужного коррелятора.
Откроется мастер установки коррелятора.
- Выберите шаг мастера установки Глобальные переменные.
- Нажмите на кнопку Добавить переменную и укажите следующие параметры:
- В окне Переменная введите название переменной.
- В окне Значение введите функцию переменной.
Переменных можно добавить несколько. Добавленные переменные можно изменить или удалить с помощью значка
.
- Выберите шаг мастера установки Проверка параметров и нажмите Сохранить.
Глобальная переменная добавлена в коррелятор. К ней можно обращаться, как к полю события, указывая перед названием переменной символ $. Переменная будет использоваться при корреляции после перезапуска сервиса коррелятора.
Чтобы добавить локальную переменную в существующее правило корреляции:
- В веб-интерфейсе KUMA в разделе Ресурсы → Правила корреляции выберите ресурс нужного правила корреляции.
Откроется окно параметров правила корреляции. Параметры правила корреляции можно также открыть из коррелятора, в которое оно было добавлено, перейдя на шаг мастера установки Корреляция.
- Откройте закладку Селекторы.
- В селекторе откройте закладку Локальные переменные, нажмите на кнопку Добавить переменную и укажите следующие параметры:
- В окне Переменная введите название переменной.
- В окне Значение введите функцию переменной.
Переменных можно добавить несколько. Добавленные переменные можно изменить или удалить с помощью значка
.
Для правил корреляции типа standard повторите этот шаг для каждого селектора, в которым вы хотите объявить переменные.
- Нажмите Сохранить.
Локальная переменная добавлена в правило корреляции. К ней можно обращаться, как к полю события, указывая перед названием переменной символ $. Переменная будет использоваться при корреляции после перезапуска сервиса коррелятора.
Добавленные переменные можно изменить или удалить. Если правило корреляции обращается к необъявленной переменной (например, если ее название было изменено), в качестве результата возвращается пустая строка.
Если вы измените название переменной, вам потребуется вручную изменить название этой переменной во всех правилах корреляции, где вы ее использовали.
В начало