李 斌, 赵中英, 王 敏
(国网宁夏电力有限公司信息通信公司, 宁夏 银川 750001)
近年来,随着信息化的快速发展和信息自动化运维的广泛应用,国网公司对于系统的要求越来越高,既要满足用户各种各样的功能,又要满足高并发、大数据、高性能等非功能性需求。这种情况下,系统运行性能问题慢慢暴露出来,包括资源使用率高、响应慢、业务崩溃等问题;鉴于这种问题,国网公司的很多运维平台都并非实时传输各种数据,而是定期进行采集或传输,这就导致一些重要的告警信息延迟,影响了对系统判断的时间和处理效率,造成直接或者间接的经济损失。鉴于这种现状,本文提出一种接口数据自动化采集和处理的方法,实时采集和处理一些重要的告警信息,同时,不影响系统的各项运行性能和参数。
SG-I6000系统是国网公司统一部署的一款的业务系统,实现了各类信息系统的集中监控、数据集中处理、业务集中管理等功能的一体化系统平台,提升了国网公司的信息系统运维工作水平和工作效率。提由于I6000业务系统的庞大,I6000在数据采集和传输都是定期进行,防止系统因为高负荷、高容量、大数据、高利用率等问题导致瘫痪、崩溃等问题。
为保障业务系统的I6000监控接口稳定运行,避免因接口服务问题引起I6000监控指标中断,对接入I6000监控的38个业务系统的I6000接口服务进行逐一探测,同时自主研发后台监控工具,发现业务系统单个接口服务出现问题时产生实时告警,从而保障I6000监控接口稳定性。
LabView是美国Ni公司推出的一种基于G语言图形开发工具,这种图形化编程语言提供了详细丰富的数据采集、分析、存储等库函数,同时,支持各种网络协议。本文打算采用Labview实现I6000接口数据的自动化采集和分析。Labview的采集方式一般有三种:单点采集、波形采集和连续采集三种方式,单点采集是对采集到的信号值立即返回,无缓冲和延迟,这种采集方式速度快,灵活性不高;波形采集方式需要借助缓冲区进行数据的暂存,将采集的数据暂存到缓冲区,指定一部分数据采集完成后,一次性送出缓冲区的数据,这种采集周期是波形的;连续采集方式是在缓冲区中存放数据的同时进行数据的送出,二者同时进行,这种方式即时性高,灵活性强,本文采取连续采集法[1]。
如下页图1和图2所示,I6000接口数据的连续采集和输出过程,采集过程和输出过程同时进行,采集的数据都存放在dataprocess缓冲区里。连续采集和输出时数据的处理效率很高,实时性强,但如果采集数据时写入的数字信号不是周期性的,输出数据不完整,模拟信号不连续,影响采集的准确性[2-3]。
本次通过I6000平台的的接口数据进行测试,国网公司的信息系统都提供了I6000的纵向数据传输接口,I6000根据传输数据的格式进行数据解析,提取其中的有用数据,将获取的数据进行分析处理。获取其中的重要告警信息数据。如下页图3所示,对获取的数据根据数据原有的格式解析包进行解析,整个报文数据的所有数据。
图2 连续数据模拟输出
通过对采集到的数据报文,按照系统提供给定的数据格式解析库进行解析,提取其中需要的数据,将数据填入预先设定的数据字段中,本文提出的数据自动采集和分析方法可以有效解决I6000数据传输延迟的问题,提升运维工作的效率。
图3 接口数据解析