Linux查看某个用户使用总内存脚本

在之前记录过Valgrind的安装与使用

有时想要测试某个linux用户使用的总内存是否在增长,可以通过下面的python代码每隔一段时间做个统计

python 复制代码
import psutil
import time

# 指定要监视的用户名
target_user = "yifan.wang"  # 替换为要监视的用户名

# 获取初始内存使用情况
initial_memory = psutil.virtual_memory().used

while True:
    # 获取指定用户的所有进程
    user_processes = [p for p in psutil.process_iter(attrs=['pid', 'username']) if p.info['username'] == target_user]

    # 计算用户进程的内存使用情况总和
    user_memory = sum([p.memory_info().rss for p in user_processes])

    # 输出内存使用情况
    print(f"Total memory used by {target_user}: {user_memory / (1024 * 1024):.2f} MB")

    # 等待一段时间
    time.sleep(60)  # 等待60秒

    # 获取新的内存使用情况
    new_memory = psutil.virtual_memory().used

    # 检查内存是否增长
    if new_memory > initial_memory:
        print(f"Memory has increased from {initial_memory / (1024 * 1024):.2f} MB to {new_memory / (1024 * 1024):.2f} MB")
    else:
        print("Memory has not increased.")

    # 更新初始内存使用情况
    initial_memory = new_memory
相关推荐
人生匆匆1 小时前
docker部署ceph集群
ceph·docker·容器
张张123y4 小时前
后端第九课:部署上线(把你的 FastAPI 后端真正跑起来给别人用)
python·docker·部署·fastapi
AscendKing8 小时前
Docker Compose 一键部署 SkyWalking 10.2.0 + Elasticsearch8.11,分布式链路追踪完整实战
elasticsearch·docker·skywalking·链路追踪·微服务监控
励志师code8 小时前
Kubernetes 集群节点生命周期管理实战:从扩容、调度管控到证书续期
运维·docker·容器·kubernetes·gpu算力·kubelet
木雷坞9 小时前
Docker Compose部署Metabase:应用库隔离与日期筛选看板
运维·docker·容器
怒放的生命19919 小时前
前端项目 Docker 打包实操指南
前端·docker·容器
tedcloud1239 小时前
Docker Compose 部署 Immich:手机照片自动备份与常见故障排查
运维·前端·docker·容器·智能手机·开源·流程图
古城小栈9 小时前
Docker Compose 云原生的底座
docker·云原生·容器
卜锦元10 小时前
Docker Compose 部署 Nginx 1.30.6 完整指南
nginx·docker·容器
xrlfreedom11 小时前
MCP 面试高频考点:把知识库 RAG 检索封装为 Tool,Docker 与结构化输出怎么配合不踩坑
docker·结构化输出·mcp