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()
相关推荐
JavaPub-rodert2 分钟前
用 go-commons 打造更优雅的字符串处理工具
开发语言·后端·golang
Archie_IT4 分钟前
嵌入式八股文篇——P1 关键字篇
c语言·开发语言·单片机·mcu·物联网·面试·职场和发展
workflower13 分钟前
将图片中的图形转换为可编辑的 PPT 图形
java·开发语言·tomcat·powerpoint·个人开发·结对编程
jie*1 小时前
小杰深度学习(five)——正则化、神经网络的过拟合解决方案
人工智能·python·深度学习·神经网络·numpy·matplotlib
ftpeak1 小时前
《WebAssembly指南》第九章:WebAssembly 导入全局字符串常量
开发语言·rust·wasm
卡戎-caryon1 小时前
【Java SE】06. 数组
java·开发语言
Rain_is_bad1 小时前
初识c语言————数学库函数
c语言·开发语言·算法
lsx2024061 小时前
Eclipse 快捷键
开发语言
拉一次撑死狗1 小时前
TensorFlow(1)
人工智能·python·tensorflow
weixin_525936332 小时前
2020年美国新冠肺炎疫情数据分析与可视化
hadoop·python·数据挖掘·数据分析·spark·数据可视化