#!/bin/bash
#创建存储日志目录
logpath="log"
if [ -d "$logpath" ] ; then
echo "日志目录 $logpath 已存在!"
else
mkdir $logpath
chmod 777 $logpath
echo " 目录创建成功"
fi
# 设置日志文件名,格式为 YYYY-MM-DD.log
LOG_FILE="./$logpath/asr_docker_info_$(date +'%Y-%m-%d').log"
# 获取当前时间并格式化为年月日时分秒
CURRENT_DATETIME=$(date +'%Y-%m-%d %H:%M:%S')
# 获取当前正在运行的 Docker 容器信息,并将结果追加写入日志文件
echo "========== $CURRENT_DATETIME - Docker ps 输出 ==========" >> "$LOG_FILE"
docker ps >> "$LOG_FILE"
# 获取指定容器(这里以 mysql 为例)的 stats 信息,并检查是否有 PID 且不等于 0,并将结果追加写入日志文件
echo "========== $CURRENT_DATETIME - Docker stats 输出 ==========" >> "$LOG_FILE"
docker stats --no-stream | awk 'NR>1 && $14 != "0" {print}' >> "$LOG_FILE"
#这个列表是以字符串的形式输出的,每个容器名称以换行符分隔
#NAMES=$(docker ps -a --format "{{.Names}}")
#echo -n "容器列表名称: $NAMES" >> "$LOG_FILE"
#for con in "${NAMES[@]}";do
# echo " 我是容器:$con"
#done
#换行符分割为数组
docker_names=$(docker ps -a --format '{{.Names}}')
names_array=(${docker_names//$'\n'/ })
length=${#names_array[@]}
echo "所有容器列表名称:【 ${names_array[@]} 】,所有容器个数为:$length" >> "$LOG_FILE"
# 现在你可以遍历 names_array 数组了
for container_name in "${names_array[@]}"; do
if [ "$container_name" != "nls-cloud-mongodb" ];then
#if [ "$container_name" != "suspicious_lewin" ];then
echo "容器名称:$container_name"
PIDS=$(docker stats $container_name --no-stream | awk 'NR==2{print $14}')
if [ $PIDS -eq 0 ];then
echo " 注意!===> $container_name 容器PIDS为0:$PIDS" >> "$LOG_FILE"
elif [ $PIDS -ne 0 ];then
echo " $container_name 容器PIDS:$PIDS" >> "$LOG_FILE"
fi
# 获取指定容器(这里以 mysql 为例)的重启次数,并将结果追加写入日志文件
#echo "========== $CURRENT_DATETIME - Docker inspect 输出 ==========" >> "$LOG_FILE"
echo -n " $container_name 容器重启次数:" >> "$LOG_FILE"
docker inspect -f "{{.RestartCount}}" $container_name >> "$LOG_FILE"
fi
done
# 输出成功消息
echo "日志已写入日志文件: $LOG_FILE"
没有合适的资源?快使用搜索试试~ 我知道了~
shell脚本监控docker容器和supervisor 运行情况
共7个文件
sh:4个
zip:2个
ds_store:1个
需积分: 5 0 下载量 38 浏览量
2024-06-19
16:02:34
上传
评论
收藏 16KB ZIP 举报
温馨提示
shell脚本监控docker容器和supervisor 运行情况
资源推荐
资源详情
资源评论
收起资源包目录
bash.zip (7个子文件)
bash
.DS_Store 6KB
mysql_docker_log.sh 1KB
bash.zip 7KB
asr_docker_log.sh 2KB
bash3.zip 4KB
supervisorctl_client.sh 1KB
node_docker_log.sh 2KB
共 7 条
- 1
资源评论
lxw1844912514
- 粉丝: 4w+
- 资源: 38
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功