当前位置: 首页 > news >正文

python自动化运维技术读书笔记

import psutil
print(psutil.cpu_times(percpu=True))
#使用cpu_times方法获取CPU完整信息需要显示所有逻辑CPU信息

import psutil
print(psutil.virtual_memory())
#获取内存完整信息

import psutil
print(psutil.swap_memory())
#获取SWAP分区信息

import psutil
print(psutil.disk_partitions())
#获取磁盘完整信息

import psutil
print(psutil.disk_usage('/'))
#获取分区(参数)的使用情况

import psutil
print(psutil.disk_io_counters())
#获取硬盘总的IO个数


import psutil
print(psutil.disk_io_counters(perdisk=True))
#perdisk=True参数获取单个分区IO个数

import psutil
print(psutil.net_io_counters)
#获取网络总的IO信息,默认pernic=False

import psutil
print(psutil.net_io_counters(pernic=True))
#pernic=True输出每个网络接口的IO信息

除了以上几个获取系统基本信息的方法,psutil模块还支持获取用户登录、开机时间等信息
psutil.users()
psutil.boot_time()

psutil.pids() 列出所有进程PID
p = psutil.Process(213) 实例化一个Process对象,参数为一个进程PID
p.name() 进程名
p.exe() 进程bin路径
p.cwd() 进程工作目录绝对路径
p.status() 进程状态
p.create_time() 进程创建时间,时间戳格式
p.uids() 进程uid信息
p.gids() 进程gid信息
p.cpu_times() 进程CPU时间信息,包括user和system两个cpu时间
p.cpu_affinity() get进程cpu亲和度
p.memory_percent() 进程内存利用率
p.memory_info() 进程内存rss.vms信息
p.io_counters() 进程IO信息,包括读写IO数以及字节数
p.connections() 返回打开进程socket的namedutples列表
p.num_threads() 进程开启的线程数

popen类 获取用户启动的应用程序进程信息,以便跟踪程序进程的运行状态
import psutil
from subprocess import PIPE

 

转载于:https://www.cnblogs.com/liuyuanzzz/p/11295752.html

相关文章:

  • js同步和异步
  • 并发并行同步异步多线程
  • 猿辅导 2019年 校招提前批笔试
  • RequireJs入门
  • Asp.net页面的生命周期
  • 终于弄好了 homework-09
  • python面向对象
  • leetcode 337. House Robber III
  • Durandal入门
  • js中使用EL表达式总结
  • leetcode 309. Best Time to Buy and Sell Stock with Cooldown
  • 环境变量
  • 手机端和网页端使用同一后台时进行会话控制
  • SpringBoot起步
  • 获取当前python 解释器的路径=.=
  • ----------
  • 10个确保微服务与容器安全的最佳实践
  • AngularJS指令开发(1)——参数详解
  • Bytom交易说明(账户管理模式)
  • CSS3 聊天气泡框以及 inherit、currentColor 关键字
  • HTTP中的ETag在移动客户端的应用
  • IP路由与转发
  • PHP 的 SAPI 是个什么东西
  • vuex 笔记整理
  • Vue源码解析(二)Vue的双向绑定讲解及实现
  • Webpack入门之遇到的那些坑,系列示例Demo
  • weex踩坑之旅第一弹 ~ 搭建具有入口文件的weex脚手架
  • XForms - 更强大的Form
  • 聊聊springcloud的EurekaClientAutoConfiguration
  • 如何胜任知名企业的商业数据分析师?
  • 如何用Ubuntu和Xen来设置Kubernetes?
  • 小程序 setData 学问多
  • Linux权限管理(week1_day5)--技术流ken
  • ​如何在iOS手机上查看应用日志
  • #if #elif #endif
  • #LLM入门|Prompt#1.8_聊天机器人_Chatbot
  • #Ubuntu(修改root信息)
  • (14)Hive调优——合并小文件
  • (33)STM32——485实验笔记
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (Redis使用系列) SpringBoot中Redis的RedisConfig 二
  • (vue)el-checkbox 实现展示区分 label 和 value(展示值与选中获取值需不同)
  • (ZT)出版业改革:该死的死,该生的生
  • (二)linux使用docker容器运行mysql
  • (附源码)ssm捐赠救助系统 毕业设计 060945
  • (个人笔记质量不佳)SQL 左连接、右连接、内连接的区别
  • (欧拉)openEuler系统添加网卡文件配置流程、(欧拉)openEuler系统手动配置ipv6地址流程、(欧拉)openEuler系统网络管理说明
  • .cn根服务器被攻击之后
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
  • .net 获取url的方法
  • .Net(C#)常用转换byte转uint32、byte转float等
  • .net通用权限框架B/S (三)--MODEL层(2)
  • /bin/bash^M: bad interpreter: No such file ordirectory
  • @DateTimeFormat 和 @JsonFormat 注解详解
  • @require_PUTNameError: name ‘require_PUT‘ is not defined 解决方法