我正在编写一个脚本来被动地监视计算机上的资源使用情况。我想监视磁盘和网络IO,CPU和RAM的使用情况。它工作正常。我现在正试图将这些信息解析成更人性化的输出。我使用psutil for python 2.7来收集资源信息。我现在正在尝试解析每秒的磁盘使用量。我想我将计算每秒之间的读写差异来计算每秒的使用量。但是我不确定psutil的测量单位是用于IO计数器的。以下是psutil的输出示例。
{'PhysicalDrive1': iostat", "read_count=379172, write_count=1688031, read_bytes=11142501376L, write_bytes=84719621632L, read_time=1280719510L, write_time=3614153510L), 'PhysicalDrive0': iostat", "read_count=481, write_count=0, read_bytes=1713152L, write_bytes=0L, read_time=6110L, write_time=0L), 'PhysicalDrive3': iostat", "read_count=105, write_count=42, read_bytes=377344L, write_bytes=24576L, read_time=137740L, write_time=35020L), 'PhysicalDrive2': iostat", 'read_count=646025, write_count=924922, read_bytes=14357518848L, write_bytes=17206760448L, read_time=146876820L, write_time=80879980L)}
我看到它提到了iostat,我认为它也是linux中用于监控磁盘使用情况的程序。 Anywho,我看到了read_count和write_count。太棒了,但测量单位是多少?磁盘扇区? KB?不知道如何计算它。之后我有read_bytes和write_bytes,我假设测量是字节,但每个数字后跟一个大写字母L.这是什么意思?只是想弄清楚psutil数字究竟出现在我身上:)谢谢!
答案 0 :(得分:2)
根据psutils doc:
将系统磁盘I / O统计信息作为包含的 以下属性:
- read_count:读取次数
- write_count:写入次数
- read_bytes:读取的字节数
- write_bytes:写入的字节数
- read_time:从磁盘读取的时间(以毫秒为单位)
- write_time:写入磁盘所花费的时间(以毫秒为单位)
L
在python中以整数开头时表示该数字是Python Long类型,这是一个无限制的精度整数(与标准Python Int类型相反,至少是在C long类型上实现的32位精度整数(实际精度可以从sys.maxint.bit_length()
获得))。