linux 磁盘满告警通知邮件

 1.邮件告警

#!/bin/bash
#邮箱自己定义
Mailuser=liujia@huaniupp.com
#你想要达到的阈值
max_num=80
#过滤啊啥的
fdisk_use=`df -P | grep /dev/vda1 | awk '{print $5}' | cut -f 1 -d "%"`
#比较阈值和磁盘使用的大小
if [ "$fdisk_use" -ge "$max_num" ]
then    
        echo "磁盘的使用超过"$max_num",请快速处理" | mail -s "请快速清理磁盘空间" $Mailuser
else
        echo "ok"
fi

优化改良后

#!/bin/bash
#邮箱自己定义
Mailuser=liujia50@gemdale.com
#你想要达到的阈值
max_num=30
ip=`hostname`
#过滤啊啥的
fdisk_use=`df -P | grep /data | awk '{print $5}' | cut -f 1 -d "%"`
#比较阈值和磁盘使用的大小
if [ "$fdisk_use" -ge "$max_num" ]
then
        echo "$ip数据磁盘/data磁盘的使用超过"$max_num",请快速处理" | mail -s "请快速清理磁盘空间" $Mailuser
else
        echo "ok"
fi

fdisk_use1=`df -P | grep /dev/mapper/centos-root | awk '{print $5}' | cut -f 1 -d "%"`
#比较阈值和磁盘使用的大小
if [ "$fdisk_use1" -ge "$max_num" ]
then
        echo "$ip系统磁盘的使用超过"$max_num",请快速处理" | mail -s "请快速清理磁盘空间" $Mailuser
else
        echo "ok"
fi

2.邮件告警

-E : 使用拓展正则   等价于  egrep
* 用于拓展正则
普通正则表达式:
    ^ : 以某字符开头
    $ : 以某字符结尾
    . : 匹配除换行符之外的任意单个字符
    * :匹配前导字符的任意个数
    [] : 某组字符串的任意一个字符
    [^]      : 取反
    [a-z]    : 匹配小写字母
    [A-Z]    : 匹配大写字母
    [a-zA-Z] : 匹配字母
    [0-9] 	 : 匹配数字
    \ 		: 取消转义
    ()		: 分组
    \n : 代表第n个分组
#!/bin/bash
WARNING=80

USE=`df | grep '^/dev/vd' |grep -Eo '[0-9]+%' |grep -Eo '[0-9]+' |sort -rn |head -n1`

[  $USE -ge $WARNING ] && echo DISK will be full | mail -s 'Disk Warning' liujia50@gemdale.com

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一份简单的Prometheus告警规则配置文件,用于监控Linux服务器的CPU、内存、磁盘、网络等指标,并在达到一定阈值时发出告警。这里的阈值仅供参考,实际应根据具体情况进行调整。 ```yaml groups: - name: Linux-Servers-Rules rules: - alert: HighCPUUsage expr: sum(rate(node_cpu_seconds_total{mode="idle"}[5m])) < 0.5 for: 5m labels: severity: warning annotations: summary: "High CPU usage on {{ $labels.instance }}" description: "{{ $labels.instance }} has high CPU usage ({{ printf "%.2f" $value }}%)" - alert: LowMemory expr: node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes * 100 < 10 for: 5m labels: severity: critical annotations: summary: "Low memory on {{ $labels.instance }}" description: "{{ $labels.instance }} has low memory ({{ printf "%.2f" $value }}%)" - alert: DiskSpaceLow expr: node_filesystem_avail_bytes{mountpoint="/"} / node_filesystem_size_bytes{mountpoint="/"} * 100 < 10 for: 5m labels: severity: warning annotations: summary: "Low disk space on {{ $labels.instance }}" description: "{{ $labels.instance }} has low disk space ({{ printf "%.2f" $value }}%)" - alert: HighDiskIOPS expr: sum(rate(node_disk_io_time_seconds_total[5m])) > 0.5 for: 5m labels: severity: warning annotations: summary: "High disk IOPS on {{ $labels.instance }}" description: "{{ $labels.instance }} has high disk IOPS ({{ printf "%.2f" $value }} IOPS/s)" - alert: HighNetworkTraffic expr: sum(rate(node_network_receive_bytes_total[5m])) + sum(rate(node_network_transmit_bytes_total[5m])) > 1e9 for: 5m labels: severity: warning annotations: summary: "High network traffic on {{ $labels.instance }}" description: "{{ $labels.instance }} has high network traffic ({{ printf "%.2f" $value }} bytes/s)" ``` 请注意,以上配置文件仅为示例,实际情况下还需要根据具体的监控需求和环境特点进行适当调整和优化。同时,还需要配合一些告警通知渠道,如邮件或短信等渠道,以便及时接收告警并进行处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值