标签:平台 ogr 增加 shel 结果 微软 生成 plt win
"05-AUG-2016 12:02:12 * (CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=bomcdb)(CID=(PROGRAM=perl)(HOST=NMC-PREDEAL1)(USER=nmcuser))) * (ADDRESS=(PROTOCOL=tcp)(HOST=172.16.2.18)(PORT=57862)) * establish * bomcdb * 0"
数据条目:
05-AUG-2016 13:25:06 * ping * 0
在数据处理时,特意把包含以下字符service_update、ping、status的数据过滤掉,进行统计。
if str.__contains__("service_update") or str.__contains__("ping") or str.__contains__("status") == 1:
当获取到的数据都是有效后,我们要对数据进行拆分,继续获取我们想获取的数据,由于只做统计,那么只要日期即可:
x = str.split(‘*‘)[0]
发现数据结尾包含一个空间,将空格进行去除
temp = x.strip()
监听日志的数据拆分完毕,把这些数据存放至一个数组 lsn_data中(这里可能大家有点疑惑,为啥不建二维数组呢?python不存在多维数组)。
因为监听日志有一个很特别的地方,数据本来就是有序的,无需排序,只需去重,把数据放到数据lsn_time中,在处理过程中,可以统计时间的个数并放到数组lsn_count中
# 去重
for l_time in lsn_data:
if l_time not in lsn_time:
lsn_time.append(l_time)
lsn_count.append(lsn_data.count(l_time))
数据已经有了,我们只要把数据画图,即可出现上述的图表。
可以把这些数据用图展示,也可以用表展示。这里用图进行展示
s = Series(lsn_count,index=lsn_time)
s1 = Series(16,index=lsn_time)
plt.ylim(0,80)
s.plot()
s1.plot(color=‘red‘, linestyle=‘--‘)
plt.show()
用series()函数进行画图,lsn_count为纵坐标,index作为横坐标。在这里我加了1条红色的先s1,用虚线展示。在2013年,广东ngboss上线之初,某库经常出现tnsping缓慢问题。后来经美国实验室测试,每秒的连接数达到16个监听连接就会缓慢。若生成的图表长时间超过红色虚线,那就应该对应用进行拆分整理,避免监听风暴的产生。
标签:平台 ogr 增加 shel 结果 微软 生成 plt win
原文地址:http://www.cnblogs.com/nolanchan/p/8016346.html