流程设计
程序主要分为 monitor.sh 主监控程序和 monitor_helper.sh 助手程序,下面将分别介绍:
1、monitor.sh
主监控程序,每 1 分钟运行一次,如果发现了某个检查点有问题,程序会自动给 DBA 发送一条短信,这样做是为了保证在出现问题的时侯 DBA 能在最短的时间内做出反映。
主监控程序流程图,如下:
正如上面展示的,只有某个检查点出现问题的时候,才会给DBA发短信提醒,如果正常的时候只会写日志,不会打扰DBA,这样保证让DBA更专心的做其它工作。
2、monitor_helper.sh
那么大家想一下,如果主监控进程停掉了怎么办呢?我们会误认为一切监控检查点都是正常的,所以我们需要一个方案来保证主监控程序正常运转,于是助手程序产生,每天 10 点运行一次,用于辅助主监控程序。它有如下 2 个功能:
监控主程序是否正常运转:它每天扫描日志文件,如果主监控程序当天的日志文件存在,那么说主监控进程是正常工作的,此时助手程序不做什么动作;如果找不到日志,那么它会给 DBA 发短信提醒主监控进程意外死掉了。
清理日志:由于主监控程序是每分钟调用 1 次,那么随着时间的推移它会产生大量的日志文件,如果不清理,会直接影响机器的存储空间,所以需要此助手程序进行日志清理的
助手程序流程图,如下:
这样我们即有主监控程序,又有助手程序,所以程序的安全性已经很高了,这回DBA就可以高枕无忧了。