Skip to content

alunAlunnnnn/hs_sys_monitor

Repository files navigation

版本信息:

​ 当前版本为 v0.1,在 win 10 19042、winserver 2019 中测试可用。并且 linux_py36 分支提供对 linux 的支持,因为适配环境为 centos7.9 的 py36 所以在性能上略有下降

 

​ 目前仅支持写入 sqlite 数据库,后续会添加对 mysql、pgsql 的支持

 

​ 当前的 linux 适配版仅为过渡使用,后续会基于 python 3.9 及 python 3.9 devel 进行完整性能版的适配

 

​ 目前仅收集 CPU、RAM、DISK I/O 的信息,后续补充网络 I/O





注意事项:

 

1、受限于硬盘和cpu使用率计算逻辑的影响,最小的收集间隔为 3 秒,小于 3 秒的设置不会报错,但是无法生效

 

2、每次收集的数据插入 sqlite 后会占大约 1.5kb 的空间,所以当长时间监控,并且收集间隔很短的时候,一定要注意空间占用的问题





使用方法:

1、初始化 sqlite 数据库

hs_system_monitor.exe init -d D:/systemonitor/example.db

 

2、单次收集数据

hs_system_monitor.exe run -d D:/systemonitor/example.db

 

3、持续收集数据(默认间隔30秒)

hs_system_monitor.exe run -d D:/systemonitor/example.db -l

 

4、持续收集数据(自定义间隔 此处为10秒)

hs_system_monitor.exe run -d D:/systemonitor/example.db -l -s 10

 

源码打包:

pyinstaller -F --distpath ./release --workpath ./release/build -i img\hispatial.ico -n hs_system_monitor sys_monitor_cli.py





可能出现的问题:

1、若可以成功初始化数据库,但是无法运行,并且提示 Error message [WinError 21] 设备未就绪。: 'Z' 。

出错原因:电脑或服务器不具有 cd/dvd 驱动器,但是操作系统默认添加了一个 cd/dvd 驱动器,导致无法正常收集该设备的相关信息

解决方法:设备管理器 ---> 卸载设备。卸载对应驱动器的设备