User Tools

Site Tools


zabbix_logs

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
zabbix_logs [2025/11/07 12:58]
val
zabbix_logs [2026/04/13 14:47] (current)
val
Line 2: Line 2:
  
   * [[https://​www.zabbix.com/​documentation/​6.0/​ru/​manual/​config/​items/​itemtypes/​log_items|Руководство по Zabbix Мониторинг файлов журналов]]   * [[https://​www.zabbix.com/​documentation/​6.0/​ru/​manual/​config/​items/​itemtypes/​log_items|Руководство по Zabbix Мониторинг файлов журналов]]
 +  * [[https://​www.zabbix.com/​documentation/​current/​en/​manual/​regular_expressions]]
   * [[https://​habr.com/​ru/​articles/​737058/​|Логи из Linux в Zabbix. Подробнейшая инструкция]]   * [[https://​habr.com/​ru/​articles/​737058/​|Логи из Linux в Zabbix. Подробнейшая инструкция]]
   * [[https://​www.zabbix.com/​forum/​zabbix-help/​457279-trying-to-make-a-trigger-of-a-monitored-logfile|Trying to make a trigger of a monitored logfile]]   * [[https://​www.zabbix.com/​forum/​zabbix-help/​457279-trying-to-make-a-trigger-of-a-monitored-logfile|Trying to make a trigger of a monitored logfile]]
Line 24: Line 25:
 <​code>​ <​code>​
 # ###apt install rsyslog # ###apt install rsyslog
 +
 +# cat /​var/​log/​syslog | grep -i '​error'​
  
 # cat /​var/​log/​syslog | egrep -v '​DHCPACK|DHCPREQUEST|Wrote.*leases|sessionclean|ALLOWED|run-parts.*report'​ # cat /​var/​log/​syslog | egrep -v '​DHCPACK|DHCPREQUEST|Wrote.*leases|sessionclean|ALLOWED|run-parts.*report'​
  
 +# grep -P '​^(?​!.*(?​i:​test|debug|verbose)).*(?​i:​error|warn|critical)'​ /​var/​log/​syslog
  
 +# cat /​etc/​zabbix/​zabbix_agentd.conf
 +</​code><​code>​
 +...
 +ServerActive=server
 +...
 +</​code><​code>​
 # usermod -aG adm zabbix # usermod -aG adm zabbix
 +
 +# hostname
 +abcd.corpX.un
  
 # service zabbix-agent restart # service zabbix-agent restart
 +
 +Host: abcd.corpX.un
  
 Item: Item:
-  Name: Log syslog+  Name: Error log in syslog
   Type: Zabbix Agent(active)   Type: Zabbix Agent(active)
-  Key: logrt[/​var/​log/​syslog]+  Key: log[/​var/​log/​syslog,​(?​i)error] 
 +       ​log[/​var/​log/​syslog,​^(?​!.*(?​i:​test|debug|verbose)).*(?​i:​error|warn|critical),,,​skip] 
 +  History: 1d 
 + 
 +Item: 
 +  Name: Unknown log in syslog 
 +  Type: Zabbix Agent(active) 
 +  Key: log[/​var/​log/​syslog,,,,skip]
   Preprocessing:​   Preprocessing:​
     Name: Does not match regular expression     Name: Does not match regular expression
Line 42: Line 64:
  
 Trigger: Trigger:
-  Name: Log syslog on {HOST.NAME}+  Name: Error|Unknown log in syslog on {HOST.NAME}
   Severity: Warning   Severity: Warning
-  Expression: nodata(/​Zabbix server/logrt[/​var/​log/​syslog],​1m)=0 +  Expression: nodata(/​Zabbix server/log[/​var/​log/​syslog, ... ],1m)=0 
-  ​+ 
 +</​code>​ 
 + 
 +===== Разбор от DeepSeek ===== 
 + 
 +<​code>​ 
 +Разбор текущей конфигурации:​ 
 +1. Подготовка системы (bash команды) 
 +bash 
 +# ###apt install rsyslog 
 +Установка rsyslog (обычно уже есть) 
 + 
 +bash 
 +# cat /​var/​log/​syslog | grep -i '​error'​ 
 +Ручной поиск ошибок (для проверки) 
 + 
 +bash 
 +# cat /​var/​log/​syslog | egrep -v '​DHCPACK|DHCPREQUEST|Wrote.*leases|sessionclean|ALLOWED|run-parts.*report'​ 
 +Просмотр syslog без "​шумных"​ сообщений (DHCP, сессии и т.д.) 
 + 
 +bash 
 +# usermod -aG adm zabbix 
 +Критически важно! Добавляем пользователя zabbix в группу adm, чтобы он мог читать /​var/​log/​syslog (обычно права 640, root:adm) 
 + 
 +2. Проблема в текущих Item'​ах 
 +У тебя два item'​а,​ но в триггере почему-то три выражения:​ 
 + 
 +Item 1: 
 + 
 +text 
 +Key: log[/​var/​log/​syslog,​rror] 
 +Это ищет строки содержащие "​rror"​ (опечатка?​ Должно быть "​error"?​) 
 + 
 +Item 2: 
 + 
 +text 
 +Key: log[/​var/​log/​syslog] 
 +Preprocessing:​ Does not match regular expression 
 +Это собирает ВСЕ строки,​ но отбрасывает те, что попадают под regex. 
 + 
 +3. Оптимизированная версия 
 +Вот как лучше настроить:​ 
 + 
 +bash 
 +# /​etc/​zabbix/​zabbix_agentd.conf 
 +# Убедись,​ что активные проверки включены 
 +ServerActive=zabbix.server.com 
 +Hostname=abcd.corpX.un 
 +HostMetadata=linux 
 +Лучше сделать один item: 
 + 
 +text 
 +Item: 
 +  ​Name: Syslog errors and warnings 
 +  Type: Zabbix Agent (active) 
 +  Key: log[/​var/​log/​syslog,"​(?​i)(error|fail|critical|alert)",,,​skip,,​] 
 +  Type of information:​ Log 
 +  History: 7d 
 +Или два отдельных (для разделения важности):​ 
 + 
 +text 
 +# Item для реальных ошибок 
 +Item: 
 +  Name: Syslog - Errors 
 +  Type: Zabbix Agent (active) 
 +  Key: log[/​var/​log/​syslog,"​(?​i)error|fail|critical",,,​skip,,​] 
 +  Type: Log 
 +  History: 7d 
 + 
 +# Item для всего остального (с фильтрацией шума) 
 +Item: 
 +  Name: Syslog - Other important messages 
 +  Type: Zabbix Agent (active) 
 +  Key: log[/​var/​log/​syslog] 
 +  Preprocessing:​ 
 +    - Name: Does not match regular expression 
 +      Parameters: DHCPACK|DHCPREQUEST|Wrote.*leases|sessionclean|ALLOWED|run-parts.*report|cron.*CMD|systemd.*Started 
 +    - Name: Custom on fail 
 +      Parameters: Discard value 
 +4. Правильный триггер 
 +yaml 
 +Trigger: 
 +  Name: Error in syslog on {HOST.NAME} 
 +  Severity: Average ​ # или Warning 
 +  Expression: | 
 +    min(/Zabbix server/​log[/​var/​log/​syslog,"​(?​i)error|fail|critical"​],​5m) > 0 
 +Или для обоих типов:​ 
 + 
 +yaml 
 +Trigger: 
 +  Name: New error in syslog on {HOST.NAME} 
 +  Severity: High 
 +  Expression: | 
 +    min(/Zabbix server/​log[/​var/​log/​syslog,"​(?​i)error"​],​5m) > 0 
 + 
 +Trigger: 
 +  Name: New important message in syslog on {HOST.NAME} 
 +  Severity: Info 
 +  Expression: | 
 +    min(/Zabbix server/​log[/​var/​log/​syslog,"​(?​i)warn|unknown|invalid"​],​5m) > 0 
 +    and 
 +    min(/Zabbix server/​log[/​var/​log/​syslog,"​(?​i)error|fail|critical"​],​5m) = 0 
 +5. Дополнительные полезные настройки 
 +В zabbix_agentd.conf можно добавить:​ 
 + 
 +bash 
 +# Увеличить буфер для логов 
 +BufferSize=1000 
 + 
 +# Специфичные для логов параметры 
 +LogRemoteCommands=0 
 +HostInterface=abcd.corpX.un 
 +Проверка прав: 
 + 
 +bash 
 +# После usermod нужно проверить:​ 
 +id zabbix 
 +# Должно показать:​ uid=... gid=... groups=...,​adm 
 + 
 +# Перезапуск агента 
 +systemctl restart zabbix-agent 
 + 
 +# Проверка лога агента 
 +tail -f /​var/​log/​zabbix/​zabbix_agentd.log 
 +Еще полезные regex для фильтрации:​ 
 + 
 +text 
 +# Исключить совсем уж шумные сообщения 
 +DHCPACK|DHCPREQUEST|Wrote.*leases|sessionclean|ALLOWED|run-parts.*report|cron.*CMD|systemd.*Started|systemd.*Stopped|User Slice|Session|Removed
  
 </​code>​ </​code>​
  
zabbix_logs.1762509492.txt.gz · Last modified: 2025/11/07 12:58 by val