ecs-centos分区空间大于70时发送钉钉告警并清理

简介: 当分区空间大于70时,开始清理并发送钉钉告警。

本文目的:当分区空间大于70%时,通过自定义的清理命令进行清理日志等缓存文件。

一:脚本展示

#!/bin/bash
#scriptName: clearlog_grant70.sh
#doing:* * * * *  cd /opt/yunwei/script/  && /bin/bash  clearlog_grant70.sh 

value=70
nodename=`hostname`
nodeip=`hostname -i`
time=`date '+%Y-%m-%d-%H:%M:%S'`
scriptname=$0
echo $scriptname


#定义清理函数
clearLogFunc(){
#start clear logs ...
##system
cd /var/log/ && ls |grep messages  | xargs  truncate -s 0k
cd /var/log/journal  &&  find ./* -mmin +10 |grep journal  | xargs  truncate -s 0k
docker images |grep none |awk "{print $3}" |xargs docker rmi
docker container prune -f
docker image prune -f
docker volume prune -f
##project
cd /usr/local/nginx/logs/ && find . -type f -size +1000M |grep log | xargs  truncate -s 0k
cd  /var/log/supervisor  &&   find ./* -mmin +30 |grep log  | xargs  truncate -s 0k
}



#钉钉发送告警函数 start ...
dingSendFunc(){
  echo $1 $2 $3 $4 $5 $6
  url="https://oapi.dingtalk.com/robot/send?access_token=xx"
  curl $url \
   -H 'Content-Type: application/json' \
   -d '{
     "msgtype": "markdown",
     "markdown":
    {"title":"ECS服务器监控告警",
    "text":"![screenshot](https://images.cnblogs.com/cnblogs_com/blogs/718800/galleries/2294157/o_230330085502_1.png) \n  
**报警时间**: <font color=\"#0000FF\">'${1}' '${times}'</font>\n
**监控ip**: <font color=\"#0000FF\">'${2}-${3}'  </font>\n
**磁盘空间使用率:** <font color=\"#FF0000\">'${4}%-${5}' </font> \n
> 来自脚本的监控--'${6}'
"
         },
   }'
}
#钉钉发送告警函数 end .





for i in `  df -h  |grep -v Filesystem |awk '{print $5}'`;do 
  echo  $i 
  a=`echo $i | sed 's/%//g' `
  echo "new key is $a" 
  if [ $a -gt  $value ];then
    echo  "$a >= $value, i will del logs ..."
    b=`df -h |grep $i  |awk '{print $NF}'`
    dingSendFunc $time  $nodename  $nodeip $a $b $scriptname
    clearLogFunc
  else
    echo " $a <=  $value"
  fi 
done

二:添加计划任务

#磁盘空间大于70%时清理日志
* * * * *   /bin/bash -x  /opt/yunwei/script/clearlog_grant70.sh

三:钉钉通知
image.png

完!

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
目录
相关文章
|
5月前
|
数据挖掘 Linux
服务器数据恢复-重装系统导致XFS分区丢失的数据恢复案例
服务器数据恢复环境: MD1200磁盘柜中的磁盘通过RAID卡创建了一组RAID5阵列,分配了一个LUN。在Linux操作系统层面对该LUN进行了分区,划分sdc1和sdc2两个分区,通过LVM扩容的方式将sdc1分区加入到了root_lv中;sdc2分区格式化为XFS文件系统。 服务器故障: 服务器重装系统后,磁盘分区改变,sdc2分区丢失,无法访问。
服务器数据恢复-重装系统导致XFS分区丢失的数据恢复案例
|
3月前
|
存储 数据挖掘 Linux
服务器数据恢复—服务器重装系统导致原分区丢失的数据恢复案例
服务器数据恢复环境&故障: 磁盘柜中有一组通过RAID卡创建的RAID5阵列,分配一个LUN,服务器上层安装Linux操作系统。操作系统层面划分sdc1和sdc2两个分区。通过LVM扩容的方式将sdc1分区加入到了root_lv中;sdc2分区格式化为XFS文件系统。 服务器重装操作系统后,磁盘分区改变,sdc2分区丢失,无法访问。
服务器数据恢复—服务器重装系统导致原分区丢失的数据恢复案例
|
3月前
|
Linux Shell
Centos定期自动清理临时文件
简单Shell脚本清理临时文件 使用`cron`设置定时任务,如每天8点运行: 记得调整路径和脚本名以匹配你的环境。
111 5
|
5月前
|
存储 数据挖掘
服务器数据恢复—服务器XFS分区丢失的数据恢复案例
服务器数据恢复环境: 一台服务器+MD1200磁盘柜,通过raid卡将15块磁盘组建成一组raid5磁盘阵列。raid5阵列分配了2个lun,操作系统层面对lun进行分区:1个分区采用LVM扩容方式加入到了root_lv中,其余分区格式化为XFS文件系统。 服务器故障: 工作人员为服务器重装操作系统时操作失误导致分区状态改变,一个存放重要数据的分区丢失,无法访问。
服务器数据恢复—服务器XFS分区丢失的数据恢复案例
|
4月前
|
安全 NoSQL Linux
centos清理挖矿病毒[crypto][pnscan]
centos清理挖矿病毒[crypto][pnscan]
|
5月前
|
Linux
Centos7设置增加swap分区
Centos7设置增加swap分区
468 1
|
5月前
|
Linux Docker 容器
本地虚拟机centos7空间扩展10G记录
本地虚拟机centos7空间扩展10G记录
52 1
|
5月前
|
存储 弹性计算 Linux
【Linux】ecs 挂载分区
【Linux】ecs 挂载分区
|
5月前
|
数据挖掘 数据库 Windows
【服务器数据恢复】服务器raid5崩溃导致上层分区无法访问的数据恢复案例
服务器数据恢复环境: 北京某教育机构一台服务器中有一组由3块磁盘组建的raid5阵列,服务器安装的windows server操作系统。 服务器故障: 该服务器在运行过程中突然瘫痪,无法正常工作。北亚企安数据恢复工程师去现场对故障服务器进行了检测,发现故障服务器raid5阵列中有一块硬盘由于未知原因离线,服务器中存放重要数据的分区无法识别。
|
5月前
|
Prometheus Cloud Native Linux
Linux|centos7下部署安装alertmanager并实现邮箱和微信告警(基础篇---三)
Linux|centos7下部署安装alertmanager并实现邮箱和微信告警(基础篇---三)
295 0
下一篇
无影云桌面