1. 首页 > 百货 > 包包服装

Python 实时获取Linux服务器信息

性能测试中需要关注Linux服务器哪些数据?

在进行 Linux 服务器的性能测试时,需要关注多个关键指标以确保系统能够高效、稳定地运行。以下是一些常见的性能测试指标及其重要性:

1. CPU 使用率

用户时间 (User Time): 应用程序实际使用 CPU 的时间。

系统时间 (System Time): 内核和系统调用使用 CPU 的时间。

空闲时间 (Idle Time): CPU 空闲的时间。

等待 I/O 时间 (I/O Wait Time): CPU 等待 I/O 操作完成的时间。

2. 内存使用情况

总内存 (Total Memory): 系统总的物理内存。

已用内存 (Used Memory): 当前正在使用的内存。

可用内存 (Available Memory): 可供新进程使用的内存。

缓存 (Cache): 用于文件系统的缓存。

缓冲区 (Buffers): 用于块设备 I/O 的缓冲区。

交换空间 (Swap Space): 用于虚拟内存的磁盘空间。

交换使用 (Swap Usage): 当前正在使用的交换空间。

3. 磁盘 I/O

读取速率 (Read Rate): 每秒从磁盘读取的数据量。

写入速率 (Write Rate): 每秒写入磁盘的数据量。

IOPS (Input/Output Operations Per Second): 每秒的 I/O 操作次数。

等待队列长度 (Average Queue Length): 平均等待 I/O 操作的请求数。

4. 网络带宽

发送速率 (Send Rate): 每秒发送的数据量。

接收速率 (Receive Rate): 每秒接收的数据量。

网络错误 (Network Errors): 网络传输中的错误数。

丢包率 (Packet Loss): 数据包丢失的比例。

5. 进程信息

进程数 (Number of Processes): 系统中运行的进程数量。

僵尸进程 (Zombie Processes): 已经终止但其父进程尚未回收其资源的进程。

负载平均值 (Load Average): 过去 1 分钟、5 分钟和 15 分钟内的系统负载平均值。

6. 文件系统

挂载点 (Mount Points): 文件系统的挂载点。

使用率 (Usage): 每个挂载点的使用百分比。

剩余空间 (Free Space): 每个挂载点的剩余空间。

7. 系统日志

系统日志 (System Logs): 如 /var/log 目录下的日志文件,记录系统事件和错误信息。

8. 系统启动时间和响应时间

启动时间 (Boot Time): 系统启动所需的时间。

响应时间 (Response Time): 系统对请求的响应时间。

9. 上下文切换 (Context Switches)

上下文切换次数 (Context Switches): 每秒发生的上下文切换次数。

10. 中断 (Interrupts)

中断次数 (Interrupts): 每秒处理的硬件中断次数。

为了收集这些数据,可以使用多种工具,包括但不限于:

top, htop: 实时查看系统资源使用情况。

vmstat, iostat, mpstat: 统计系统性能数据。

dstat: 多合一系统资源统计工具。

sar (System Activity Reporter): 收集、报告和保存系统活动信息。

nmon (Nigel's Monitor): 实时监控系统性能。

netstat, ss, iptraf, iftop: 网络流量监控。

tcpdump, Wireshark: 网络抓包分析。

iotop, iostat: 磁盘 I/O 监控。

sysdig, strace, ltrace: 系统调用跟踪。

以下是一些常用的命令示例,可以帮助你获取上述指标:

# 查看 CPU 使用情况

top -b -n 1 | grep "Cpu(s)"

# 查看内存使用情况

# 查看磁盘 I/O

iostat -x 1 1

# 查看网络带宽

# 查看进程信息

ps aux --sort=-%cpu

# 查看文件系统使用情况

# 查看系统日志

tail -f /var/log/syslog

# 查看上下文切换和中断

以下代码作为辅助,大家如果有兴趣写平台的话,可以用到

python 每1秒获取一次mac电脑的cup、内存、磁盘,并每分钟记录一次数据到指定excel文件中

import psutilimport timefrom openpyxl import Workbookfrom openpyxl.utils import get_column_letter# 初始化 Excel 工作簿wb = Workbook()ws = wb.activews.title = "System Monitor"ws.append(["Timestamp", "CPU (%)", "Memory (%)", "Disk (%)"])# 记录数据的时间间隔(秒)record_interval = 60data_points = []def get_system_info():# 获取 CPU 使用率cpu_percent = psutil.cpu_percent(interval=1)# 获取内存使用情况memory_info = psutil.virtual_memory()memory_percent = memory_info.percent# 获取磁盘使用情况disk_info = psutil.disk_usage('/')disk_percent = disk_info.percentreturn cpu_percent, memory_percent, disk_percentdef record_data_to_excel(data_points):for>

初始化 Excel 工作簿:

创建一个新的 Excel 工作簿,并设置工作表名称为 "System Monitor"。

在第一行添加列标题。

定义 get_system_info 函数:

使用 psutil 库获取 CPU 使用率、内存使用率和磁盘使用率。

定义 record_data_to_excel 函数:

将数据点列表中的数据写入 Excel 文件。

计算 CPU、内存和磁盘使用率的平均值,并将这些平均值写入 Excel 文件。

保存 Excel 文件。

主循环:

每秒获取一次系统信息并打印。

将获取的数据添加到>

本网站的文章部分内容可能来源于网络和网友发布,仅供大家学习与参考,如有侵权,请联系站长进行删除处理,不代表本网站立场,转载者并注明出处:https://jmbhsh.com/baobaofuzhuang/35531.html

联系我们

QQ号:***

微信号:***

工作日:9:30-18:30,节假日休息