IT星球论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 294|回复: 0

Nagios监控Sphinx的indexer日志

[复制链接]

1997

主题

1

好友

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

优秀会员 助人为乐 辛勤工作 技术精英 多才多艺 优秀班竹 灌水天才 星球管理 宣传大使 灌水之王 财富勋章 版主勋章 动漫勋章 勤奋会员 论坛精英 PS高手 心 8 闪游皮肤 双鱼座 8★8➹ 志愿者 乖

发表于 2015-8-24 15:21:53 |显示全部楼层
Nagios监控sphinx的indexer日志
以前写过一个监控sphinx的searchd的插件,参见
http://www.chengyongxu.com/blog/nagios监控sphinx/
因为研发要求关注一下sphinx的indexer是不是在要求的时间内更新了,于是写一个简单插件吧
先把更新时间最早的文件和它的改动时间打出来,和规定的时间UPDATE_TIME比较,发现是规定时间之前更新的就报警。
使用方法:
01#1.登上运行有sphinx的服务器上,下载脚本放到nagiOS的libexec目录下,例如:

02cd /usr/local/nagios/libexec/

03wget http://down.chengyongxu.com/check_indexer_log

04#

05#2.改属主,加执行权限

06chown nagios:nagios check_indexer_log

07chmod 755 check_indexer_log

08#

09#3.在nrpe.cfg文件中增加下边一行,参数根据你的需要修改

10#----------------------------增加文字-开始----------------------------

11command[check_indexer_log]=/usr/local/nagios/libexec/check_indexer_log

12#----------------------------增加文字-结束----------------------------

13#

14#4.保存退出后重启nrpe

15service nrpe restart

16#

17#5.要主监控服务器上增加一个服务监控

18#----------------------------增加文字-开始----------------------------

19    define service{

20    host_name       10.0.0.166

21    service_description       check_indexer_log

22    check_command       check_nrpe!check_indexer_log

23    max_check_attempts       3

24    check_interval       10

25    retry_interval       5

26    check_period       24x7

27    notification_interval       30

28    notification_period       24x7

29    notification_options      w,u,c

30    #contacts       contacts(*)

31    contact_groups       sa_groups

32    }

33#----------------------------增加文字-结束----------------------------

34#

35#6.保存退出后重启nagios

36service nagios restart



插件贴出如下:
01#!/bin/bash

02

03LOG_DIR=/usr/local/sphinx/var/log

04UPDATE_TIME=40

05

06# 上次改动时间最早的文件和其改动时间,格式为03-0317:25

07FILE_A=`ls -t $LOG_DIR/*searchd.log | tail -n 1`

08TIME_A=`ls -tl $LOG_DIR/*searchd.log | tail -n 1 | awk '{print $6$7}'`

09# 要求的最近更新时间,格式为03-0317:25

10TIME_B=`date +%m-%d%H:%M -d "$UPDATE_TIME min ago"`

11

12if [[ "$TIME_A" > "$TIME_B" ]]

13then

14    echo "OK | All files changed in $UPDATE_TIME minutes"

15else

16    echo "$FILE_A last update time is $TIME_A"

17    exit 2

18fi
http://www.chengyongxu.com/blog/nagios%E7%9B%91%E6%8E%A7sphinx%E7%9A%84indexer%E6%97%A5%E5%BF%97/
Nagios监控Sphinx的indexer日志

该会员没有填写今日想说内容.
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

回顶部