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
相关推荐
张青贤37 分钟前
Docker 常用使用命令
运维·docker·容器
东风微鸣1 小时前
管理大规模监控技术栈的最佳实践
docker·云原生·kubernetes·可观察性
~卷心菜~2 小时前
【Docker基础-镜像】--查阅笔记2
docker·容器
it界的哈士奇2 小时前
docker部署scylladb
运维·docker·容器·scylladb
小蓝波2 小时前
Docker部署jenkins
java·docker·jenkins
oceanweave5 小时前
【kind管理脚本-1】便捷使用 kind 创建、删除、管理集群脚本
docker·kubernetes·kind
小费的部落7 小时前
记 etcd 无法在docker-compose.yml启动后无法映射数据库目录的问题
数据库·docker·etcd
两点王爷9 小时前
docker 运行自定义化的服务-后端
运维·docker·容器
东风微鸣13 小时前
Grafana将弃用AngularJS-我们该如何迁移
docker·云原生·kubernetes·可观察性
亚林瓜子15 小时前
docker compose方式安装ClickHouse数据库
数据库·clickhouse·docker·mac·m1