首页 > 移动平台 > 详细

Nagios check_logfiles插件的使用记录

时间:2015-12-19 07:41:08      阅读:1087      评论:0      收藏:0      [点我收藏+]

1 获取与安装

https://labs.consol.de/assets/downloads/nagios/check_logfiles-3.7.4.tar.gz

链接可能会失效,建议去官网下载。

https://labs.consol.de/nagios/check_logfiles/

阅读官网的使用说明,但感觉还是不太明了,毕竟是英文 的,

http://blog.chinaunix.net/uid-261392-id-2138989.html

这是开源中国上面一兄弟写的介绍,让你入门。

tar xvf check_logfiles-3.7.4.tar.gz

./configure

make && make install

安装完成。

安装的时候使用的是root用户,安装后其实是在libexec下多了一个check_logfiles程序。

建议把该程序的owner改为nagios.nagiios.其实不改也可以,它的权限是其他组也可以执行。

chown nagios:nagios /usr/local/nagios/libexec/check_logfiles

2 我以在某节点dn42上监控datanode与nodemanager进程的日志为目标,做了一下处理

a. nagios目录/usr/local/nagios/下创建var/tmp目录,如果没有,并且权限要给nagios.nagios.

因为我们需要配置check_logfiles来存储状态文件和一些信息在这个目录里面。编译时未指定,它的默认目录可能没有访问权限。

b.创建配置文件,我放在/usr/local/nagios/etc/log.cfg

配置如下:

$seekfilesdir = /usr/local/nagios/var/tmp;
$protocolsdir = /usr/local/nagios/var/tmp;
$scriptpath = /usr/local/nagios/var/tmp;
@searches = (
{
    tag => ‘dn42_datanode,
    logfile => /home/hadoop/app/hadoop/logs/hadoop-hadoop-datanode-dn42pub.log,
    rotation => hadoop-hadoop-datanode-dn42pub.log.[0-9],
    criticalpatterns => [
     ERROR .*,
     FAILURE .*,
    ]

},
{
    tag => ‘dn42_nm,
    logfile => /home/hadoop/app/hadoop/logs/yarn-hadoop-nodemanager-dn42pub.log,
    rotation => yarn-hadoop-nodemanager-dn42pub.log.[0-9],
    criticalpatterns => [
     ERROR .*,
     FAILURE .*,
    ]

},
);

我这里没有配置warningpatterns,暂时没有此需要,如果有需要可以配置上。

c.在nrpe里面配置命令:

command[check_logfiles]=/usr/local/nagios/libexec/check_logfiles -f /usr/local/nagios/etc/log.cfg

d.在nagios服务器端配置这台机器的配置文件,在原有的配置文件中添加新的服务。(原来我放在nn1上/usr/local/nagios/etc/servers/dn42pub.cfg中,只需要添加如下即可)

;;monitor hadoop datanode and nodemanager process log content
define service{
use test-service
host_name dn42pub
service_description log_check
check_command check_nrpe!check_logfiles
is_volatile           1
max_check_attempts    1
}

注意,我这里使用的test-service是我在template.cfg中配置的,重写了它的检查周期为一分钟,这里需要注意。

dn42端执行:service xinetd reload即可

在nagios服务器端使用命令 nagios –v /usr/local/nagios/etc/nagios.cfg

检查如果没有错误,使用service nagios reload即可。

但是我在web端看到是unknown状态,这是因为nagios用户没有对日志目录的访问权限。

遂做以下修改。

chmod 705 /home/hadoop

即可。

3。其他机器如果需要安装,则可以如下操作,

直接scp /usr/local/nagios/libexec/check_logfiles targethost:/usr/local/nagios/libexec

makedir –p /usr/local/nagios/var/tmp

chown –R nagios:nagios /usr/local/nagios/var/tmp

修改nrpe.cfg 和并复制修改log.cfg即可

Nagios check_logfiles插件的使用记录

原文:http://www.cnblogs.com/huaxiaoyao/p/5058601.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!