[Zimbra]Bash check mail queues và gửi thông báo đến telegram

Tác giả: 13/07/2023

Vấn đề giám sát dịch vụ email zimbra là rất quan trọng, để đảm bảo vấn đề dịch vụ email được thông suốt, chúng ta cần giám sát hoạt động của hàng chờ email một cách chủ động.

Dưới đây là bash giám sát mail queues với zimbra  mà Nhân Hòa gửi đến các bạn nhằm giám sát và gửi thông báo đến kênh telegram, để chúng ta có thể chủ động mà không cần theo dõi qua monitor queues trên giao diện admin

HOSTNAME="hostname"
my_ip2=$(hostname -I | awk '{print $2}')

TOKEN="6314106144:AAgfgftulY1_F4E7ibA-POrIATe3jSJkv4"
CHAT_ID="-9115436939"
URL="https://api.telegram.org/bot$TOKEN/sendMessage"
count=$(/opt/zimbra/libexec/zmqstat |grep -i deferred |cut -d "=" -f2)

if [ "$count" -ge "50" ];then
curl -s -X POST $URL -d chat_id=$CHAT_ID -d text="[WARNING QUEUE '"$HOSTNAME"'], Mail queue $my_ip2 la '$count' !"
fi

Trong đó

  • HOSTNAME là tên máy chủ
  • my_ip2 biến lấy IP máy chủ , tùy vào vị trí IP trên máy chủ, ở đây mình lấy vị trí 2 : $2
  • TOKEN là token bot
  • CHAT_ID là ID kênh telegram
  • count biến đếm mail queues
  • if [ “$count” -ge “5” ];then   :  Nếu queues >= 5 thì gửi thông báo đến kênh, trong thông báo có bao gồm HOSTNAME và IP của máy chủ.

Testing

Bạn hãy gắn file bash này vào cron mỗi 5 phút để check.

Hẹn gặp lại các bạn tại các bài viết sau tại wiki.nhanhoa.com

Trả lời