Shell脚本之linux服务器服务进程监控


aihuafeng66t
克里斯蒂亚诺诺 2024-01-09 14:21:54 51436 赞同 0 反对 0
分类: 资源
Shell脚本之linux服务器服务进程监控

一、需求说明
  作为一名主机运维工程师,日常工作中我们每天都需要巡检服务器的运行情况,包括服务器的网络通断性、磁盘利用率、服务进程等内容。为了减少工作量我们可以通过编写shell脚本,实现服务器的批量巡检。写好脚本之后我们可以设置定时任务,将巡检结果邮件发送给自己就OK啦。为了检查服务进程是否存在,我们常用命令ps -ef |grep 关键字 过滤查看我们的进程是否存在。此脚本就是基于此命令的基础上实现的。

二、脚本设计及内容
1、设计思路说明
通过ssh免密,使用ssh直接远程执行命令;Linux之SSH免密登录配置
使用pgrep -f 关键字命令查看进程是否存在;
使用$?判断进程号是否为空;
将结果存储到检查日志记录文件;
如果有进程不存在则邮件告知不存在信息,每天早上7点、晚上9点明确通知检查结果;Linux之mailx软件安装及使用
清理超过30天的巡检记录。
————————————————

3、脚本内容
#!/bin/bash
#script name: process_check.sh
#author: wuhs
#description: 此脚本用于系统进程服务巡检

#参数定义
#巡检日志存储路径
resultlog='/root/scripts/xunjian/process/recordlog'
#待巡检进程列表
processes="/root/scripts/xunjian/process/processes.txt"
#进程巡检方法
function process_monitor(){
datedir=`date +%F-%H`
mkdir -p $resultlog/$datedir
#while循环按行读取进程列表
while read line
do
        #获取主机名、ssh端口号、service服务关键字
        host=`echo $line | awk '{print $1}'`
        port=`echo $line | awk '{print $2}'`
        service=`echo $line | awk '{print $3}'`
        #获取service服务的描述说明
        des=`echo $line | awk '{print $4}'`
        #查看进程是否存在
        ssh $host -p $port -n pgrep -f $service &>/dev/null
        #检查结果写入日志文件
        if [ $? -eq 0 ];then
                echo "$host $des 正常" >> $resultlog/$datedir/success.log
        else
                echo -e "$host $des 未启动" >> $resultlog/$datedir/faild.log
        fi      
done <"$processes"

#邮件通知检查结果
if [ -s $resultlog/$datedir/faild.log ]; then
        mailx -s "进程巡检有进程不存在,请检查" 1234567qq@qq.com < $resultlog/$datedir/faild.log
else
        hour=`date +%H`
        if [[ $hour == 07 || $hour == 21 ]]; then
                mailx -s "进程巡检正常!" wuhsh@bigdatayh.com,524627027@qq.com < $resultlog/$datedir/success.log
        fi
fi
}
#清理超过30天的进程巡检日志记录
function log_clear(){
    cd $resultlog
    find -type d -mtime +30 |xargs rm -rf
}

function main(){
    #系统服务检查
    process_monitor
    log_clear
}

main
————————————————

如果您发现该资源为电子书等存在侵权的资源或对该资源描述不正确等,可点击“私信”按钮向作者进行反馈;如作者无回复可进行平台仲裁,我们会在第一时间进行处理!

评价 0 条
克里斯蒂亚诺诺L1
粉丝 0 资源 831 + 关注 私信
最近热门资源
银河麒麟桌面操作系统备份用户数据  125
统信桌面专业版【全盘安装UOS系统】介绍  120
银河麒麟桌面操作系统安装佳能打印机驱动方法  111
银河麒麟桌面操作系统 V10-SP1用户密码修改  105
最近下载排行榜
银河麒麟桌面操作系统备份用户数据 0
统信桌面专业版【全盘安装UOS系统】介绍 0
银河麒麟桌面操作系统安装佳能打印机驱动方法 0
银河麒麟桌面操作系统 V10-SP1用户密码修改 0
作者收入月榜
1

prtyaa 收益393.62元

2

zlj141319 收益218元

3

1843880570 收益214.2元

4

IT-feng 收益209.03元

5

风晓 收益208.24元

6

777 收益172.71元

7

Fhawking 收益106.6元

8

信创来了 收益105.84元

9

克里斯蒂亚诺诺 收益91.08元

10

技术-小陈 收益79.5元

请使用微信扫码

加入交流群

请使用微信扫一扫!