执行压力测试过程中,监控服务器性能变化,通过常用的命令可以观察当前时刻性能情况,但是无法判断整个测试过程中性能的变化趋势。
随后,将压力测试过程中服务器性能指标按照10s一次进行采集并写入文件中。完成测试后,通过脚本解析采集的性能数据,使用python的三方模块matplotlib对指标进行绘图。
不足之处是,目前这个脚本只能在压力测试结束后进行曲线图绘制,而不能在压力测试过程中实施绘制
指标文件数据格式如下:
Network_Flow
In_link Out_link
Linking_Number Net_Traffic(MB)
1.87925 0.119033
4.5772 0.141904
2.62263 0.126162
2.50861 0.12293
4.92332 0.139697
3.24791 0.126943
解析指标文件的代码如下:
# coding:utf-8
__author__ = 'Libiao'
import os,sys
curr_dir = os.getcwd()
def is_multi_lines(linelabel):
if ' ' in linelabel.strip():
return True
else:
return False
def read_datas(args=()):
dir_name,files_dict = args
result = {}
for groupname,files_list in files_dict.items():
res = []
res_dir = curr_dir + "\\" + dir_name + "\\"
if not os.listdir(res_dir):
continue
for files in files_list:
try:
with file(res_dir + files,'r') as f:
datas = [data for data in f]
title,line_labels,x_y_labels = datas.pop(0),datas.pop(0),datas.pop(0)
x_label,y_label = x_y_labels.strip("\n").split(' ')
if is_multi_lines(line_labels):
line_label_first,line_label_second = line_labels.strip("\n").split(" ")
line_data_first = [d.strip("\n").split(