Назад | Перейти на главную страницу

Уменьшите подробность ведения журнала SNMPd

SNMPd в моих системах CentOS отправляет сообщения журнала в системный журнал каждый раз, когда он получает запрос от моих инструментов мониторинга. Есть ли способ снизить уровень детализации SNMPd? Это добавляет много беспорядка в журналы.

Sep 12 13:05:40 myhost snmpd[7073]: Received SNMP packet(s) from UDP: [ipaddr]:42874
Sep 12 13:05:40 myhost snmpd[7073]: Connection from UDP: [ipaddr]:49272

Спасибо!

Проверьте команду, которая запускается snmpd (возможно где-нибудь /etc/rc.d/ - в Ubuntu это /etc/defaults/snmpd) для параметров регистрации:

SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid -g root 0.0.0.0'

Или найти в ps aux | grep snmpd вывод.

В страница руководства предоставляет параметры ведения журнала:

-Ls ОБЪЕКТ

Записывать сообщения через системный журнал, используя указанное средство ('d' для LOG_DAEMON, 'u' для LOG_USER или '0' - '7' для LOG_LOCAL0 - LOG_LOCAL7). Существуют также версии каждой из этих опций «в верхнем регистре», которые позволяют ограничить соответствующий механизм ведения журнала определенными приоритетами сообщения.

Для -LF и -LS спецификация приоритета ставится перед файлом или токеном объекта. Признанными приоритетами являются:

0 or ! for LOG_EMERG,
1 or a for LOG_ALERT,
2 or c for LOG_CRIT,
3 or e for LOG_ERR,
4 or w for LOG_WARNING,
5 or n for LOG_NOTICE,
6 or i for LOG_INFO, and
7 or d for LOG_DEBUG. 

Значение по умолчанию довольно подробное (всего на 2 уровня ниже отладки):

Нормальный вывод регистрируется (или будет!) С уровнем приоритета LOG_NOTICE.

Если вы входите в системный журнал через LOG_DAEMON (-Lsd), вы можете уменьшить его, например, до LOG_WARNING с -LSwd/-LS4d, или LOG_ERR с -LSed/-LS3d.

(Отредактировано, чтобы расположить параметры в правильном порядке.)

Чтобы установить минимальный приоритет LOG_WARNING (что я обычно использую), просто измените argopt:

-ЛСД

к

-LSwd

Что означает:

  • S: syslog, дальше идет приоритет
  • ш: (или 4) записывать только предупреждения и более важные сообщения
  • d: используйте средство LOG_DAEMON

Как указано в человек (но на самом деле отсутствует четкий пример):

Для -LF и -LS спецификация приоритета ставится перед файлом или токеном объекта.

dontLogTCPWrappersConnects

Если snmpd был скомпилирован с поддержкой TCP Wrapper, он регистрирует каждое соединение с агентом. Этот параметр отключает сообщения журнала для принятых подключений. Запрещенные соединения по-прежнему будут регистрироваться.

Т.е. Добавить dontLogTCPWrappersConnects true в snmpd.conf.

Я озадачен, почему это сообщение журнала рассматривается выше LOG_DEBUG для службы мониторинга (и той, которая поддерживает UDP) :-(. journalctl -o verbose показывает, что сообщение имеет PRIORITY = 6 (INFO), что совпадает с обычными сообщениями запуска для snmpd.

Я полностью удаляю директиву "-Lsd" из /etc/sysconfig/snmpd.options в установках CentOS / Redhat, оставив файл, который гласит:

# snmpd command line options
OPTIONS="-Lf /dev/null -p /var/run/snmpd.pid -a"

Включая стандарт (входит в /etc/snmp/snmp.conf файл для CentOS 6.5) сработала для меня, чтобы уменьшить многословие, особенно в отношении ведения журнала TCP / UDP SNMP-соединения:

dontLogTCPWrappersConnects yes

Вот более «подробный» отрывок из значения по умолчанию snmp.conf файл:

# We do not want annoying "Connection from UDP: " messages in syslog.
# If the following option is commented out, snmpd will print each incoming
# connection, which can be useful for debugging.

dontLogTCPWrappersConnects yes

на raspberry pi / raspbian расположение файла

/lib/systemd/system/snmpd.service

то перед перезапуском службы snmpd необходимо выполнить перезагрузку демона.

systemctl демон-перезагрузка