利用Mail实时监测服务器程序状态

1 mail环境搭建

十年的西秀网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。营销型网站的优势是能够根据用户设备显示端的尺寸不同,自动调整西秀建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联从事“西秀网站设计”,“西秀网站推广”以来,每个客户项目都认真落实执行。

1.1 安装mail套件

ubuntu环境:apt-get install mutt msmtp

centos环境:我没有采用mutt,是用的sendmail或mail中的一种,有需要的同学可以参考这里。

1.2 配置

1.2.1 MUTT

系统全局设置/etc/Muttrc,如果使用某个系统用户,可以在~/.muttrc中设置。

vi .muttrc

 
 
  1. set sendmail="/usr/bin/msmtp"
  2. set use_from=yes
  3. set realname="20043790"
  4. set from=20043790@163.com
  5. set envelope_from=yes

1.2.2 MSMTP  创建~/.msmtprc和~/.msmtp.log,分别为配置和日志文件。
vi .msmtprc

 
 
  1. account default
  2. host smtp.163.com
  3. from 20043790@163.com
  4. auth plain
  5. user 20043790
  6. password 123456
  7. logfile ~/.msmtp.log

由于password是明码,所以我们需要修改此文件的权限。  chmod 600 .msmtprc

touch ~/.msmtp.log

1.2.3 验证邮件服务器

查看SMTP服务器是否支持认证的TLS加密:

敲入如下命令:msmtp --host=smtp.163.com --serverinfo回车

1.3 测试

1.3.1 发一封邮件

1.3.2 QQ PC客户端邮件提醒

1.3.3 微信邮件提醒

2 linux守护脚本

[root@root src]# cat daemon.sh

 
 
  1. [root@root src]# cat daemon.sh
  2. #!/bin/sh
  3. programs="app1 app2 app3"
  4. while true
  5. do
  6.    for p in $programs
  7.    do
  8.       ps -e|grep $p |grep -v "grep" >/dev/null
  9.       if [ "$?" -ne 0 ]
  10.       then
  11.          timestr=`date +20%y%m%d_%H%M%S`
  12.          echo "Time:$timestr, restart <$p>"
  13.          /root/src/$p >/root/src/log/${p}_$timestr.log 2>&1 &
  14.          echo "Unfortunately, $p restart."|mail -s warning_restart 412493505@qq.com -- -f 20043790@163.com
  15.       #else
  16.          #echo "$p is running"
  17.       fi
  18.    done
  19.    sleep 1
  20. done

我的云主机是centos的,用的是mail发邮件,同样可以用mutt的命令行发送方式。

该守护脚本守护三个程序 app1-3,当有某一个程序死掉后,重启该程序并开启新的log,同时发邮件到指定的邮箱。

3 验证

killall app1后,守护脚本在1秒内将程序重启,约15秒后收到邮件提醒。

文章名称:利用Mail实时监测服务器程序状态
文章分享:http://www.shufengxianlan.com/qtweb/news43/269143.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联