CN110300002A - 一种可视化的分布式运维方法及装置 - Google Patents
一种可视化的分布式运维方法及装置 Download PDFInfo
- Publication number
- CN110300002A CN110300002A CN201810230925.3A CN201810230925A CN110300002A CN 110300002 A CN110300002 A CN 110300002A CN 201810230925 A CN201810230925 A CN 201810230925A CN 110300002 A CN110300002 A CN 110300002A
- Authority
- CN
- China
- Prior art keywords
- view
- application
- data
- information
- data information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/0246—Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols
- H04L41/0253—Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols using browsers or web-pages for accessing management information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0631—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0631—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
- H04L41/065—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis involving logical or physical relationship, e.g. grouping and hierarchies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0677—Localisation of faults
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/133—Protocols for remote procedure calls [RPC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种可视化的分布式运维方法及装置,包括在各个应用系统进行无侵入式埋点,采集各个应用系统的日志信息;在应用的操作系统上部署开源插件,采集操作系统的硬件运行信息和操作日志信息;将采集到的各种数据信息通过消息中间件集群传递给流式计算框架集群,流式计算框架集群将接收的数据信息存储成HBase或者HDFS格式的文件;在ELK框架中的Kibana框架的基础上,结合业界的报表插件来实现在Web页面中展示各种视图,并通过分布式缓存来实时推送更新各种视图中的数据。本发明优点:可极大的降低分布式系统的运维难度,提升分布式应用的运维效率,为系统的建设、部署、运行、维护、升级改造等过程提供强有力的保障。
Description
技术领域
本发明涉及互联网运维技术领域,具体涉及一种可视化的分布式运维方法及装置。
背景技术
随着近几年互联网和移动互联网用户的大量增长,需要大量高质量网络安全设备来予以保障。对网络设备的运行维护、实时监控更加重要。在IT运维监控系统中,将对企业的网络设备运行数据进行采集和处理,使得企业可以掌握和管理所有IT资源的运行情况。然而,现有的运维监控软件对设备的监控不够直观,对设备处理的数据质量无法智能的进行提示告警。
目前全国各地网络设备资源的显现度低,现场设备运行维护人员的工作往往具有难度大和工作量大的问题。目前运行维护人员的工作方式大多为被动响应式的,容易造成发现设备出现问题的时间比较滞后,不容易及时发现设备出现的一些小问题以及数据质量下降的一些问题,易造成问题积累而产生大问题出现大影响。现场接入网络的设备数量大,设备的性能参数和软硬件环境不完全相同,现场运维人员的工作仍主要采用手动监控方式,技术门槛较高,效率低下,很难及时发现和预见问题的发生。手动监控是一种离线的、片面的、以点见面式的检查方式,不能够持续对设备运行状态进行监控。更难以对整体系统的运行进行调优工作。另外,现场网络设备的监控需要通过大量的命令语句来进行管理和监控运行状态,有一定的技术难度,运行维护人员遇到问题往往过度依赖厂家。而厂家支持部门的人力资源严重不足,运行维护人员的工作负荷也过重,目前往往处于既要应对发现的明显问题的支持解决,又要面临不断改进服务和提高数据质量、分析故障原因的压力。
基于以上情况,需要有一套完整的、体系化的应用可视化项目,来支撑系统的日常运维工作,以极大的降低分布式系统的运维难度,提升分布式应用的运维效率,为系统的建设、部署、运行、维护、升级改造等过程提供强有力的保障。
发明内容
本发明要解决的技术问题之一,在于提供一种可视化的分布式运维方法,通过该方法来实现分布式系统应用的可视化管理,可极大的降低分布式系统的运维难度,提升分布式应用的运维效率,为系统的建设、部署、运行、维护、升级改造等过程提供强有力的保障。
本发明是这样实现技术问题之一的:一种可视化的分布式运维方法,所述方法包括如下步骤:
步骤1、在各个应用系统上进行无侵入式埋点,采集各个应用系统的日志信息;在应用的操作系统上部署开源插件,采集操作系统的硬件运行信息和操作日志信息;
步骤2、将采集到的各种数据信息通过消息中间件集群传递给流式计算框架集群,流式计算框架集群将接收到的数据信息存储成HBase或者HDFS格式的文件;
步骤3、在ELK框架中的Kibana框架的基础上,结合业界的报表插件来实现在Web页面中展示各种视图,包括获取存储的数据信息,并根据数据信息以及数据层中的CMDB配置库信息来进行业务发展视图、应用性能视图、应用部署视图、后台轮询调度视图、应用接口调用视图、用户体验视图或者应用监控视图的展示;同时通过分布式缓存来实时推送更新各种视图中的数据。
进一步地,所述步骤1具体为:
使用各类钩子脚本在各个应用系统上进行无侵入式埋点,通过各类钩子脚本来拦截各个应用系统中的应用程序或者内部组件的传递参数,以实现获取各个应用系统的日志信息;
在应用的操作系统上部署开源的Flume插件,并通过该Flume插件来采集操作系统上的各种硬件运行信息;同时,在应用的操作系统上部署开源的Logstash或Fluentd插件,并通过该Logstash或Fluentd插件来采集操作系统上的操作日志信息。
进一步地,所述步骤2具体为:
将采集到的各种数据信息通过socket异步抛给消息中间件集群,并由消息中间件集群将各种数据信息传递给流式计算框架集群;
流式计算框架集群将接收到的数据信息直接分类并存储成HBase或者HDFS格式的文件;或者流式计算框架集群先采用Storm技术对接收到的数据信息进行流式计算,以根据预先配置在流式计算库中的拦截规则来对数据信息进行过滤和清洗,然后将过滤和清洗后的数据信息分类并存储成HBase或者HDFS格式的文件。
进一步地,在所述步骤3中,所述“根据数据信息以及数据层中的CMDB配置库信息来进行业务发展视图、应用性能视图、应用部署视图、后台轮询调度视图、应用接口调用视图、用户体验视图或者应用监控视图的展示”具体为:
通过基于复杂事件处理的事件流引擎来对数据信息中的业务发展数据进行复杂事件计算,并根据计算结果以及配置的相关业务规则来进行业务发展视图的展示;
根据数据信息中的相关应用的性能数据来实时计算API耗时,并根据计算结果来进行应用性能视图的展示;
根据数据层中的CMDB配置库信息并结合设备间的拓扑关系来进行应用部署视图的展示;
根据CMDB配置库中的拓扑关系信息得到设备在应用中所承担的角色,同时提取角色作为轮询调度主机列表,完成对后台轮询调度任务的分析和统计,并根据统计结果来进行后台轮询调度视图的展示;
根据数据信息中的接口服务调用数据来分析和统计应用接口的调用情况,且根据应用接口的调用情况来进行应用接口调用视图的展示;
根据数据信息中的用户操作行为数据来分析和统计用户的体验情况,并根据用户的体验情况来进行用户体验视图的展示;
通过基于复杂事件处理的事件流引擎来对数据信息中的告警信息进行复杂事件计算,并根据计算结果来进行应用监控视图的展示;同时,在数据层中设置告警阈值,当出现计算结果超过告警阈值的情况时,自动向相关人员发送告警信息。
本发明要解决的技术问题之二,在于提供一种可视化的分布式运维装置,通过该装置来实现分布式系统应用的可视化管理,可极大的降低分布式系统的运维难度,提升分布式应用的运维效率,为系统的建设、部署、运行、维护、升级改造等过程提供强有力的保障。
本发明是这样实现技术问题之二的:一种可视化的分布式运维装置,所述装置包括日志采集模块、数据传递存储模块以及视图展示模块;
所述日志采集模块,用于在各个应用系统上进行无侵入式埋点,采集各个应用系统的日志信息;在应用的操作系统上部署开源插件,采集操作系统的硬件运行信息和操作日志信息;
所述数据传递存储模块,用于将采集到的各种数据信息通过消息中间件集群传递给流式计算框架集群,流式计算框架集群将接收到的数据信息存储成HBase或者HDFS格式的文件;
所述视图展示模块,用于在ELK框架中的Kibana框架的基础上,结合业界的报表插件来实现在Web页面中展示各种视图,包括获取存储的数据信息,并根据数据信息以及数据层中的CMDB配置库信息来进行业务发展视图、应用性能视图、应用部署视图、后台轮询调度视图、应用接口调用视图、用户体验视图或者应用监控视图的展示;同时通过分布式缓存来实时推送更新各种视图中的数据。
进一步地,所述日志采集模块具体为:
使用各类钩子脚本在各个应用系统上进行无侵入式埋点,通过各类钩子脚本来拦截各个应用系统中的应用程序或者内部组件的传递参数,以实现获取各个应用系统的日志信息;
在应用的操作系统上部署开源的Flume插件,并通过该Flume插件来采集操作系统上的各种硬件运行信息;同时,在应用的操作系统上部署开源的Logstash或Fluentd插件,并通过该Logstash或Fluentd插件来采集操作系统上的操作日志信息。
进一步地,所述数据传递存储模块具体为:
将采集到的各种数据信息通过socket异步抛给消息中间件集群,并由消息中间件集群将各种数据信息传递给流式计算框架集群;
流式计算框架集群将接收到的数据信息直接分类并存储成HBase或者HDFS格式的文件;或者流式计算框架集群先采用Storm技术对接收到的数据信息进行流式计算,以根据预先配置在流式计算库中的拦截规则来对数据信息进行过滤和清洗,然后将过滤和清洗后的数据信息分类并存储成HBase或者HDFS格式的文件。
进一步地,在所述视图展示模块中,所述“根据数据信息以及数据层中的CMDB配置库信息来进行业务发展视图、应用性能视图、应用部署视图、后台轮询调度视图、应用接口调用视图、用户体验视图或者应用监控视图的展示”具体为:
通过基于复杂事件处理的事件流引擎来对数据信息中的业务发展数据进行复杂事件计算,并根据计算结果以及配置的相关业务规则来进行业务发展视图的展示;
根据数据信息中的相关应用的性能数据来实时计算API耗时,并根据计算结果来进行应用性能视图的展示;
根据数据层中的CMDB配置库信息并结合设备间的拓扑关系来进行应用部署视图的展示;
根据CMDB配置库中的拓扑关系信息得到设备在应用中所承担的角色,同时提取角色作为轮询调度主机列表,完成对后台轮询调度任务的分析和统计,并根据统计结果来进行后台轮询调度视图的展示;
根据数据信息中的接口服务调用数据来分析和统计应用接口的调用情况,且根据应用接口的调用情况来进行应用接口调用视图的展示;
根据数据信息中的用户操作行为数据来分析和统计用户的体验情况,并根据用户的体验情况来进行用户体验视图的展示;
通过基于复杂事件处理的事件流引擎来对数据信息中的告警信息进行复杂事件计算,并根据计算结果来进行应用监控视图的展示;同时,在数据层中设置告警阈值,当出现计算结果超过告警阈值的情况时,自动向相关人员发送告警信息。
本发明具有如下优点:
1、通过对企业资产配置库(CMDB)同应用的关系梳理,结合应用服务器的相关特点,真实的提供各个应用系统的ADV(应用部署视图),一方面可方便运维人员直观了解系统架构,快速熟悉运维工作流程,另一方面在出现故障或问题的时候,能够按图索骥快速分析和定位故障,缩短系统故障的处理时间,使系统的可用性得到提升。
2、通过基于CEP的Esper技术,提供一个AMV(应用监控视图),可向用户直观的展示应用系统的各个监控与告警视图,确保应用得到全方位的监控,并对超过预设告警阈值的指标给出及时的告警,可确保问题得到及时有效的跟踪处理。
3、采用AOP、servlet、Httpclient等各类钩子脚本和Flume代理组件技术,提供一个可视化的系统应用性能管理APV平台,可有效解决软件产品的性能诊断难问题,提升软件产品的性能管理效率,对软件产品的性能问题实现预分析,避免软件的性能问题到测试和生产环节才发现,可提升产品的可用性,从而提升客户满意度。
4、通过各类无侵入式的js等钩子脚本,采集客户的体验情况,确保用户体验的可视化展示UEV(用户体验视图),进而实现UEM(用户体验管理),节省了客户调研和产品优化的时间,有助于提升工作效率和提升用户满意度。
5、采用基于CEP的Esper技术结合OGG和Binlog日志解析技术,提供实时BDV(业务发展视图),向业务部门、企业经营管理者实时展示业务发展量及趋势判断,为企业营销策略的调优和业务的发展做出可量化、实时可视化的视图,助力企业的业务发展。
6、向用户提供一个后台调度任务的TSPV(任务调度平台视图),将原先隐藏在应用后台运行的轮询展示在前台界面,使得应用维护人员能够及时了解到调度程序当前的运行情况,并能够在界面上直接做相关的操作处理;可确保任务调度的可用性,降低应用维护人员的工作难度,提升其工作效率。
7、采用Esper技术结合接口调用日志异步采集分析技术,提供AIIV(应用接口调用视图),实时展示应用接口的调用情况,针对无授权访问的应用接口进行审计、爆增的应用调用进行限流,确保应用接口的安全、健康的运行。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明一一种可视化的分布式运维方法的执行流程图。
图2为本发明一种可视化的分布式运维装置的原理框图。
具体实施方式
请参照图1所示,本发明一种可视化的分布式运维方法的较佳实施例,所述方法包括如下步骤:
步骤1、在各个应用系统上进行无侵入式埋点,采集各个应用系统的日志信息;在应用的操作系统上部署开源插件,采集操作系统的硬件运行信息和操作日志信息;
步骤2、将采集到的各种数据信息通过消息中间件集群传递给流式计算框架集群,流式计算框架集群将接收到的数据信息存储成HBase或者HDFS格式的文件;
步骤3、在ELK框架中的Kibana框架的基础上,结合业界的报表插件echart来实现在Web页面中展示各种视图,包括获取存储的数据信息,并根据数据信息以及数据层中的CMDB配置库信息来进行业务发展视图(BDV)、应用性能视图(APV)、应用部署视图(ADV)、后台轮询调度视图(TSPV)、应用接口调用视图(AIIV)、用户体验视图(UEV)或者应用监控视图(AMV)的展示;同时通过分布式缓存Redis来实时推送更新各种视图中的数据。
所述步骤1具体为:
使用各类钩子脚本(即鹰眼‐Agent)在各个应用系统上进行无侵入式埋点,通过各类钩子脚本来拦截各个应用系统中的应用程序或者内部组件的传递参数,以实现获取各个应用系统的日志信息;例如,在具体实施时,可通过埋入到各个应用系统上的servlet、js、aop、Httpclient等钩子脚本来拦截各种传递参数,如可拦截入参、出参、异常进入时间、离开时间等各类参数信息,从而实现获取各个应用系统的日志信息,该日志信息包含应用程序运行信息、应用操作日志、业务日志等各种日志信息。
在应用的操作系统上部署开源的Flume插件,并通过该Flume插件来采集操作系统上的各种硬件运行信息,包括CPU、内存、网络、磁盘、JVM等的运行信息和日志信息;同时,在应用的操作系统上部署开源的Logstash或Fluentd插件,并通过该Logstash或Fluentd插件来采集操作系统上的操作日志信息(如syslog等)。
所述步骤2具体为:
将采集到的各种数据信息通过socket异步抛给消息中间件集群(MQCluster),并由消息中间件集群将各种数据信息传递给流式计算框架集群;由于拦截的各类日志信息具有并发量大、总量多等特点,因此,通过将各类日志信息异步抛给消息中间件集群进行统一处理,可极大的提高日志信息的处理效率和降低对应用的影响。
流式计算框架集群将接收到的数据信息直接分类并存储成HBase或者HDFS格式的文件;或者流式计算框架集群先采用Storm技术对接收到的数据信息进行流式计算,以根据预先配置在流式计算库中的拦截规则来对数据信息进行过滤和清洗,例如,可设置仅捕捉前端的HTTP请求日志,同时对于HTTP请求日志,还可通过编写程序使其仅采集发起地址、发起方、发起时间以及响应时间信息,然后将过滤和清洗后的数据信息分类并存储成HBase或者HDFS格式的文件,例如,可将与性能数据相关的数据信息存储在同一类当中,将与业务数据相关的数据信息存储在同一类当中等等。其中,存储成HBase格式的文件主要用于详单信息的查询,存储成HDFS格式的文件主要用于增量分析日志信息,以形成性能监控的各个指标。
在所述步骤3中,所述“根据数据信息以及数据层中的CMDB配置库信息来进行业务发展视图(BDV)、应用性能视图(APV)、应用部署视图(ADV)、后台轮询调度视图(TSPV)、应用接口调用视图(AIIV)、用户体验视图(UEV)或者应用监控视图(AMV)的展示”具体为:
通过基于复杂事件处理(CEP)的事件流引擎Esper来对数据信息中的业务发展数据进行复杂事件计算,并根据计算结果以及配置的相关业务规则来进行业务发展视图(BDV)的展示;例如,通过对业务发展数据进行复杂事件计算后,就可以得出业务订单的受理情况,具体可包括未派发订单量、已派发订单量、单日甩单量、已完成订单量、订单受理率、订单完成率、各地区处理的订单量等各种订单受理情况,并将各种的订单受理情况以图、表相结合的方式展现出来。
根据数据信息中的相关应用的性能数据来实时计算API耗时,并根据计算结果来进行应用性能视图(APV)的展示;例如,针对每个API的进入时间和离开时间的时间差,可实时计算出API耗时,并得出应用API的变化历史和当前Top等相关信息,并将这些相关信息以图、表相结合的方式展现出来。
根据数据层中的CMDB配置库信息并结合设备间的拓扑关系来进行应用部署视图(ADV)的展示;例如,可将部署的服务器台数、服务器之间的主从关系、服务器之间的连接关系、每台服务器的CPU负荷、服务器处理的事务总量、每秒的SQL、各服务器的状态、各服务器分配的事务等相关应用部署情况都以图、表相结合的方式展现出来。
根据CMDB配置库中的拓扑关系信息得到设备在应用中所承担的角色,同时提取角色作为轮询调度主机列表,完成对后台轮询调度任务的分析和统计,并根据统计结果来进行后台轮询调度视图(TSPV)的展示;例如,可统计某一个应用执行的后台轮询调度任务的次数、执行成功率、执行失败率等相关信息,并将这些信息以图、表相结合的方式展现出来。
根据数据信息中的接口服务调用数据来分析和统计应用接口的调用情况,且根据应用接口的调用情况来进行应用接口调用视图(AIIV)的展示;例如,可分析和统计各应用接口的调用方IP地址、授权信息、请求时间、响应时间、入参、出参、调用结果等相关信息,从而得出各应用接口的调用成功率、调用次数、授权率等信息,并将这些信息以图、表相结合的方式展现出来,同时,通过分析和统计还可实现对应用接口进行实时监控和趋势预判,并对出现暴增、非法侵入等进行鉴权和告警。
根据数据信息中的用户操作行为数据来分析和统计用户的体验情况,并根据用户的体验情况来进行用户体验视图(UEV)的展示;例如,通过前台页面植入的js脚本,可采集用户打开的菜单、点击的屏幕区域、点击的按钮等信息,通过统计和分析用户的操作行为信息,可得到用户喜欢的业务类型、订单处理的耗时、订单异常量等各种信息,并将这些信息以图、表相结合的方式展现出来,通过对用户体验视图的实时展示,可方便相关人员第一时间掌握用户的体验情况,并有针对性的进行优化。
通过基于复杂事件处理的事件流引擎来对数据信息中的告警信息进行复杂事件计算,并根据计算结果来进行应用监控视图(AMV)的展示,例如,通过对告警信息进行复杂事件计算后,可得出各个模块在一某一时间段内出现的告警次数、告警级别、模块性能等信息,并将这些信息以图、表相结合的方式展现出来;同时,在数据层中设置告警阈值,当出现计算结果超过告警阈值的情况时,自动向相关人员发送告警信息,例如,当某个模块在一设定的时间内出现的告警次数超过了设置的告警阈值,此时就通过短信、邮件等方式向相关人员发送告警信息。
当然,在具体实施时,对于应用的数据库相关指标、应用服务器的相关指标等,则可通过数据库的相关视图来进行展示,如:可对数据库SQL语句耗时Top10、数据库存储空间、数据库当前使用CPU等信息进行统计和分析,并以图、表相结合的方式展示出来。对于部分特殊的统计报表,则需要通过编写基于H5+CSS3编写程序来实现页面展现,通过对存储在日志分析服务器上的数据进行统计和分析,并将统计和分析结果以图、表相结合的方式展示在页面上,以方便维护人员、研发人员、领导等进行查看。
请参照图2所示,本发明一种可视化的分布式系统实时监控运维装置的较佳实施例,所述装置包括日志采集模块、数据传递存储模块以及视图展示模块;
所述日志采集模块,用于在各个应用系统上进行无侵入式埋点,采集各个应用系统的日志信息;在应用的操作系统上部署开源插件,采集操作系统的硬件运行信息和操作日志信息;
所述数据传递存储模块,用于将采集到的各种数据信息通过消息中间件集群传递给流式计算框架集群,流式计算框架集群将接收到的数据信息存储成HBase或者HDFS格式的文件;
所述视图展示模块,用于在ELK框架中的Kibana框架的基础上,结合业界的报表插件echart来实现在Web页面中展示各种视图,包括获取存储的数据信息,并根据数据信息以及数据层中的CMDB配置库信息来进行业务发展视图(BDV)、应用性能视图(APV)、应用部署视图(ADV)、后台轮询调度视图(TSPV)、应用接口调用视图(AIIV)、用户体验视图(UEV)或者应用监控视图(AMV)的展示;同时通过分布式缓存Redis来实时推送更新各种视图中的数据。
所述日志采集模块具体为:
使用各类钩子脚本(即鹰眼‐Agent)在各个应用系统上进行无侵入式埋点,通过各类钩子脚本来拦截各个应用系统中的应用程序或者内部组件的传递参数,以实现获取各个应用系统的日志信息;例如,在具体实施时,可通过埋入到各个应用系统上的servlet、js、aop、Httpclient等钩子脚本来拦截各种传递参数,如可拦截入参、出参、异常进入时间、离开时间等各类参数信息,从而实现获取各个应用系统的日志信息,该日志信息包含应用程序运行信息、应用操作日志、业务日志等各种日志信息。
在应用的操作系统上部署开源的Flume插件,并通过该Flume插件来采集操作系统上的各种硬件运行信息,包括CPU、内存、网络、磁盘、JVM等的运行信息和日志信息;同时,在应用的操作系统上部署开源的Logstash或Fluentd插件,并通过该Logstash或Fluentd插件来采集操作系统上的操作日志信息(如syslog等)。
所述数据传递存储模块具体为:
将采集到的各种数据信息通过socket异步抛给消息中间件集群(MQCluster),并由消息中间件集群将各种数据信息传递给流式计算框架集群;由于拦截的各类日志信息具有并发量大、总量多等特点,因此,通过将各类日志信息异步抛给消息中间件集群进行统一处理,可极大的提高日志信息的处理效率和降低对应用的影响。
流式计算框架集群将接收到的数据信息直接分类并存储成HBase或者HDFS格式的文件;或者流式计算框架集群先采用Storm技术对接收到的数据信息进行流式计算,以根据预先配置在流式计算库中的拦截规则来对数据信息进行过滤和清洗,例如,可设置仅捕捉前端的HTTP请求日志,同时对于HTTP请求日志,还可通过编写程序使其仅采集发起地址、发起方、发起时间以及响应时间信息,然后将过滤和清洗后的数据信息分类并存储成HBase或者HDFS格式的文件,例如,可将与性能数据相关的数据信息存储在同一类当中,将与业务数据相关的数据信息存储在同一类当中等等。其中,存储成HBase格式的文件主要用于详单信息的查询,存储成HDFS格式的文件主要用于增量分析日志信息,以形成性能监控的各个指标。
在所述视图展示模块中,所述“根据数据信息以及数据层中的CMDB配置库信息来进行业务发展视图(BDV)、应用性能视图(APV)、应用部署视图(ADV)、后台轮询调度视图(TSPV)、应用接口调用视图(AIIV)、用户体验视图(UEV)或者应用监控视图(AMV)的展示”具体为:
通过基于复杂事件处理(CEP)的事件流引擎Esper来对数据信息中的业务发展数据进行复杂事件计算,并根据计算结果以及配置的相关业务规则来进行业务发展视图(BDV)的展示;例如,通过对业务发展数据进行复杂事件计算后,就可以得出业务订单的受理情况,具体可包括未派发订单量、已派发订单量、单日甩单量、已完成订单量、订单受理率、订单完成率、各地区处理的订单量等各种订单受理情况,并将各种的订单受理情况以图、表相结合的方式展现出来。
根据数据信息中的相关应用的性能数据来实时计算API耗时,并根据计算结果来进行应用性能视图(APV)的展示;例如,针对每个API的进入时间和离开时间的时间差,可实时计算出API耗时,并得出应用API的变化历史和当前Top等相关信息,并将这些相关信息以图、表相结合的方式展现出来。
根据数据层中的CMDB配置库信息并结合设备间的拓扑关系来进行应用部署视图(ADV)的展示;例如,可将部署的服务器台数、服务器之间的主从关系、服务器之间的连接关系、每台服务器的CPU负荷、服务器处理的事务总量、每秒的SQL、各服务器的状态、各服务器分配的事务等相关应用部署情况都以图、表相结合的方式展现出来。
根据CMDB配置库中的拓扑关系信息得到设备在应用中所承担的角色,同时提取角色作为轮询调度主机列表,完成对后台轮询调度任务的分析和统计,并根据统计结果来进行后台轮询调度视图(TSPV)的展示;例如,可统计某一个应用执行的后台轮询调度任务的次数、执行成功率、执行失败率等相关信息,并将这些信息以图、表相结合的方式展现出来。
根据数据信息中的接口服务调用数据来分析和统计应用接口的调用情况,且根据应用接口的调用情况来进行应用接口调用视图(AIIV)的展示;例如,可分析和统计各应用接口的调用方IP地址、授权信息、请求时间、响应时间、入参、出参、调用结果等相关信息,从而得出各应用接口的调用成功率、调用次数、授权率等信息,并将这些信息以图、表相结合的方式展现出来,同时,通过分析和统计还可实现对应用接口进行实时监控和趋势预判,并对出现暴增、非法侵入等进行鉴权和告警。
根据数据信息中的用户操作行为数据来分析和统计用户的体验情况,并根据用户的体验情况来进行用户体验视图(UEV)的展示;例如,通过前台页面植入的js脚本,可采集用户打开的菜单、点击的屏幕区域、点击的按钮等信息,通过统计和分析用户的操作行为信息,可得到用户喜欢的业务类型、订单处理的耗时、订单异常量等各种信息,并将这些信息以图、表相结合的方式展现出来,通过对用户体验视图的实时展示,可方便相关人员第一时间掌握用户的体验情况,并有针对性的进行优化。
通过基于复杂事件处理的事件流引擎来对数据信息中的告警信息进行复杂事件计算,并根据计算结果来进行应用监控视图(AMV)的展示,例如,通过对告警信息进行复杂事件计算后,可得出各个模块在一某一时间段内出现的告警次数、告警级别、模块性能等信息,并将这些信息以图、表相结合的方式展现出来;同时,在数据层中设置告警阈值,当出现计算结果超过告警阈值的情况时,自动向相关人员发送告警信息,例如,当某个模块在一设定的时间内出现的告警次数超过了设置的告警阈值,此时就通过短信、邮件等方式向相关人员发送告警信息。
当然,在具体实施时,对于应用的数据库相关指标、应用服务器的相关指标等,则可通过数据库的相关视图来进行展示,如:可对数据库SQL语句耗时Top10、数据库存储空间、数据库当前使用CPU等信息进行统计和分析,并以图、表相结合的方式展示出来。对于部分特殊的统计报表,则需要通过编写基于H5+CSS3编写程序来实现页面展现,通过对存储在日志分析服务器上的数据进行统计和分析,并将统计和分析结果以图、表相结合的方式展示在页面上,以方便维护人员、研发人员、领导等进行查看。
综上所述,本发明具有如下优点:
1、通过对企业资产配置库(CMDB)同应用的关系梳理,结合应用服务器的相关特点,真实的提供各个应用系统的ADV(应用部署视图),一方面可方便运维人员直观了解系统架构,快速熟悉运维工作流程,另一方面在出现故障或问题的时候,能够按图索骥快速分析和定位故障,缩短系统故障的处理时间,使系统的可用性得到提升。
2、通过基于CEP的Esper技术,提供一个AMV(应用监控视图),可向用户直观的展示应用系统的各个监控与告警视图,确保应用得到全方位的监控,并对超过预设告警阈值的指标给出及时的告警,可确保问题得到及时有效的跟踪处理。
3、采用AOP、servlet、Httpclient等各类钩子脚本和Flume代理组件技术,提供一个可视化的系统应用性能管理APV平台,可有效解决软件产品的性能诊断难问题,提升软件产品的性能管理效率,对软件产品的性能问题实现预分析,避免软件的性能问题到测试和生产环节才发现,可提升产品的可用性,从而提升客户满意度。
4、通过各类无侵入式的js等钩子脚本,采集客户的体验情况,确保用户体验的可视化展示UEV(用户体验视图),进而实现UEM(用户体验管理),节省了客户调研和产品优化的时间,有助于提升工作效率和提升用户满意度。
5、采用基于CEP的Esper技术结合OGG和Binlog日志解析技术,提供实时BDV(业务发展视图),向业务部门、企业经营管理者实时展示业务发展量及趋势判断,为企业营销策略的调优和业务的发展做出可量化、实时可视化的视图,助力企业的业务发展。
6、向用户提供一个后台调度任务的TSPV(任务调度平台视图),将原先隐藏在应用后台运行的轮询展示在前台界面,使得应用维护人员能够及时了解到调度程序当前的运行情况,并能够在界面上直接做相关的操作处理;可确保任务调度的可用性,降低应用维护人员的工作难度,提升其工作效率。
7、采用Esper技术结合接口调用日志异步采集分析技术,提供AIIV(应用接口调用视图),实时展示应用接口的调用情况,针对无授权访问的应用接口进行审计、爆增的应用调用进行限流,确保应用接口的安全、健康的运行。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (8)
1.一种可视化的分布式运维方法,其特征在于:所述方法包括如下步骤:
步骤1、在各个应用系统上进行无侵入式埋点,采集各个应用系统的日志信息;在应用的操作系统上部署开源插件,采集操作系统的硬件运行信息和操作日志信息;
步骤2、将采集到的各种数据信息通过消息中间件集群传递给流式计算框架集群,流式计算框架集群将接收到的数据信息存储成HBase或者HDFS格式的文件;
步骤3、在ELK框架中的Kibana框架的基础上,结合业界的报表插件来实现在Web页面中展示各种视图,包括获取存储的数据信息,并根据数据信息以及数据层中的CMDB配置库信息来进行业务发展视图、应用性能视图、应用部署视图、后台轮询调度视图、应用接口调用视图、用户体验视图或者应用监控视图的展示;同时通过分布式缓存来实时推送更新各种视图中的数据。
2.根据权利要求1所述的一种可视化的分布式运维方法,其特征在于:所述步骤1具体为:
使用各类钩子脚本在各个应用系统上进行无侵入式埋点,通过各类钩子脚本来拦截各个应用系统中的应用程序或者内部组件的传递参数,以实现获取各个应用系统的日志信息;
在应用的操作系统上部署开源的Flume插件,并通过该Flume插件来采集操作系统上的各种硬件运行信息;同时,在应用的操作系统上部署开源的Logstash或Fluentd插件,并通过该Logstash或Fluentd插件来采集操作系统上的操作日志信息。
3.根据权利要求1所述的一种可视化的分布式运维方法,其特征在于:所述步骤2具体为:
将采集到的各种数据信息通过socket异步抛给消息中间件集群,并由消息中间件集群将各种数据信息传递给流式计算框架集群;
流式计算框架集群将接收到的数据信息直接分类并存储成HBase或者HDFS格式的文件;或者流式计算框架集群先采用Storm技术对接收到的数据信息进行流式计算,以根据预先配置在流式计算库中的拦截规则来对数据信息进行过滤和清洗,然后将过滤和清洗后的数据信息分类并存储成HBase或者HDFS格式的文件。
4.根据权利要求1所述的一种可视化的分布式运维方法,其特征在于:在所述步骤3中,所述“根据数据信息以及数据层中的CMDB配置库信息来进行业务发展视图、应用性能视图、应用部署视图、后台轮询调度视图、应用接口调用视图、用户体验视图或者应用监控视图的展示”具体为:
通过基于复杂事件处理的事件流引擎来对数据信息中的业务发展数据进行复杂事件计算,并根据计算结果以及配置的相关业务规则来进行业务发展视图的展示;
根据数据信息中的相关应用的性能数据来实时计算API耗时,并根据计算结果来进行应用性能视图的展示;
根据数据层中的CMDB配置库信息并结合设备间的拓扑关系来进行应用部署视图的展示;
根据CMDB配置库中的拓扑关系信息得到设备在应用中所承担的角色,同时提取角色作为轮询调度主机列表,完成对后台轮询调度任务的分析和统计,并根据统计结果来进行后台轮询调度视图的展示;
根据数据信息中的接口服务调用数据来分析和统计应用接口的调用情况,且根据应用接口的调用情况来进行应用接口调用视图的展示;
根据数据信息中的用户操作行为数据来分析和统计用户的体验情况,并根据用户的体验情况来进行用户体验视图的展示;
通过基于复杂事件处理的事件流引擎来对数据信息中的告警信息进行复杂事件计算,并根据计算结果来进行应用监控视图的展示;同时,在数据层中设置告警阈值,当出现计算结果超过告警阈值的情况时,自动向相关人员发送告警信息。
5.一种可视化的分布式运维装置,其特征在于:所述装置包括日志采集模块、数据传递存储模块以及视图展示模块;
所述日志采集模块,用于在各个应用系统上进行无侵入式埋点,采集各个应用系统的日志信息;在应用的操作系统上部署开源插件,采集操作系统的硬件运行信息和操作日志信息;
所述数据传递存储模块,用于将采集到的各种数据信息通过消息中间件集群传递给流式计算框架集群,流式计算框架集群将接收到的数据信息存储成HBase或者HDFS格式的文件;
所述视图展示模块,用于在ELK框架中的Kibana框架的基础上,结合业界的报表插件来实现在Web页面中展示各种视图,包括获取存储的数据信息,并根据数据信息以及数据层中的CMDB配置库信息来进行业务发展视图、应用性能视图、应用部署视图、后台轮询调度视图、应用接口调用视图、用户体验视图或者应用监控视图的展示;同时通过分布式缓存来实时推送更新各种视图中的数据。
6.根据权利要求5所述的一种可视化的分布式运维装置,其特征在于:所述日志采集模块具体为:
使用各类钩子脚本在各个应用系统上进行无侵入式埋点,通过各类钩子脚本来拦截各个应用系统中的应用程序或者内部组件的传递参数,以实现获取各个应用系统的日志信息;
在应用的操作系统上部署开源的Flume插件,并通过该Flume插件来采集操作系统上的各种硬件运行信息;同时,在应用的操作系统上部署开源的Logstash或Fluentd插件,并通过该Logstash或Fluentd插件来采集操作系统上的操作日志信息。
7.根据权利要求5所述的一种可视化的分布式运维装置,其特征在于:所述数据传递存储模块具体为:
将采集到的各种数据信息通过socket异步抛给消息中间件集群,并由消息中间件集群将各种数据信息传递给流式计算框架集群;
流式计算框架集群将接收到的数据信息直接分类并存储成HBase或者HDFS格式的文件;或者流式计算框架集群先采用Storm技术对接收到的数据信息进行流式计算,以根据预先配置在流式计算库中的拦截规则来对数据信息进行过滤和清洗,然后将过滤和清洗后的数据信息分类并存储成HBase或者HDFS格式的文件。
8.根据权利要求5所述的一种可视化的分布式运维装置,其特征在于:在所述视图展示模块中,所述“根据数据信息以及数据层中的CMDB配置库信息来进行业务发展视图、应用性能视图、应用部署视图、后台轮询调度视图、应用接口调用视图、用户体验视图或者应用监控视图的展示”具体为:
通过基于复杂事件处理的事件流引擎来对数据信息中的业务发展数据进行复杂事件计算,并根据计算结果以及配置的相关业务规则来进行业务发展视图的展示;
根据数据信息中的相关应用的性能数据来实时计算API耗时,并根据计算结果来进行应用性能视图的展示;
根据数据层中的CMDB配置库信息并结合设备间的拓扑关系来进行应用部署视图的展示;
根据CMDB配置库中的拓扑关系信息得到设备在应用中所承担的角色,同时提取角色作为轮询调度主机列表,完成对后台轮询调度任务的分析和统计,并根据统计结果来进行后台轮询调度视图的展示;
根据数据信息中的接口服务调用数据来分析和统计应用接口的调用情况,且根据应用接口的调用情况来进行应用接口调用视图的展示;
根据数据信息中的用户操作行为数据来分析和统计用户的体验情况,并根据用户的体验情况来进行用户体验视图的展示;
通过基于复杂事件处理的事件流引擎来对数据信息中的告警信息进行复杂事件计算,并根据计算结果来进行应用监控视图的展示;同时,在数据层中设置告警阈值,当出现计算结果超过告警阈值的情况时,自动向相关人员发送告警信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810230925.3A CN110300002A (zh) | 2018-03-22 | 2018-03-22 | 一种可视化的分布式运维方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810230925.3A CN110300002A (zh) | 2018-03-22 | 2018-03-22 | 一种可视化的分布式运维方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110300002A true CN110300002A (zh) | 2019-10-01 |
Family
ID=68025329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810230925.3A Pending CN110300002A (zh) | 2018-03-22 | 2018-03-22 | 一种可视化的分布式运维方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110300002A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111817912A (zh) * | 2020-06-28 | 2020-10-23 | 中国工商银行股份有限公司 | 基于轻量级脚本的接入层热点流量监控方法及装置 |
CN112084180A (zh) * | 2020-09-02 | 2020-12-15 | 中国第一汽车股份有限公司 | 一种监控车载应用质量的方法、装置、设备及介质 |
CN114553679A (zh) * | 2022-02-23 | 2022-05-27 | 浪潮软件集团有限公司 | 一种运维数据采集方法、装置及介质 |
CN115883647A (zh) * | 2022-11-29 | 2023-03-31 | 京东科技信息技术有限公司 | 业务日志记录方法、系统、装置、终端、服务器及介质 |
-
2018
- 2018-03-22 CN CN201810230925.3A patent/CN110300002A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111817912A (zh) * | 2020-06-28 | 2020-10-23 | 中国工商银行股份有限公司 | 基于轻量级脚本的接入层热点流量监控方法及装置 |
CN112084180A (zh) * | 2020-09-02 | 2020-12-15 | 中国第一汽车股份有限公司 | 一种监控车载应用质量的方法、装置、设备及介质 |
CN114553679A (zh) * | 2022-02-23 | 2022-05-27 | 浪潮软件集团有限公司 | 一种运维数据采集方法、装置及介质 |
CN115883647A (zh) * | 2022-11-29 | 2023-03-31 | 京东科技信息技术有限公司 | 业务日志记录方法、系统、装置、终端、服务器及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107729214B (zh) | 一种可视化的分布式系统实时监控运维方法及装置 | |
JP7142116B2 (ja) | 知識集約型データ処理システム | |
US10931540B2 (en) | Continuous data sensing of functional states of networked computing devices to determine efficiency metrics for servicing electronic messages asynchronously | |
US12014283B2 (en) | Systems and methods for identifying process flows from log files and visualizing the flow | |
CN110300002A (zh) | 一种可视化的分布式运维方法及装置 | |
EP2871577B1 (en) | Complex event processing (CEP) based system for handling performance issues of a CEP system and corresponding method | |
CN108701152A (zh) | 管理和呈现工业资产的数据 | |
CN108292296A (zh) | 用于利用复发性模式创建时间序列数据的时段分布图的方法 | |
CN109615213A (zh) | 一种运维服务任务的智能分配方法及系统 | |
JP2017504121A (ja) | 端末デバイスにおけるユーザインタフェースを用いたユーザ行動および関与の計測機 | |
CN108809701A (zh) | 一种数据中心智慧数据平台及其实现方法 | |
Mukherjee et al. | Leveraging big data analytics in 5G‐enabled IoT and industrial IoT for the development of sustainable smart cities | |
CN109460432A (zh) | 一种数据处理方法及系统 | |
CN111800292B (zh) | 基于历史流量的预警方法、装置、计算机设备及存储介质 | |
CN110473077A (zh) | 固定资产异常数据的监测和提醒方法、装置及电子设备 | |
CN109144834A (zh) | 用户行为数据的采集方法及装置、安卓系统及终端设备 | |
US20160092333A1 (en) | Telemetry for Data | |
CN110677271B (zh) | 基于elk的大数据告警方法、装置、设备及存储介质 | |
CN111970151A (zh) | 虚拟及容器网络的流量故障定位方法及系统 | |
CN105051718B (zh) | 用于监视-挖掘-管理循环的方法和系统 | |
US20220058745A1 (en) | System and method for crowdsensing-based insurance premiums | |
Lee et al. | Detecting anomaly teletraffic using stochastic self-similarity based on Hadoop | |
KR20210049139A (ko) | 헬스 케어 제공자 데이터 시스템들 프로세싱 및 분석 | |
CN116246781A (zh) | 基于物联网技术的j2ee老年人监护系统 | |
CN105306257B (zh) | 一种收集用户体验的方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20191001 |
|
WD01 | Invention patent application deemed withdrawn after publication |