Правила приема логов
Правила приема логов (Logs Classic)
Классический мониторинг логов
Ключ-АСТРОМ версии 1.252+ ЕдиныйАгент версии 1.243+
Если вы используете версию Единого Агента младше 1.243 и версию Ключ-АСТРОМ младше 1.252, перейдите в раздел «Источники и хранилище логов».
Ключ-АСТРОМ позволяет включать и исключать определенные источники логов для анализа. Используя систему управления идентификацией и доступом (IAM) Ключ-АСТРОМ, вы можете контролировать, какой пользователь может изменять конфигурации в какой области.
Конфигурация основана на правилах, использующих сопоставители для иерархии, пути к файлам логов и групп процессов. Эти правила определяют, какие файлы логов из обнаруженных ЕдинымАгентом (автоматически или заданных как пользовательские источники логов) будут приняты.
Правило приема логов
- Перейдите в Настройки и выберите Мониторинг логов > Правила приема логов.
- Выберите Добавить правило и укажите имя для вашей конфигурации.
- По умолчанию кнопка Включить в хранилище включена, что означает, что элементы, настроенные этим правилом, будут храниться в Ключ-АСТРОМ. В качестве альтернативы вы можете выбрать тип правила Исключить из хранилища.
- Разверните раздел Подробности нового правила и выберите Добавить сопоставитель, чтобы создать конкретное соответствие для этого правила.
- В одно правило можно включить несколько сопоставителей.
- За исключением атрибута Источник лога в Windows (поскольку пути к файлам нечувствительны к регистру), в остальных случаях сопоставители чувствительны к регистру.
- Выберите соответствующий атрибут:
| Атрибут | Описание | Логика выпадающего списка поиска |
|---|---|---|
| Группа процессов | Сопоставление основано на идентификаторе группы процессов. Группа процессов определяется правилами обнаружения. Если процесс изменяет свою группу, сбор логов для этого процесса может начаться или остановиться в зависимости от внесенных изменений. | Отображены атрибуты, видимые за последние 3 дня. |
| Источник лога | Сопоставление основано на пути к файлу лога или полном имени лога событий Windows; поддерживаются подстановочные знаки в виде звездочки. Автозаполнение для источника лога является частичным. Вы можете выбрать одно из предопределенных значений или ввести свой источник лога. | Можно ввести вручную. Без ограничения по времени. |
| Источник лога, источник | Сопоставление основано на детекторе, используемом агентом регистрации для обнаружения файла лога. Доступные варианты включают:
| |
| Содержимое лога | Сопоставление основано на содержимом лога; поддерживаются подстановочные знаки в виде звездочки. | Можно ввести вручную. Без ограничения по времени. |
| Уровень записи лога | Сопоставление основано на уровне записи в логе. Поддерживаются значения: alert, critical, debug, emergency, error, info, none, notice, severe, warn. |
Можно ввести вручную. Без ограничения по времени. |
| единица лога | Сопоставление осуществляется на основе любого из выбранных модулей journald. Если вы не обогащаете другие источники логов атрибутом journald.unit, вам также следует добавить сопоставитель log.source и log.source.origin к правилу приема, чтобы повысить производительность модуля логов. |
Можно ввести вручную. Без ограничения по времени. |
| Тег хоста | Сопоставление основано на теге хоста. Атрибут поддерживает только теги, заданные с помощью инструмента командной строки Единого Агента или в конфигурации удаленного доступа в формате key=value. В одном сопоставителе можно указать несколько тегов, но каждый тег должен иметь одинаковый ключ. |
Можно ввести вручную. Без ограничения по времени. |
| имя контейнера Kubernetes | Сопоставление осуществляется на основе имени контейнера Kubernetes. | Отображены атрибуты, видимые за последние 90 дней. |
| имя пространства имен Kubernetes | Сопоставление осуществляется на основе имени пространства имен Kubernetes. | Отображены атрибуты, видимые за последние 90 дней. |
| Название развертывания Kubernetes | Сопоставление основано на любом из выбранных развертываний. Эта функция устарела для модуля логов Единого Агента, управляемого оператором Ключ-АСТРОМ, или при включении флага функции «Собирать все логи контейнеров». | Можно ввести вручную. |
| Аннотация пода Kubernetes | Сопоставление основано на любой из выбранных аннотаций пода. Правильный формат — key=value. Требуется либо модуль логирования Единого Агента, управляемый оператором Ключ-АСТРОМ, либо включенный флаг функции «Собирать все логи контейнеров». |
Можно ввести вручную. |
| Метка пода Kubernetes | Сопоставление осуществляется на основе любой из выбранных меток пода. Правильный формат — key=value. Требуется либо модуль логирования Единого Агента, управляемый оператором Ключ-АСТРОМ, либо включенный флаг функции «Собирать все логи контейнеров». |
Можно ввести вручную. |
| Имя рабочей нагрузки Kubernetes | Сопоставление осуществляется на основе любого из выбранных имен рабочих нагрузок. Требуется либо модуль логов Единого Агента, управляемый оператором Ключ-АСТРОМ, либо включенный флаг функции «Собирать все логи контейнеров». | Отображены атрибуты, видимые за последние 90 дней. |
| Тип рабочей нагрузки Kubernetes | Сопоставление осуществляется на основе любого из выбранных типов рабочих нагрузок. Требуется либо модуль логов Единого Агента, управляемый оператором Ключ-АСТРОМ, либо включенный флаг функции «Собирать все логи контейнеров». | Можно ввести вручную. |
| имя контейнера Docker | Сопоставление осуществляется на основе названия контейнера. | Отображены атрибуты, видимые за последние 90 дней. |
| Идентификатор группы контейнеров сущности DT | Подбор осуществляется на основе любой из выбранных групп контейнеров. | Можно ввести вручную. Без ограничения по времени. |
| Технологическая технология | Сопоставление осуществляется на основе названия технологии. | Можно ввести вручную. Без ограничения по времени. |
| В логе событий Windows зафиксировано событие с идентификатором | Сопоставление осуществляется на основе любого из выбранных атрибутов ID события. | Можно ввести вручную. Без ограничения по времени. |
| Источник записи лога Windows | Сопоставление осуществляется на основе любого из выбранных атрибутов источника. | Можно ввести вручную. Без ограничения по времени. |
| Категория задачи записи лога Windows | Сопоставление осуществляется на основе любого из выбранных атрибутов категории задач. | Можно ввести вручную. Без ограничения по времени. |
| В логе Windows регистрируется операционный код | Сопоставление осуществляется на основе любого из выбранных атрибутов операционного кода. | Можно ввести вручную. Без ограничения по времени. |
| Запись в лог Windows, имя пользователя | Сопоставление осуществляется на основе любого из выбранных атрибутов имени пользователя. | Можно ввести вручную. Без ограничения по времени. |
| Ключевые слова записи лога Windows | Сопоставление осуществляется на основе любого из выбранных атрибутов ключевых слов. | Можно ввести вручную. Без ограничения по времени. |
Использование символа подстановки поддерживается для любого значения атрибута и может быть использовано несколько раз в одном значении. Однако некоторые атрибуты, например, группа процессов, имеют ограниченный, предопределенный список возможных значений, которые выбираются из списка автозаполнения.
Если в значении не используется подстановочный знак, то сопоставитель ищет точное соответствие значению. Если подстановочный знак используется, сопоставитель ищет точное совпадение. Например, если значение INFO приводит к отправке только тех данных лога, которые содержат точную строку INFO, то значение *INFO* (с использованием подстановочных знаков) соответствует данным лога, которые содержат эту строку INFO в своем содержимом.
- Выберите Добавить значение и в поле Значения выберите обнаруженные элементы данных лога (файлы логов или группы процессов, содержащие данные лога). К выбранному атрибуту можно добавить несколько значений. Можно использовать один сопоставитель, указывающий источник лога и сопоставляющий значения
/var/log/syslogи «Лог приложений Windows». - Сохраните изменения.
Определенные правила можно переупорядочивать, и они выполняются в том порядке, в котором отображаются на странице хранилища логов.
Чтобы активировать правило, включите переключатель Активно.
Начиная с версии ЕдиныйАгент 1.249, вы можете активировать/деактивировать свои правила, включив/выключив переключатель Активно. Для эффективного управления правилами мы рекомендуем обновить ЕдиныйАгент до версии 1.249. Если на хосте установлены правила с версией Единого Агента ниже 249, вы не сможете их деактивировать. В этом случае вам потребуется удалить такие правила, выбрав Удалить на уровне правила или через REST API.
Сопоставление списка правил с данными лога
Сопоставление происходит в соответствии с предопределенной иерархией, и правила выполняются сверху вниз. Это означает, что если правило выше в списке соответствует определенным данным лога, то правила ниже будут пропущены. Элементы, соответствующие конфигурациям более высокого уровня, перезаписываются в конфигурациях более низкого уровня, если они соответствуют тем же данным лога. Если ни одно правило не соответствует, файл не отправляется. Иерархия сопоставления выглядит следующим образом:
- правила конфигурации хоста
- правила конфигурации группы хостов
- Правила конфигурации арендатора
Области конфигурации
Поддерживаются три уровня иерархии: хост, группа хостов и арендатор. Уровень с наименьшим возможным набором правил имеет приоритет над более крупными наборами.
- Правила хранения логов, настроенные для хоста, имеют приоритет над правилами хранения логов, настроенными для группы хостов.
- Правила хранения логов, настроенные для группы хостов, имеют приоритет над правилами хранения логов, настроенными для арендатора.
Область действия хоста
Доступ к области действия хоста можно получить через настройки хоста для конкретного хоста.
- Перейдите в раздел Хосты.
- Найдите и выберите свой хост, чтобы отобразить страницу обзора хоста.
- В правом верхнем углу страницы обзора хоста выберите Дополнительно (…) > Настройки.
- В настройках хоста перейдите в раздел Мониторинг логов > Правила приема логов.
- Настройте загрузку данных в хранилище, добавив правила с набором атрибутов, соответствующих данным лога, которые должны храниться в Ключ-АСТРОМ.
Область действия группы хостов
Доступ к области действия группы хостов можно получить на странице Хосты.
- Перейдите в раздел Хосты и выберите интересующего вас хоста.
- На странице обзора хоста выберите Свойства и теги.
- На панели Свойства и теги найдите свойство Группа хостов, чтобы увидеть имя группы хостов, к которой принадлежит выбранный хост.
- Свойство Группа хостов не отображается, если выбранный хост не принадлежит ни к одной группе хостов.
- Выберите имя группы хостов, чтобы отобразить список всех хостов в этой группе. При этом отобразится страница развертывания Единого Агента, отфильтрованная по выбранной группе хостов. У каждого хоста в списке есть ссылка Группа хостов: <имя группы>, где <имя группы> — это имя группы хостов, которую вы хотите настроить.
- Выберите имя группы хостов в любой строке.
- В настройках группы хостов выберите Мониторинг логов > Правила приема логов.
- Настройте загрузку данных в хранилище, добавив правила с набором атрибутов, соответствующих данным лога, которые должны храниться в Ключ-АСТРОМ.
Объем работ арендатора
Область действия для арендатора доступна в меню настроек.
- Перейдите в Настройки и выберите Мониторинг логов > Правила приема логов.
- Настройте загрузку данных в хранилище, добавив правила с набором атрибутов, соответствующих данным лога, которые должны храниться в Ключ-АСТРОМ.
Список хостов и групп хостов с переопределяющими правилами
В таблице Настройки > Мониторинг логов > Правила приема логов перечислены все правила хранения логов, которые вы установили на уровне арендатора. Однако вам может быть полезно посмотреть, где вы установили правила хранения логов для хостов и групп хостов, которые переопределяют правила на уровне арендатора.
Чтобы перечислить все сущности (хосты и группы хостов), к которым применяются более специфические правила хранения логов:
- Перейдите в Настройки > Мониторинг логов > Правила приема логов.
- В правом верхнем углу страницы «Правила приема логов» выберите Дополнительно (…) > Иерархия и переопределения. На панели Иерархия и переопределения с возможностью поиска отображаются все сущности (хосты и группы хостов), для которых вы установили правила хранения логов, переопределяющие правила на уровне клиента, перечисленные в разделе Настройки > Мониторинг логов > Правила приема логов.
- Выберите имя сущности, чтобы перейти на страницу правил приема логов для этой сущности.
Пример загрузки
В этом примере мы настраиваем загрузку файлов c:\inetpub\logs\LogFiles\ex_*.log в хранилище арендатора для двух групп процессов: IIS (PROCESS_GROUP-3D9D854163F8F07A) и IIS (PROCESS_GROUP-4A7B47FDB53137AE). Правило хранения логов состоит из двух сопоставителей: первый сопоставитель находит группы процессов, а второй сопоставитель соответствует только определенному источнику логов.
- Перейдите в Настройки > Мониторинг логов > Правила приема логов.
- Выберите Добавить правило и укажите заголовок для вашей конфигурации.
- Выберите Добавить сопоставитель. Это первый сопоставитель, который соответствует двум указанным группам процессов.
- В списке атрибутов выберите Группа процессов.
- Выберите Добавить значение и введите
IIS, а затем из списка подсказок выберитеIIS (PROCESS_GROUP-3D9D854163F8F07A). - Снова выберите Добавить значение и введите
IIS, а затем выберите вторую группу процессов из списка подсказок:IIS (PROCESS_GROUP-4A7B47FDB53137AE). - Снова выберите Добавить сопоставитель. Это второй сопоставитель, который будет соответствовать указанному источнику данных лога.
- В списке атрибутов выберите Источник лога.
- Выберите Добавить значение и введите
c:\inetpub\logs\LogFiles\ex_*.logв качестве значения. - Сохраните изменения.
Пример исключения
В этом примере мы настраиваем загрузку логов в хранилище арендатора для всех источников логов, кроме файлов c:\inetpub\logs\LogFiles\ex_*.log в группе процессов IIS (PROCESS_GROUP-4A7B47FDB53137AE).
- Перейдите в Настройки и выберите Мониторинг логов > Правила приема логов.
- Выберите Добавить правило и укажите заголовок для вашей конфигурации.
- Отключите функцию Отправлять в хранилище.
- Выберите Добавить сопоставитель. Это первый сопоставитель, который соответствует указанной группе процессов.
- В списке атрибутов выберите Группа процессов.
- Выберите Добавить значение и введите
IIS, а затем из списка подсказок выберитеIIS (PROCESS_GROUP-3D9D854163F8F07A). - Снова выберите Добавить сопоставитель. Это второй сопоставитель, исключающий указанный источник данных лога.
- В списке атрибутов выберите Источник лога.
- Выберите Добавить значение и введите
c:\inetpub\logs\LogFiles\ex_*.logв качестве значения. - Сохраните изменения.
REST API
Для управления правилами приема логов вы можете использовать API настроек:
- Схема представления
- Список сохраненных объектов конфигурации
- Просмотреть отдельный объект конфигурации
- Создать новый, отредактировать или удалить существующий объект конфигурации.
Чтобы проверить текущую версию схемы для правил приема логов, перечислите все доступные схемы и найдите идентификатор схемы builtin:logmonitoring.log-storage-settings.
Правила приема логов можно настроить для следующих областей:
tenant– Объект конфигурации влияет на все хосты в рамках данного клиента.host_group– Объект конфигурации влияет на все хосты, назначенные данной группе хостов.host– Объект конфигурации влияет только на указанный хост.
Для создания правила приема логов с использованием API:
- Создайте токен доступа с правами на запись настроек (
settings.write) и чтение настроек (settings.read). - Используйте конечную точку GET для получения схемы, чтобы узнать формат JSON, необходимый для отправки вашей конфигурации. Идентификатор схемы конфигурации хранилища логов (
schemaId) —builtin:logmonitoring.log-storage-settings. Вот пример полезной нагрузки JSON с конфигурацией хранилища логов:
[
{
"insertAfter" : "uAAZ0ZW5hbnQABnRlbmFudAAkMGUzYmY2ZmYtMDc2ZC0zNzFmLhXaq0",
"schemaId" : "builtin:logmonitoring.log-storage-settings",
"schemaVersion" : "0.1.0",
"scope" : "tenant",
"value" : {
"config-item-title" : "Added from REST API",
"send-to-storage" : true,
"matchers" : [
{
"attribute" : "dt.entity.process_group",
"operator" : "matches",
"values" : [
"PROCESS_GROUP-05F00CBACF39EBD1"
]
},
{
"attribute" : "log.source",
"operator" : "matches",
"values" : [
"Windows System log",
"Windows Security log"
]
}
]
}
}
]
|
Используйте конечную точку POST для отправки объекта, чтобы передать вашу конфигурацию.
Примеры
Приведенные ниже примеры демонстрируют результаты различных комбинаций правил и сопоставителей.
Пример 1: Несколько правил
В этом примере действуют два правила:
- Правило 1 — это правило исключения, имеющее два сопоставителя: атрибут группы процессов — Apache, а атрибут источника логов — access.log).
- Правило 2 — это правило включения, имеющее один сопоставитель: атрибут группы процессов — Apache.
Результаты: access.log не отправлено, error.log (из Apache) отправлено, и error.log (из другого PG) не отправлено.
{
"send-to-storage" : false,
"matchers" : [
{
"attribute" : "log.source",
"values" : [
"/path/to/access.log"
]
},
{
"attribute" : "dt.entity.process_group",
"values" : [
"PROCESS_GROUP-APACHEID"
]
}
],
"enabled" : true
},
{
"send-to-storage" : true,
"matchers" : [
{
"attribute" : "dt.entity.process_group",
"values" : [
"PROCESS_GROUP-APACHEID"
]
}
],
"enabled" : true
}
|
Пример 2: Отправка логов, записанных Apache и содержащих 'ERROR'
Для выполнения этой задачи необходимо задать одно правило с двумя сопоставителями.
{
"send-to-storage" : true,
"matchers" : [
{
"attribute" : "log.content",
"values" : [
"*ERROR*"
]
},
{
"attribute" : "dt.entity.process_group",
"values" : [
"PROCESS_GROUP-APACHEID"
]
}
],
"enabled" : true
}
|
Пример 3: Отправка логов, записанных Apache или содержащих 'ERROR'
Для выполнения этой задачи необходимо задать два правила, каждое из которых содержит один сопоставитель.
{
"send-to-storage" : true,
"matchers" : [
{
"attribute" : "log.content",
"values" : [
"*ERROR*"
]
}
],
"enabled" : true
},
{
"send-to-storage" : true,
"matchers" : [
{
"attribute" : "dt.entity.process_group",
"values" : [
"PROCESS_GROUP-APACHEID"
]
}
],
"enabled" : true
}
|
Пример 4: Отправка логов, записанных Apache и содержащих слова «ERROR» и «Customer»
Для решения этой задачи необходимо задать одно правило с тремя сопоставителями, каждый из которых имеет одно значение.
{
"send-to-storage" : true,
"matchers" : [
{
"attribute" : "log.content",
"values" : [
"*ERROR*"
]
},
{
"attribute" : "log.content",
"values" : [
"*Customer*"
]
},
{
"attribute" : "dt.entity.process_group",
"values" : [
"PROCESS_GROUP-APACHEID"
]
}
],
"enabled" : true
}
|
Пример 5: Отправка логов, записанных Apache и содержащих 'ERROR' или 'Customer'
Для решения этой задачи необходимо задать одно правило с двумя сопоставителями: сопоставителем со значением группы процессов и сопоставителем с двумя значениями содержимого.
{
"send-to-storage" : true,
"matchers" : [
{
"attribute" : "log.content",
"values" : [
"*ERROR*", "*Customer*"
]
}
],
"enabled" : true
},
{
"send-to-storage" : true,
"matchers" : [
{
"attribute" : "dt.entity.process_group",
"values" : [
"PROCESS_GROUP-APACHEID"
]
}
],
"enabled" : true
}
|
Пример 6: Отправка логов, записанных Apache или MySQL
Для решения этой задачи необходимо задать два правила или одно правило с одним сопоставителем, имеющим два значения. Правила с двумя сопоставителями здесь не подойдут.
Установление двух правил:
{
"send-to-storage" : true,
"matchers" : [
{
"attribute" : "dt.entity.process_group",
"values" : [
"PROCESS_GROUP-MYSQL"
]
}
],
"enabled" : true
},
{
"send-to-storage" : true,
"matchers" : [
{
"attribute" : "dt.entity.process_group",
"values" : [
"PROCESS_GROUP-APACHEID"
]
}
],
"enabled" : true
}
|
Настройка одного правила с одним сопоставителем, имеющим два значения:
{
"send-to-storage" : true,
"matchers" : [
{
"attribute" : "dt.entity.process_group",
"values" : [
"PROCESS_GROUP-APACHEID", "PROCESS_GROUP-MYSQL"
]
}
],
"enabled" : true
}
|
Пример 7: Отправить все логи
Для решения этой задачи необходимо установить правило без каких-либо сопоставителей.
{
"send-to-storage" : true,
"matchers" : [
],
"enabled" : true
}
|
Пример 8: Отправить все логи, кроме логов Apache и MySQL
Для выполнения этой задачи необходимо установить два правила. Первое правило — это правило исключения, в котором один сопоставитель имеет два значения. Второе правило не содержит никаких сопоставителей. Правила должны выполняться в порядке, указанном ниже.
{
"send-to-storage" : false,
"matchers" : [
{
"attribute" : "dt.entity.process_group",
"values" : [
"PROCESS_GROUP-APACHEID", "PROCESS_GROUP-MYSQL"
]
}
],
"enabled" : true
},
{
"send-to-storage" : true,
"matchers" : [
],
"enabled" : true
}
|
Часто задаваемые вопросы
Будут ли более старые версии Единого Агента совместимы с этим решением? Более ранние версии Единого Агента 1.243 не будут отправлять никаких данных; в ответ они получат пустой белый список.
Почему после миграции на глобальной странице с точки зрения хостов я не вижу никаких настроек? Все конфигурации, заданные с точки зрения хоста, переносятся в соответствующую область действия хоста.
Являются ли правила приема логов тем же самым, что и процесс автоматического обнаружения, или частью этого процесса? Нет. Автоматическое обнаружение — это механизм Единого Агента, который обнаруживает логи, но это не означает, что файлы логов автоматически отправляются в хранилище. Страница конфигурации для автоматического обнаружения планируется в будущих версиях.
Важен ли порядок элементов конфигурации? Да, параметры конфигурации сопоставляются сверху вниз, то есть верхнее значение является наиболее важным.
Сколько времени нужно подождать, пока конфигурация будет применена к хосту? Наносится в течение 90 секунд.
Уменьшает ли добавление сопоставителя содержимого количество событий лога, отправляемых в Ключ-АСТРОМ? Да. Сопоставитель содержимого сужает область поиска событий лога (записей лога) в соответствии с заданными критериями (например, поиск только ошибок в логе).
Где именно выполняется фильтрация: в Ключ-АСТРОМ или в Едином Агенте? Фильтрация (сужение области поиска в соответствии с заданными критериями) осуществляется в Едином Агенте. Установка ограничений (например, лимита количества событий в минуту или лимита значений атрибутов) осуществляется в Ключ-АСТРОМ.
Позволяет ли фильтрация контента снизить затраты на DDU и/или потребление сети? Да. Фильтрация контента, выполняемая в Едином Агенте, снижает как затраты на DDU, так и использование сети. Вы можете рассчитать снижение затрат и использования сети, определив общее потребление данных и вычтя объем отфильтрованных данных в ГБ.