【系统监控程序】

用python编写一个系统监控程序,需要每隔一秒钟记录系统每个进程的资源占用和整体的资源占用情况,并输出成json,保存到文本文件。

import psutil
import json
import time

def get_process_usage():
    process_list = []
    for proc in psutil.process_iter(['pid', 'name', 'username', 'cpu_percent', 'memory_percent']):
        process_info = proc.info
        process_list.append({
            'pid': process_info['pid'],
            'name': process_info['name'],
            'username': process_info['username'],
            'cpu_percent': process_info['cpu_percent'],
            'memory_percent': process_info['memory_percent']
        })
    return process_list

def get_system_usage():
    cpu_percent = psutil.cpu_percent()
    memory_percent = psutil.virtual_memory().percent
    return {
        'cpu_percent': cpu_percent,
        'memory_percent': memory_percent
    }

def main():
    while True:
        system_usage = get_system_usage()
        process_usage = get_process_usage()
        data = {
            'system': system_usage,
            'processes': process_usage
        }
        json_data = json.dumps(data, indent=4)

        # 输出JSON数据
        print(json_data)

        # 保存JSON数据到文件
        with open('system_monitor.json', 'w') as file:
            file.write(json_data)

        time.sleep(1)

if __name__ == "__main__":
    main()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值