推荐一个系统管理员常用的Python工具

简介: 推荐一个系统管理员常用的Python工具

大家周末好,今天的第二篇原创文章来了。今天主要给大家带来的一个系统管理员日常用到的一个运维工具,希望大家有收获。

这个工具叫psutil,psutil(process and system utilities)这是一个跨平台库,日常我们都是通过ps,top(htop),ifconfig,kill 这些命令来进行管理查看系统资源等。

有了它之后我们可以更好的进行系统监控,分析和限制系统资源使用,是系统管理员必备工具。


安装:

pip install psutil(权限不够需要加sudo)

1> import psutil
 2> psutil.cpu_count() # 获取CPU逻辑个数
 31
 4> psutil.cpu_count(logical=False) # CPU物理个数
 5> mem = psutil.virtual_memory() # 获取内存信息
 6> mem.total
 72097369088  # 可以看到性能有点差
 8> mem.free    # 获取空闲内存数
 9166760448
10> psutil.disk_partitions() # 获取磁盘信息
11[sdiskpart(device='/dev/vda1', mountpoint='/', fstype='ext4', opts='rw,relatime,errors=remount-ro,stripe=32639,data=ordered'),
12 sdiskpart(device='/dev/vda1', mountpoint='/var/lib/docker/aufs', fstype='ext4', opts='rw,relatime,errors=remount-ro,stripe=32639,data=ordered')]
13> psutil.pids() # 获取所有进程ID
14> pp = psuitl.Process(32470).name() # 获取进程名字
15'apache2'
16>


psutil除了上面提到的CPU,内存,磁盘,进程等,其实还有网络,用户登录,开机时间等信息。


我们获取到这些信息之后就可以做一个简易的服务器内存监控,不用像之前需要用到stastsd+promeuthus或graphite+grafana等全套工具进行大规模监控系统服务及API的数据了。


可以参考往期文章牛逼了| 从0到1 搭建Web性能监控系统

最后大家也可以通过ipython进行查看其他相关用法,这点我很久就提到过了。

image.png


希望大家有所收获,周末愉快!


相关文章
|
11天前
|
机器学习/深度学习 数据采集 供应链
Python实现深度学习模型:智能库存管理系统
【10月更文挑战第5天】 Python实现深度学习模型:智能库存管理系统
60 9
|
2天前
|
机器学习/深度学习 传感器 存储
使用 Python 实现智能地震预警系统
使用 Python 实现智能地震预警系统
88 61
|
6天前
|
机器学习/深度学习 API 计算机视觉
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(下)
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(下)
14 2
|
6天前
|
自然语言处理 算法 数据挖掘
探讨如何利用Python中的NLP工具,从被动收集到主动分析文本数据的过程
【10月更文挑战第11天】本文介绍了自然语言处理(NLP)在文本分析中的应用,从被动收集到主动分析的过程。通过Python代码示例,详细展示了文本预处理、特征提取、情感分析和主题建模等关键技术,帮助读者理解如何有效利用NLP工具进行文本数据分析。
25 2
|
6天前
|
机器学习/深度学习 存储 算法
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(上)
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(上)
16 1
|
9天前
|
Ubuntu Linux Python
Ubuntu学习笔记(六):ubuntu切换Anaconda和系统自带Python
本文介绍了在Ubuntu系统中切换Anaconda和系统自带Python的方法。方法1涉及编辑~/.bashrc和/etc/profile文件,更新Anaconda的路径。方法2提供了详细的步骤指导,帮助用户在Anaconda和系统自带Python之间进行切换。
35 1
|
14天前
|
测试技术 Python
Python MagicMock: Mock 变量的强大工具
Python MagicMock: Mock 变量的强大工具
29 4
|
15天前
|
Linux 开发者 iOS开发
告别兼容烦恼!Python系统编程中的跨平台艺术大师🎨
【10月更文挑战第2天】Python 以其强大的跨平台能力成为系统编程领域的艺术大师,有效解决了不同操作系统间的兼容性问题,让开发者能专注于业务逻辑而非平台差异。通过内置的 `os`、`platform` 和 `subprocess` 模块,以及第三方库如 `pathlib`,Python 能轻松处理文件系统操作、执行外部命令等任务。此外,Python 还提供了 Tkinter、PyQt 等库支持跨平台 GUI 开发,确保应用程序在 Windows、macOS 和 Linux 上均能正常运行。Python 的强大工具链使其在跨平台编程领域中持续引领新潮流。
34 4
|
15天前
|
存储 Python
python数据类型、debug工具(一)
python数据类型、debug工具(一)
|
16天前
|
数据可视化 测试技术 Linux
基于Python后端构建多种不同的系统终端界面研究
【10月更文挑战第10天】本研究探讨了利用 Python 后端技术构建多样化系统终端界面的方法,涵盖命令行界面(CLI)、图形用户界面(GUI)及 Web 界面。通过分析各种界面的特点、适用场景及关键技术,展示了如何使用 Python 标准库和第三方库(如 `argparse`、`click`、`Tkinter` 和 `PyQt`)实现高效、灵活的界面设计。旨在提升用户体验并满足不同应用场景的需求。