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

ecs

Процессор ECS

Процессор ecs разбирает JSON-документы, уже отформатированные в соответствии со схемой Elastic Common Schema, и автоматически маппит их поля во внутреннюю структуру события KOMRAD.

Типичное применение — обработка событий от Elastic Beats, Elastic Agent и других инструментов, которые изначально отправляют данные в формате ECS.

Конфигурация

processors:
- module: ecs
from: Raw
verbose: false
unquote: false
ПараметрТипПо умолчаниюОписание
fromstringRawПоле события, содержащее ECS JSON
verboseboolfalseЛогировать причину отказа в разборе (полезно для отладки)
unquoteboolfalseСнять экранирование строки перед разбором JSON

Требования к входным данным

Для того чтобы процессор распознал JSON как ECS-событие, необходимы следующие условия:

  • Документ должен быть валидным JSON-объектом
  • Минимальная длина — 100 символов
  • Обязательно наличие поля @timestamp

Если условия не выполнены, процессор пропускает событие без модификации. При включённом verbose в лог записывается причина.

Маппинг полей

Процессор выполняет рекурсивный обход JSON-структуры и маппит известные ECS-поля во внутренние поля события KOMRAD с префиксом ECS.:

ECS (плоский ключ)Внутреннее поле KOMRAD
@timestampCTime
source.ipECS.Source.IP
destination.portECS.Destination.Port
event.categoryECS.Event.Category
process.pidECS.Process.PID
...ECS.<PascalCase-путь>

Поля, не входящие в известную схему ECS, сохраняются как пользовательские поля с оригинальным именем.

Пример

processors:
- module: ecs
from: Raw
verbose: true

Исходное событие (поле Raw):

{"@timestamp":"2024-01-15T10:30:45.000Z","event":{"category":["network"],"kind":"event"},"source":{"ip":"192.168.1.10","port":54321},"destination":{"ip":"10.0.0.1","port":443},"process":{"name":"curl","pid":12345}}

Результат — автоматически созданные поля:

ПолеЗначение
CTime2024-01-15T10:30:45.000Z
ECS.Event.Categorynetwork
ECS.Event.Kindevent
ECS.Source.IP192.168.1.10
ECS.Source.Port54321
ECS.Destination.IP10.0.0.1
ECS.Destination.Port443
ECS.Process.Namecurl
ECS.Process.PID12345