美文网首页
Supervisor企微报警

Supervisor企微报警

作者: 一梦三四年lyp | 来源:发表于2023-05-07 18:40 被阅读0次

一,接口轮询

import time
import requests
from xmlrpc.client import ServerProxy

# 替换为你的企业微信API地址
API_URL = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=YOUR_API_KEY"

# 多个Supervisor服务器配置
supervisor_servers = [
    {
        "host": "192.168.1.110",
        "port": 9001,
        "user": "admin",
        "password": "123456",
    }
    # ... 添加更多Supervisor服务器配置
]


def create_server_proxy(server_config):
    server_url = f"http://{server_config['user']}:{server_config['password']}@{server_config['host']}:{server_config['port']}/RPC2"
    return ServerProxy(server_url)


# 为每个Supervisor服务器创建ServerProxy实例
server_proxies = [create_server_proxy(server_config) for server_config in supervisor_servers]


def send_message(content):
    payload = {
        "msgtype": "text",
        "text": {
            "content": content
        }
    }
    response = requests.post(API_URL, json=payload)
    if response.status_code == 200:
        print("消息发送成功")
    else:
        print("消息发送失败,错误代码:", response.status_code)


def main():
    while True:
        try:
            for server, server_config in zip(server_proxies, supervisor_servers):
                processes = server.supervisor.getAllProcessInfo()
                for process in processes:
                    if process['statename'] in ['FATAL', 'EXITED','STOPPED']:
                        message = f"Host: {server_config['host']} - 进程 {process['name']} 状态异常:{process['statename']} 请及时关注!"
                        print(message)
                        #send_message(message)

            time.sleep(60)  # 每分钟检查一次进程状态
        except Exception as e:
            print(f"监控过程中出现错误:{e}")

if __name__ == "__main__":
    main()

二,事件监听


相关文章

  • zabbix监控

    监控服务概述 1、实时查看服务状态2、可以发送报警信息(邮件报警、短信报警、电话报警、微信报警、值班(大屏幕)报警...

  • Prometheus部署

    Prometheus部署+邮箱报警+企业微信报警+钉钉报警 1 部署Prometheus server 1.1 下...

  • node热更新包

    supervisor 安装 npm i -g supervisor 启动 supervisor app.js ...

  • 微信报警

    企业微信准备:Agentld + Secret + 企业ID号 + 部门ID python监控脚本: 有...

  • zabbix 5系列之微信实时告警

    1. 微信报警: Zabbix除了可以使用邮件报警和钉钉告警之外,还可以通过微信报警,或者只要有api,你能想到的...

  • Ansible Role 系统环境 之【supervisor】

    Ansible Role: supervisor 安装supervisor 介绍 Supervisor是一个进程监...

  • supervisor安装 配置

    supervisor安装 supervisor操作 supervisor配置(一般不用修改配置) supervis...

  • Mac安装使用supervisor并配置Jenkins自启动20

    Mac安装使用supervisor并配置Jenkins自启动 supervisor是个什么 supervisor的...

  • 2018-11-26

    一,企业微信报警步骤

  • 企微私域+企微社群

    企业微信搭建私域闭环模式:企微私域+企微社群 1、首先企业通过全员引流加好友,全渠道、全场景引流...

网友评论

      本文标题:Supervisor企微报警

      本文链接:https://www.haomeiwen.com/subject/utcksdtx.html