- Linux服务器可以很方便地开启snmpd监控,但是经常查看日志的管理员会发现,默认情况下/var/log/message中会生成大量的SNMPD的日志:
- Jul 1 09:50:04 doghouse snmpd[4159]: Connection from UDP: [10.0.1.10]:59768
- Jul 1 09:50:05 doghouse snmpd[4159]: Connection from UDP: [10.0.1.10]:56329
- Jul 1 09:50:05 doghouse snmpd[4159]: Connection from UDP: [10.0.1.10]:42126
- Jul 1 09:50:05 doghouse snmpd[4159]: Connection from UDP: [10.0.1.10]:47950
- Jul 1 09:50:05 doghouse snmpd[4159]: Connection from UDP: [10.0.1.10]:36634
- Jul 1 09:50:05 doghouse snmpd[4159]: Connection from UDP: [10.0.1.10]:52677
- Jul 1 09:50:05 doghouse snmpd[4159]: Connection from UDP: [10.0.1.10]:44864
- Jul 1 09:50:05 doghouse snmpd[4159]: Connection from UDP: [10.0.1.10]:54498
- 无用的信息太多了。不想看到这些多链接信息可以调整一下snmpd的debug级别:
- # echo "OPTIONS=\"-LS0-3d -Lf /dev/null -p /var/run/snmpd.pid\"" >> /etc/sysconfig/snmpd
- 或者直接改启动脚本
- vi /etc/init.d/snmpd
- 找到这一项
- OPTIONS="-Ls0-7d -Lf /dev/null -p /var/run/snmpd.pid"
- 改为
- OPTIONS="-LS0-3d -Lf /dev/null -p /var/run/snmpd.pid"
- 这个配置两个关键部分应该这样解读:
- 1.第一部分"-LS0-7d"
- -LS 将log记录到syslog文件中,按照定义的priority和facility的组合筛选日志消息。
- 语法为: -LS priority facility,注意是大写的S!!! -LS是组合priority和facility的唯一方法!!!
- snmpd日志等级的定义:
- 0 或 ! —- LOG_EMERG
- 1 或 a —- LOG_ALERT
- 2 或 c —- LOG_CRIT
- 3 或 e —- LOG_ERR
- 4 或 w —- LOG_WARNING
- 5 或 n —- LOG_NOTICE
- 6 或 i —- LOG_INFO
- 7 或 d —- LOG_DEBUG
- facility 可选的项目有:
- 'd' ---LOG_DAEMON
- 'u'---LOG_USER
- '0'-'7' LOG_LOCAL0到LOG_LOCAL7
- 例子中的0-7d说明了: 记录所有级别DAEMON产生的日志
- 【4d----凡是WARNING以上级别的,DAEMON产生的日志进行记录,其他低级别日志忽略掉。】
- 2.第二部分"-Lf /dev/null"
- 这个很简单,-Lf 参数指定了log存储的文件,除了上边要记入syslog的日志以外,其他日志直接导入到/dev/null中忽略掉。
- 那么上边这个OPTIONS="-LS4d -Lf /dev/null -p /var/run/snmpd.pid"应该写在哪里呢?
- 在RHEL 6.0之前,是加在/etc/sysconfig/snmpd.options
- 在RHEL 6.0之后,是加在/etc/sysconfig/snmpd
- 在FreeBSD里是写入到rc.conf,snmpd_flags=”-Lf /dev/null -LS4d”
- 3.另外,如果需要将snmp日志从syslog中分开,可以采用下边方法:
- 首先在/etc/syslog.conf中设定local0这个facility
- local0.* /var/log/snmpd.log
- 然后在配置中增加如下一行即可,至于如何解读,请各位参考上边。
- OPTIONS="-LS40 -A -Lf /dev/null -p /var/run/snmpd.pid"
- 4.最后别忘了重启服务
- [root@localhost log]# service snmpd restart
- [root@localhost log]# ps -ef |grep snmpd
- root 21943 1 0 13:30 ? 00:00:00 /usr/sbin/snmpd -LS0-3d -Lf /dev/null -p /var/run/snmpd.pid
- root 22243 21821 0 14:00 pts/3 00:00:00 grep snmpd
- [root@localhost log]#
转载于:https://blog.51cto.com/xlogin/1033877