Логи событий

Материал из Документация Ключ-АСТРОМ

Ключ-АСТРОМ Log Monitoring дает вам возможность создавать события логов на основе данных логов и использовать их для обнаружения проблем.

Нагрузка на события логов основаны на модели единиц данных ИИ (DDU). Проверьте DDU для пользовательских событий ИИ, чтобы узнать, как можно оценить и отслеживать потребление DDU для событий логов.

Когда Ключ-АСТРОМ принимает данные логов, он применяет запрос, указанный в определении события логов. Каждое совпавшее событие запускает событие логов, которое можно настроить для индивидуального создания проблемы для каждого запущенного события логов или объединить в одну проблему.

Создать лог событий

  1. Перейдите в Настройки > Мониторинг логов > Извлечение событий и выберите Добавить событие логов .
  2. Введите Summary . Summary действует как отображаемое имя конфигурации событий логов. Summary должно быть уникальным для всех конфигураций.
  3. Введите запрос логов . Введите запрос мониторинга логов, чтобы отфильтровать данные логов для вашего события логов. Подробности см. в разделе Просмотрщик логов .
    ▶ Переход на Grail
    Если вы перешли на Ключ-АСТРОМ Grail , вы можете начать использовать функции DQL в запросах Log Monitoring. Подробности см. в разделе Обработка логов .
  4. Настройте шаблон события .
    • Укажите заголовок события для запуска. Если это событие логов запускает проблему, этот заголовок также будет заголовком проблемы.
    • Укажите Описание события. Обратите внимание, что в описании может быть один или несколько заполнителей
    • Выберите Тип события . Типы событий указывают на серьезность события.
  5. Выберите, следует ли разрешить объединение . Если инициируются два или более событий, Ключ-АСТРОМ может объединить эти события в одну проблему. Эта опция позволяет вам отключить это поведение, что может привести к большему количеству сообщаемых проблем.
  6. Добавить свойства . Свойство — это пара ключ/значение, которая задается для каждого сработавшего события. Вы можете иметь один или несколько заполнителей в качестве значения, которое будет извлечено из данных логов. Например, свойство с установленным Ключом PGI и Значением заполнителя {dt.entity.process_group_instance} извлечет значение экземпляра группы процессов из данных логов после срабатывания события. Если подстановка заполнителя не удалась, и ключ, и значение будут недоступны. Чтобы узнать, как получить полный список свойств, перейдите в API событий v2 — GET всех свойств событий . description Поле в теле ответа API объясняет, как работает каждое свойство. Например : dt.event.allow_davis_merge в описании указано: "Allow Davis AI to merge this event into existing problems (true) or force creating a new problem (false)".

Установить тайм-аут для события логов

События логов имеют тайм-аут по умолчанию 15 минут. Тайм-аут определяет, как часто источник событий должен обновлять событие логов, чтобы оно оставалось активным. Максимальное время, разрешенное для события логов, составляет шесть часов.

  • Событие логов остается активным, если источник события отправляет обновление до истечения времени ожидания события (по умолчанию: 15 минут).
  • Событие автоматически закрывается, если в течение периода ожидания не отправлено обновление.
  • Вы можете настроить время ожидания.

Чтобы установить пользовательский тайм-аут

  1. При создании или редактировании события логов выберите Добавить свойство .
  2. Установите ключ на dt.event.timeout.
  3. Установите значение в минутах (например, 12).

Чтобы убедиться, что для события, инициированного на уровне хоста, был добавлен пользовательский тайм-аут

  1. Перейдите в раздел Hosts или Hosts Classic (последняя версия Ключ-АСТРОМ) и выберите имя хоста.
  2. Прокрутите страницу вниз до раздела «События» и разверните раздел «Подробности события».

Заполнители

Заполнители — это атрибуты записи логов, которые можно использовать для извлечения фактического значения из данных логов.

  • Вы можете использовать любой атрибут, указанный в средстве просмотра логов для данной записи логов, в качестве заполнителя для извлечения значения этого атрибута.
  • Вы можете использовать дополнительные атрибуты записи логов в средстве просмотра логов в качестве заполнителей для значений, которые они представляют в данных логов. Заключите значения заполнителей в скобки (например, {dt.process.name}).

Пример

В этом примере мы создаем событие логов на основе полученных данных логов. Это событие логов будет вызвано, когда полученная запись логов совпадет с запросом логов. Запрос логов будет искать статус error на 555f5555-555a-5dd5-55f555a5b55d хосте. Мы добавляем свойства события логов (атрибуты), которые будут извлекать значения из данных логов и включать их в сводку проблемы.

  1. Перейдите в Настройки > Мониторинг логов > Извлечение событий и выберите Добавить событие логов .
  2. Установите следующее:
    • Краткое содержание: syslog-agent log event
    • Запрос логов: status="error" AND host.name="555f5555-555a-5dd5-55f555a5b55d"
    • Шаблон события - Название: [Log] log events demo
    • Шаблон события - Описание: {content}
    • Шаблон события - Тип события: Custom alert
  3. Отключите параметр Разрешить объединение .
  4. Для Properties добавьте следующие два свойства:
    • Ключ K8 Id со значением{dt.kubernetes.config.id}
    • Ключ Process Name со значением The process name is -> {dt.process.name}
  5. Сохраните изменения и дождитесь загрузки данных логов.

Пример страницы логов события

1232344.png

Если совпадение найдено, это событие логов создаст проблему с каждым инициированным событием логов.

775484.png

Проблема, созданная в результате сработавшего события логов, будет содержать информацию, сопоставленную с вашей конфигурацией событий логов. Заголовок проблемы — это заголовок события , а раздел воздействия отражает ваши настройки типа события и дополнительную информацию, которую вы настроили в описании и свойствах события логов.

Обратите внимание, что в этом примере, хотя мы настроили два свойства (K8 Idи Process Name), на проблемной странице отображается только одно. Это связано с тем, что только {dt.process.name} заполнитель имел значение в принятых данных логов. {dt.kubernetes.config.id} Значение не было найдено в этой конкретной записи логов, и определенное свойство было проигнорировано.