User Tools

Site Tools


поиск_важных_событий_в_syslog

Поиск важных событий в syslog

Реклама

  • Как быстро на вопрос “все ли у нас в порядке” поможет ответить просмотр лог файлов системы? Обычно за “роем” сообщений “ничего не видно”. Давайте разберемся, как можно выделить то что действительно важно

Техническое задание

  • Отфильровать важные сообщения по ключевым словам (создать регулярное выражение с помощю LLM)
  • Настроить отдельный журнал для сообщений с высокой степенью критичности/уровнием важности
  • Разаработать приложение для уведомления тоькло о важных сообщениях с помощю LLM

Запись вебинара

Шаг 1. Что у нас есть, для начала

Шаг 2. Поиск важных событий в системе

  • Проверяем - все ли важные события содержат слово error, как это представлено в примере Мониторинг файлов журналов zabbix documentation, и, является ли наличие его признаком важного события
gate# journalctl -S -10m | grep -i error
...
Aug 18 14:48:07 gate.corp13.un kernel: vmwgfx 0000:00:02.0: [drm] *ERROR* vmwgfx seems to be running on an unsupported hypervisor.
... 
  • Добавляем Сервис rsyslog на gate (потребуется для zаbbix или отправки журналов на коллектор)
gate# tail -f /var/log/syslog
2026-07-17T19:49:49.451736+03:00 gate dhcpd[943]: ICMP Echo reply while lease 192.168.13.101 valid.
2026-07-17T19:49:49.452103+03:00 gate dhcpd[943]: Abandoning IP address 192.168.13.101: pinged before offer
2026-07-17T19:49:54.446616+03:00 gate dhcpd[943]: DHCPDISCOVER from 08:00:27:98:57:d0 via eth0
Aug  7 05:33:27 ns named[617]: transfer of 'eusvc.bmstu.ru/IN/common' from 195.19.33.108#53: failed to connect: timed out 

2026-07-31T12:21:16.642667+03:00 server named[4622]: zone comp13.un/IN/inside: refresh: NODATA response from primary 172.16.1.254#53 (source 0.0.0.0#0)
2026-07-31T12:25:23.495897+03:00 server named[4622]: zone comp13.un/IN/inside: expired
  • Вариант 1: отбираем события по важным словам, исключая отдадочные и, не представляющие интерес
  • LLM промпты:
  1. сгенерируй фильтр для поиска строк со словами error или abandon, исключая строки со словами test или debug, в любом регистре, задай уточняющие вопросы
  2. сгенерируй регулярное выражение PCRE для поиска строк со словами error или abandon, исключая строки со словами test или debug, в любом регистре
  3. сформируй тестовые данные без комментариев
gate# cat /var/log/syslog | grep -P '^(?!.*(?i:test|debug|vmwgfx)).*(?i:error|abandon|fail|expire)'
  • Вариант 2: отбираем события по степени критичности/уровни важности событий в syslog
  • Создаем Журнал важных сообщений в rsyslog, пишем в него все события с указанием уровня важности (можно и источник события)
  • Убеждаемся, что они соответствуют примерам важных событий
Jul 31 13:03:40 gate [info] dhcpd[716]: DHCPACK on 192.168.13.103 to 08:00:27:f9
:8e:73 (clientN) via eth0
Jul 31 13:03:44 gate [err] dhcpd[716]: Abandoning IP address 192.168.13.103: declined.
Jul 31 13:03:44 gate [info] dhcpd[716]: DHCPDECLINE of 192.168.13.103 from 08:00:27:f9:8e:73 (clientN) via eth0: abandoned
...
Aug  7 05:33:27 ns [local2.err] named[617]: transfer of 'eusvc.bmstu.ru/IN/common' from 195.19.33.108#53: failed to connect: timed out 

Jul 31 14:50:13 server [info] named[5042]: zone comp13.un/IN/inside: refresh: NODATA response from primary 172.16.1.254#53 (source 0.0.0.0#0)
Jul 31 14:54:43 server [warning] named[5042]: zone comp13.un/IN/inside: expired
  • Добавляем фильтрацию неинтересных событий
gate# cat /var/log/syslog.high | egrep -v 'PNP0A03|LPM|vmwgfx|ehci_hcd'
поиск_важных_событий_в_syslog.txt · Last modified: 2026/09/01 07:32 by val