Nagios監(jiān)控全解-手機(jī)短信
自我監(jiān)控實(shí)現(xiàn):測(cè)試短信發(fā)送
正常情況下,沒有任何服務(wù)器能向手機(jī)發(fā)送短消息的,要到達(dá)這個(gè)目的,得花錢購(gòu)買短信服務(wù)(也有些人運(yùn)用飛信一類的方式來達(dá)到這個(gè)目的,個(gè)人覺得對(duì)于運(yùn)營(yíng)網(wǎng)站不是太靠譜)。要是在幾年前,自己申請(qǐng)短信通道還是有可能的,2005年以后似乎門檻提高了很多。當(dāng)你付費(fèi)成功后,短信服務(wù)商會(huì)給你提供入口及加密關(guān)鍵字;然后我們自己寫個(gè)腳本就可以發(fā)送短信。以下是我的服務(wù)器用perl寫的腳本:
- #!/usr/bin/perl -w
- use strict;
- use LWP::Simple;
- use URI::Escape;
- use Digest::MD5;
- my ($mobile, $content) = @ARGV;
- my $log_control = 1;
- my $key = 'Ysdbyhd6T';
- my $souce_content = substr($mobile, 0, 8) . substr($mobile, -10, 10) . $key;
- my $md5 = Digest::MD5->new;
- $md5->add($souce_content);
- my $result_conent = uc($md5->hexdigest);
- my $url = "http://http.asp.sh.cn/MT.do?Username=sery&Password=([-BVG'0&Mobile=$mobile&Content=$content&Keyword=$result_conent";
- my $result = get $url;
- if($log_control) {
- my $fh;
- open($fh, '>> /var/log/sms.log') or die "can't open log: $!";
- print $fh join(' ', time, $result, "\n");
- close $fh;
- }
(以上腳本有宇捷提供)
說明:
1、my $key = 'Ysdbyhd6T'' 短信服務(wù)商給的驗(yàn)證關(guān)鍵字。
2、my $url="….." 短信服務(wù)商給的用戶名、密碼以及短信服務(wù)商的訪問接口(url)全包括在這里了。
我們把這個(gè)文件放在目錄 /usr/local/bin/ 下面,把它命名為 sms_send.pl ,用命令 chomod +x /usr/local/bin/sms.pl 給與它執(zhí)行權(quán)限。這個(gè)腳本在各種各樣的unix、linux下都可以正常工作,nagios報(bào)警短信發(fā)送就是靠它了。如果讀者也打算拿這個(gè)腳本發(fā)送短信的話,只要改一下key值和url值就可以直接使用。
接下來就是驗(yàn)證是否可以發(fā)送短信,執(zhí)行命令行 /usr/local/bin/sms.pl 13300108888 "It is a test" ,回車后數(shù)秒鐘,你的手機(jī)應(yīng)該能收到帶有內(nèi)容"It is a test"的短信息。為了保證短信服務(wù)的可靠性,我做了一個(gè)策略:每天下午6點(diǎn)定時(shí)給我發(fā)一個(gè)通知短信;告訴我短信發(fā)送是正常的,也是該下班回家了。做法:執(zhí)行 crontab -e 然后輸入行
- 00 18 * * * /usr/local/bin/sms.pl 13300108888 "It is Ok" 。
本文講述的是:Nagios監(jiān)控的表現(xiàn)形式手機(jī)短信 第一節(jié):web方式
【編輯推薦】