Python脚本----巡检服务器资源并发送钉钉

python 复制代码
import socket
import psutil
from dingtalkchatbot.chatbot import DingtalkChatbot

def get_cpu_usage():
    return psutil.cpu_percent()

def get_memory_usage():
    return psutil.virtual_memory().percent

def get_disk_usage():
    return psutil.disk_usage('/').percent

def check_port(port):
    with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
        return s.connect_ex(('localhost', port)) == 0

def send_message_to_dingtalk(message):
    webhook = '钉钉机器人token'
    bot = DingtalkChatbot(webhook)
    bot.send_text(msg=message)

def generate_report():
    cpu_usage = get_cpu_usage()
    memory_usage = get_memory_usage()
    disk_usage1 = get_disk_usage()

    message = f"CPU利用率: {cpu_usage}%\nMemory利用率: {memory_usage}%\n根目录磁盘利用率: {disk_usage1}%"

    if check_port(端口号):
        message += "\n服务端口: UP"
    else:
        message += "\n服务端口: Down!"

    send_message_to_dingtalk(message)

generate_report()
相关推荐
DebugKitty1 分钟前
C语言14-指针4-二维数组传参、指针数组传参、viod*指针
c语言·开发语言·算法·指针传参·void指针·数组指针传参
Bio Coder15 分钟前
R语言中 read.table 和 read.delim 之间的区别
开发语言·r语言
进击的铁甲小宝26 分钟前
Django-environ 入门教程
后端·python·django·django-environ
落魄实习生28 分钟前
UV安装并设置国内源
python·uv
阿克兔42 分钟前
建筑兔零基础python自学记录114|正则表达式(1)-18
python
码@农1 小时前
Python三大Web框架:FastAPI vs Flask vs Django 详解与快速入门指南
python·fastapi
天天进步20151 小时前
Python全栈项目--基于深度学习的视频内容分析系统
python·深度学习·音视频
超龄超能程序猿1 小时前
图片查重从设计到实现(5)Milvus可视化工具
python·milvus
LZQqqqqo2 小时前
C#_ArrayList动态数组
开发语言·windows·c#
睿思达DBA_WGX2 小时前
Python 程序设计讲义(27):字符串的用法——字符串的常用操作
开发语言·python