python系统性能模块笔记
内存信息
psutil.cpu_times() 使用cpu_times方法获取cpu完整信息,需要显示所有逻辑cpu信息(指定变量percpu=True)
psutil.cpu_times().user 获取单项数据信息,如用户user的cpu时间比
psutil.cpu_count() 获取cpu逻辑个数,默认logical=True4
psutil.cpu_count(logical=False) 获取cpu的物理信息
磁盘信息
psutil.disk_partitions() 使用psutil.disk_partitions方法获取磁盘完整信息
psutil.disk_usage('/') 使用psutil.disk_usage方法获取分区(参数)的使用情况
psutil.disk_io_counters() 使用psutil.disk_io_counters获取硬盘中的IO个数
psutil.disk_io_counters(perdisk=True) perdisk=True,参数获取单个分区IO个数
网络信息
psutil.net_io_counters() 使用Psutil.net_io_counters获取网络中的IO信息,默认pernic=False,True时输出每个网络结构的IO信息
其他系统信息
psutil.users() 使用psutil.users方法返回当前登录系统的用户信息
psutil.boot_time() 使用psutil.boot_time方法获取开机时间,以Linux时间戳格式返回
import psutil,datetime datetime.datetime.fromtimestamp(psutil.boot_time()).strftime("%Y-%m-%d%H:%M:%S") 转换成自然时间格式
系统进程管理
psutil.pids() 列出所有进程的PID
psutil.Process(*) 实例化一个Process对象,参数为一进程PID
p=pstuil.Process()
p.name() 进程名
p.exe() 进程bin路径,windows下为p.exe
p.cwd() 进程工作目录绝对路径,win下为p,cwd
p.status() 进程状态
p.create_time() 进程创建时间,时间戳格式
p.uids() 进程uid信息
p.gids() 进程gid信息
p.cpu_affinity() get进程cpu亲和度,如要设置进程cpu亲和度,将cpu号作为参数即可
p.momory_info() 进程内存利用率
p.io_counters() 进程IO信息,包括读写IO数及字节数
p.connections() 返回打开进程socket的namedutples列表,包括fs,family,laddr等信息
p.num_threads() 进程开启的线程数
from subprocess import PIPE
p=psutil.Popen(["/usr/bin/python","-c","print('hello')",stdout=PIPE]) 通过psutil的Popen方法启动的应用程序,可以跟踪该程序运行的所有相关信息
p.name() 'python'
p.username() 'root'
p.coummunicate() ('hello\n',None)
p.cpu_times() 得到进程运行cpu的时间
IPy
IP地址处理模块
IP('192.168.1').version() 返回IPv4类型
IP('::1').version() 返回IPv6类型
ip=IP('192.168.1.1')
ip.reverseNames() 反向解析地址格式
ip.iptype() 192.168.1.1为
ip.int() 转换成整数格式
ip.strHex() 转换成十六进制
ip.strBin() 转换成二进制
ip.netmask() 子网掩码
ip.net() 输出网络地址
ip.broadcast() 输出网络广播地址
print(IP(ox8080808)) 十六进制转换成IP格式
IP与掩码生产网段格式
print(IP('192.168.1.0').make_net('255.255.255.0'))
print(IP('192.168.1.0/255.255.255.0',make_net=True))
print(IP('192.168.1.0-192.168.1.255',make_net=True))
IP('192.168.1.0/24').strNormal(*) wantprefixlen参数的定义.0:无返回如192.168.1.0;1:prefix格式如192.168.1.0、24;2:decimalnetmask格式如192.168.1.0、255.255.255.0;3:lastIP格式如192.168.1.0-192.168.1.255
多网络计算方法
IP('10.0.0./24')<IP('12.0.0.0/24') True
'192.168.1.100' in IP('192.168.1.0/24') True
IP('192.168.1.0/24') in IP('192.168.0.0/16') Ture
IP('192.168.0.0/23').overlaps('192.168.1.0/24') 返回1代表重,0代表不重叠
python系统性能模块笔记的更多相关文章
- python日志模块笔记
前言 在应用中记录日志是程序开发的重要一环,也是调试的重要工具.但却很容易让人忽略.之前用flask写的一个服务就因为没有处理好日志的问题导致线上的错误难以察觉,修复错误的定位也很困难.最近恰好有时间 ...
- Python PIL模块笔记
利用python pil 实现给图片上添加文字 图片中添加文字#-*- coding: utf-8 -*- from PIL import Image,ImageDraw,ImageFont ttfo ...
- python logging模块笔记
1 ) 给logger定制了两个日志级别INFO和DEBUG,分别通过filehandler添加不同输出到不同文件,但如何让DEBUG里只有DEBUG的信息? 答案:可重写DEBUG对应的Fileha ...
- Python标准库笔记(11) — Operator模块
Operator--标准功能性操作符接口. 代码中使用迭代器时,有时必须要为一个简单表达式创建函数.有些情况这些函数可以用一个lambda函数实现,但是对于某些操作,根本没必要去写一个新的函数.因此o ...
- Python标准库笔记(10) — itertools模块
itertools 用于更高效地创建迭代器的函数工具. itertools 提供的功能受Clojure,Haskell,APL和SML等函数式编程语言的类似功能的启发.它们的目的是快速有效地使用内存, ...
- Python标准库笔记(9) — functools模块
functools 作用于函数的函数 functools 模块提供用于调整或扩展函数和其他可调用对象的工具,而无需完全重写它们. 装饰器 partial 类是 functools 模块提供的主要工具, ...
- Python标准库笔记(8) — pprint模块
struct模块提供了用于在字节字符串和Python原生数据类型之间转换函数,比如数字和字符串. Python版本: 2.x & 3.x 该模块作用是完成Python数值和C语言结构体的Pyt ...
- Python学习笔记- Python threading模块
Python threading模块 直接调用 # !/usr/bin/env python # -*- coding:utf-8 -*- import threading import time d ...
- Python学习笔记4-如何快速的学会一个Python的模块、方法、关键字
想要快速的学会一个Python的模块和方法,两个函数必须要知道,那就是dir()和help() dir():能够快速的以集合的型式列出该模块下的所有内容(类.常量.方法)例: #--encoding: ...
随机推荐
- Oracle存储过程中跳出循环的写法
注:本文来源于: < Oracle存储过程中跳出循环的写法 > Oracle存储过程中跳出循环的写法 记录exit和return的用法 1:exit用来跳出循环 loop IF V_ ...
- Confluence 6 通过 SSL 或 HTTPS 运行 - 为 HTTPS 修改你的 Confluence 基础 URL
在你的浏览器中,进入 > 基本配置(General Configuration). 单击 编辑(Edit). 修改服务器的基础 URL 为 HTTPS.请参考文档 configuring t ...
- Confluence 6 的系统配置信息的示例
awt.toolkit sun.awt.X11.XToolkit file.encoding.pkg sun.io java.specification.version 1.8 sun.cpu.isa ...
- leetcode(js)算法之914卡牌分组
给定一副牌,每张牌上都写着一个整数. 此时,你需要选定一个数字 X,使我们可以将整副牌按下述规则分成 1 组或更多组: 每组都有 X 张牌. 组内所有的牌上都写着相同的整数. 仅当你可选的 X > ...
- servlet 遇到的奇怪问题
一. servlet URl 连接多了 %09 原因value里面多了个空格 value=" value'; 改成 value="value'; 二.servlet get方法可以 ...
- ActiveSync的Settings命令
在[MS-ASCMD]中,Settings命令的功能这样定义的: The Settings command also sends device information to ...
- Nancy 寄宿OWin
一:创建一个空项目 二:安装模板 Install-Package Nancy Install-Package Nancy.Owin Install-Package Microsoft.Owin ins ...
- Eclipse中如何打开Map/Reduce Locations窗口
Window->Show View->Other->MapReduce Tools,双击打开
- jdk1.8学习、jdk1.9学习、jdk10.0学习和总结
由于中文参考资料很少,参考链接: https://www.oschina.net/translate/109-new-features-in-jdk-10 http://chuansong.me/n/ ...
- ReSharper 8 & 9
ronle ZoJzmeVBoAv9Sskw76emgksMMFiLn4NM 9: admin@youbaozang.com SpFEMUSrPM0AGupqlNs6J1Ey7HrjpJZy admi ...