又一个关于nagios联系人的接口脚本
#!/bin/shTechWeb-技术社区6^/z+V k#q1S.K
tech.techweb.com.cn$G7t.W&q/W/s!x7_4D
CACHE_FILE=/usr/local/nagios/var/objects.cache
)\9^3X&?-A+g:Y7z/E([4wCONTACT_GROUP_FILE=/tmp/object_contactgroup_tmp_file
9G6F-j#u6Rtech.techweb.com.cnHOST_FILE=/tmp/object_host_tmp_file#z2N8m1x&D,j$_
SERVICE_FILE=/tmp/object_service_tmp_file
'L$g+_2X5B,G'm!t(`"_&\程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛,j%n)P,e9W+_1I(S:s*N8z
check_host() {TechWeb-技术社区%{!F7e*P2v,e1E/y A6M
if grep -q "\<$contact_group\>" $HOST_FILE程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛0B6`7y*i&W3j3U/B
then
&[4m"y7?:n3`:ZTechWeb-技术社区 host=`grep -B4 "\<$contact_group\>" $HOST_FILE | grep host_name | awk '{print "<tr><td>"$2"</td></tr>"}'`程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛#_2s'@/X-}-V"p
echo -e "$host"
n;[1q6L1D&A/j7x"O)b#p程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛 fi程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛&u,y9M1M4j;l"g%o
}'?%e6H,X-V$q/C a,f
check_service() {
-U/[#P9K%q&k*x4i6b!}7b%XTechWeb-技术社区 for hosts in `grep -B5 "\<$contact_group\>" $SERVICE_FILE | grep host_name |awk '{print $2}' | sort | uniq`1m5`1i0X.f6O
do
"q+d)x+o!I'I(x*H3J echo -e "<tr><td>$hosts</td>"
'I*z/].a)T6n grep -B5 $contact_group $SERVICE_FILE |grep -A1 $hosts$ | grep service_description | awk '{print "<td>"$2"</td>"}'tech.techweb.com.cn+~'h-w)B"A"[!M!G
echo -e "</tr>"
!?${*S%q;s-a y/P.ftech.techweb.com.cn done
6Z!t/g:L2v1N-m*m&c/]}%z/};c%O7[9b.y&P6M+P8Z
,r9K*`4K4r2[
person=$1程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛2i"} [:{&R#c*S
grep -A4 "define contactgroup {" $CACHE_FILE >$CONTACT_GROUP_FILE程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛 w v(T+K6s
grep -A6 "define host {" $CACHE_FILE >$HOST_FILEtech.techweb.com.cn*S!H6S'f3}6L
grep -A5 "define service {" $CACHE_FILE >$SERVICE_FILE0`2A1G"b;G2];w/T
if grep -q "${person}_level" $CONTACT_GROUP_FILE*q9r/f!?*_#I8b#V%w.I
then"x&Z!U'@)g2o7k
echo -e "报警发给${person}节点有:"
/q"N!L&x#[5w:? echo "<table id='table' cellspacing='0' cellpadding='0' border='1'>"
3h8J!}!L/V for contact_group in `grep -B2 "${person}_level" $CONTACT_GROUP_FILE |grep contactgroup_name | grep -v charge | awk '{print $2}'`!z#`;?(Z-W;A!@:]-\5x
dotech.techweb.com.cn;f"H*W6Y(Q'N5M w*}
check_hosttech.techweb.com.cn$U `2y/e(d-E$r4P
done
!z)r&B+`,s.K'[5s echo "</table>"/W,I)O)P+x)n
echo -e "报警发给${person}服务有:"tech.techweb.com.cn3Y8O9E f.~0r.m#w0a;A
echo "<table id='table' cellspacing='0' cellpadding='0' border='1'>"
1y6y9z%e#a.Q1G,C%W3}TechWeb-技术社区 for contact_group in `grep -B2 "${person}_level" $CONTACT_GROUP_FILE |grep contactgroup_name | grep -v charge | awk '{print $2}'`
;d2v1K+F8s+`#x5i%O6H6k do程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛 s W6f9J.w6p
check_servicetech.techweb.com.cn$o3B)E3y7y"W J0_*U&{
done7B+k:P5n1S(R;v9K5{*Z
echo "</table>"9N3J#Y"k'Z$F
else4t6i#p8t7u
echo "<div>you input the wrong person,please check</div>"tech.techweb.com.cn'_ j'w*_)]:q$?5Z
exit 1TechWeb-技术社区,Y!y!I$i%T6p&{6w2q V;[$[
fi
|