同级目录下创建服务列表文件 service.txt
文件内容如下(可根据服务自定义):
admin-service
log-service
metadata-service
index-service
ip-service
kafka
zookeeper
elasticsearch
nginx
mysqld
redis-server
fdfs_trackerd
fdfs_storaged
nta-agent
nta-admin-agent
suricata
sandbox
sandboxapi
aiengine
nta-property
代码:
check-server.sh脚本内容:
根据同级目录去读取服务列表,使用for循环依次检查服务状态是否匹配running
服务正常 显示绿色;反之则显示红色闪烁警告
#!/bin/bash
FILE_PATH=`pwd`
FILE=$FILE_PATH/service.txt
SERVICE_LIST=`cat $FILE`
STATUS="(running)"
RED='\E[1;31m'
GREEN='\E[1;32m'
YELOW='\E[1;33m'
SHAN='\E[1;31;5m'
RES='\E[0m'
for i in $SERVICE_LIST
do
systemctl status $i | sed -n '1,3p'
active=`systemctl status $i | sed -n '1,3p'`
if [[ $active =~ $STATUS ]];then
echo -e "${GREEN} $i is running ${RES} "
else
echo -e "${SHAN} $i is not running, please check ${RES} "
fi
done