CN110309041A - 浏览器性能实时监控方法、装置、设备及可读存储介质 - Google Patents

浏览器性能实时监控方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
CN110309041A
CN110309041A CN201910582770.4A CN201910582770A CN110309041A CN 110309041 A CN110309041 A CN 110309041A CN 201910582770 A CN201910582770 A CN 201910582770A CN 110309041 A CN110309041 A CN 110309041A
Authority
CN
China
Prior art keywords
real
time
performance
data
monitoring
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
Application number
CN201910582770.4A
Other languages
English (en)
Inventor
仇加林
朱子豪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WeBank Co Ltd
Original Assignee
WeBank Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN201910582770.4A priority Critical patent/CN110309041A/zh
Publication of CN110309041A publication Critical patent/CN110309041A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • G06F11/3093Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/323Visualisation of programs or trace data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及金融科技领域,并公开了一种浏览器性能实时监控方法,包括:在接收到性能录制指令时,获取性能录制指令对应的目标网页;通过本地数据库检测浏览器本地是否创建有第一监控数据库,其中,第一监控数据库存储有第一监控任务表及第一性能指标表;若是,则监听目标网页对应的第一实时指标数据;通过本地数据库将第一实时指标数据插入第一监控数据库中;基于第一监控任务表及第一性能指标表生成第一曲线图。本发明还公开一种浏览器性能实时监控装置、设备和可读存储介质。本发明中,整个监控过程在后台运行不影响其他开发人员的使用;在进行长时间的录性能录制时,分析网页长时间运行后CPU、内存等各项性能指标是否劣化,起到性能监控作用。

Description

浏览器性能实时监控方法、装置、设备及可读存储介质
技术领域
本发明涉及金融科技(Fintech)技术领域,尤其涉及金融行业的浏览器性能实时监控方法、装置、设备及可读存储介质。
背景技术
随着计算机技术的发展,越来越多的技术(如分布式、大数据、区块链Blockchain、人工智能等)应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,越来越多的技术应用于金融行业。金融行业的开发人员,通常会使用Chrome浏览器,Chrome是由Google开发的免费网页浏览器;并且,Chrome DevTools是Chrome自带的开发者工具。
Chrome DevTools提供的Performance面板、Memory面板,只能在开发阶段,供Web开发人员使用。在使用过程中必需打开Chrome DevTools面板,影响普通用户使用;并且,Chrome DevTools只能对当前的打开的网页进行性能的录制与分析,必需完成录制后,才能进行分析。
并且,由于Chrome DevTools记录详细的方法调用栈、变量内存堆栈等信息,信息量过大,因此,不能进行长时间的录制与分析,如果录制时间略长,如达到5分钟左右,常常出现自动崩溃的情况。
发明内容
本发明的主要目的在于提出一种浏览器性能实时监控方法、装置、设备及可读存储介质,旨在解决现有技术中监控浏览器时若录制时间长会出现自动崩溃情况的问题。
为实现上述目的,本发明提供一种浏览器性能实时监控方法,所述浏览器性能实时监控方法包括如下步骤:
在接收到性能录制指令时,获取所述性能录制指令对应的目标网页;
通过本地数据库检测浏览器本地是否创建有第一监控数据库,其中,所述第一监控数据库存储有第一监控任务表及第一性能指标表;
若是,则监听所述目标网页对应的第一实时指标数据;
通过所述本地数据库将所述第一实时指标数据插入所述第一监控数据库中;
基于所述第一监控任务表及所述第一性能指标表生成第一曲线图。
可选地,所述通过本地数据库检测浏览器本地是否创建有第一监控数据库,其中,所述第一监控数据库存储有第一监控任务表及第一性能指标表的步骤之后,所述浏览器性能实时监控方法包括:
若所述浏览器本地未创建有第一监控数据库,则获取所述目标网页对应的第一时间戳、所述目标网页对应的标签名称及所述目标网页对应的性能指标数据;
将所述第一时间戳及所述标签名称组合形成任务数据;
基于所述任务数据及第一任务ID创建第二监控任务表,且基于所述性能指标数据及所述第一任务ID创建第二性能指标表;
通过所述本地数据库,基于所述第二监控任务表及所述第二性能指标表创建所述第二监控数据库,其中,所述第二监控数据库为本地数据库检测浏览器本地未创建有第一监控数据库后创建的数据库。
可选地,所述监听所述目标网页对应的第一实时指标数据的步骤包括:
监听所述目标网页对应的进程信息;
在监听到所述进程信息发生变化时,触发所述目标网页对应的进程实时更新事件;
基于所述进程实时更新事件获取所述第一实时指标数据。
可选地,所述基于所述进程实时更新事件获取所述第一实时指标数据的步骤包括:
基于所述进程实时更新事件调用处理进程信息函数,且基于所述处理进程信息函数获取进程实例;
基于所述进程实例获取所述第一实时指标数据对应的指标值。
可选地,所述基于所述第一监控任务表及所述第一性能指标表生成第一曲线图的步骤包括:
在接收到查询任务指令时,在所述第一监控任务表中获取所述查询任务指令对应的第二任务ID,其中,所述第二任务ID包括任意一个或多个所述第一任务ID;
从所述第一性能指标表中获取所述第二任务ID对应的第三实时指标数据及第二时间戳;
将所述第三实时指标数据及所述第二时间戳加入图表组件中,得到所述第一曲线图。
可选地,所述将所述第三实时指标数据及所述第二时间戳加入图表组件中,得到所述第一曲线图的步骤之后,所述浏览器性能实时监控方法包括:
基于所述第一曲线图,判断所述第三实时指标数据是否在预设范围内;
若否,则对所述目标网页对应的应用进程进行调整,以使所述第三实时指标数据调整至所述预设范围内。
可选地,所述在接收到录制指令时,获取所述录制指令对应的目标网页的步骤之前,所述浏览器性能实时监控方法还包括:
在接收到启动指令时,获取所述启动指令对应的网页界面,其中,所述网页界面包括多个所述目标网页。
可选地,所述第一实时指标数据包括CPU指标数据、网络指标数据及内存指标数据。
此外,为实现上述目的,本发明还提供一种浏览器性能实时监控装置,所述浏览器性能实时监控装置包括:
检测模块,用于通过本地数据库检测浏览器本地是否创建有第一监控数据库,其中,所述第一监控数据库存储有第一监控任务表及第一性能指标表;
监听模块,用于若是,则监听所述目标网页对应的第一实时指标数据;
插入模块,用于通过所述本地数据库将所述第一实时指标数据插入所述第一监控数据库中;
生成模块,用于基于所述第一监控任务表及所述第一性能指标表生成第一曲线图。
可选地,所述浏览器性能实时监控装置还包括创建模块,用于:
若所述浏览器本地未创建有第一监控数据库,则获取所述目标网页对应的第一时间戳、所述目标网页对应的标签名称及所述目标网页对应的性能指标数据;
将所述第一时间戳及所述标签名称组合形成任务数据;
基于所述任务数据及第一任务ID创建第二监控任务表,且基于所述性能指标数据及所述第一任务ID创建第二性能指标表;
通过所述本地数据库,基于所述第二监控任务表及所述第二性能指标表创建所述第二监控数据库,其中,所述第二监控数据库为本地数据库检测浏览器本地未创建有第一监控数据库后创建的数据库;
监听所述目标网页对应的第二实时指标数据;
通过所述本地数据库将第二实时指标数据插入所述第二监控数据库中;
基于所述第二监控任务表及所述第二性能指标表生成第二曲线图。
可选地,所述监听模块还用于:
监听所述目标网页对应的进程信息;
在监听到所述进程信息发生变化时,触发所述目标网页对应的进程实时更新事件;
基于所述进程实时更新事件获取所述第一实时指标数据。
可选地,所述监听模块还用于:
基于所述进程实时更新事件调用处理进程信息函数,且基于所述处理进程信息函数获取进程实例;
基于所述进程实例获取所述第一实时指标数据对应的指标值。
可选地,所述生成模块还用于:
在接收到查询任务指令时,在所述第一监控任务表中获取所述查询任务指令对应的第二任务ID,其中,所述第二任务ID包括任意一个或多个所述第一任务ID;
从所述第一性能指标表中获取所述第二任务ID对应的第三实时指标数据及第二时间戳;
将所述第三实时指标数据及所述第二时间戳加入图表组件中,得到所述第一曲线图。
可选地,所述浏览器性能实时监控装置还包括调整模块;所述调整模块用于:
基于所述第一曲线图,判断所述第三实时指标数据是否在预设范围内;
若否,则对所述目标网页对应的应用进程进行调整,以使所述第三实时指标数据调整至所述预设范围内。
此外,为实现上述目的,本发明还提供一种浏览器性能实时监控设备,所述浏览器性能实时监控设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的浏览器性能实时监控程序,所述浏览器性能实时监控程序被所述处理器执行时实现如上所述的浏览器性能实时监控方法的步骤。
此外,为实现上述目的,本发明还提供一种可读存储介质,所述可读存储介质上存储有浏览器性能实时监控程序,所述浏览器性能实时监控程序被处理器执行时实现如上所述的浏览器性能实时监控方法的步骤。
本发明提出的浏览器性能实时监控方法,对于金融行业的开发人员,浏览器需要更好的监控,开发人员可根据自身需求选择性对打开的目标网页进行性能录制;由于通过本地数据库进行检测、监听,使得整个监控过程在后台运行不影响其他开发人员的使用;再者,性能录制时,可对生成的曲线图进行分析,将性能录制及分析任务有效分离,使得在进行长时间的录性能录制时,分析网页长时间运行后CPU、内存等各项性能指标是否劣化,起到性能监控的作用;再者,本地数据库将第一实时指标数据插入到监控数据库中,并且,第一实时指标数据和曲线图均可上传至服务器,从而避免因信息量过大而引起自动崩溃现象,有效实现大规模的监控。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图;
图2为本发明浏览器性能实时监控方法第一实施例的流程示意图;
图3为本发明浏览器性能实时监控方法生成的第一曲线图;
图4为本发明浏览器性能实时监控方法生成的第二曲线图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图。
本发明实施例浏览器性能实时监控设备可以是PC机或服务器设备。
如图1所示,该浏览器性能实时监控设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的设备结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及浏览器性能实时监控程序。
在图1所示的设备中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端,与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的浏览器性能实时监控程序,并执行下述浏览器性能实时监控方法各个实施例中的操作。
基于上述硬件结构,提出本发明浏览器性能实时监控方法实施例。
参照图2,图2为本发明浏览器性能实时监控方法第一实施例的流程示意图,所述方法包括:
步骤S10,在接收到性能录制指令时,获取所述性能录制指令对应的目标网页;
本实施例中,在金融行业,web开发人员通常都需要使用浏览器,如Chrome浏览器,是由Google开发的免费网页浏览器,需要说明的是,本案全文涉及到的浏览器均以Chrome浏览器为例。
开发人员在打开Chrome浏览器时,浏览器性能实时监控装置接收到启动指令,并且,利用浏览器标签应用程序接口chrome.tabs API读取开发人员所有打开的网页,每个已经打开的网页界面在浏览器中是标签页tab,每个标签页都是一个独立的进程Processe,开发人员可以选择对具体界面进行性能录制,也可以不选择录制当前界面。
在开发人员选定需要录制的界面时,发送性能录制指令,从而得到性能录制指令对应的目标网页。
通过给开发人员自主选择要录制的网页界面,避免现有技术中只要开发人员在开发阶段,使用Chrome DevTools提供的Performance面板、Memory面板进行开发时,只能对当前的打开的网页进行性能的录制与分析的弊端,扩大了开发人员对浏览器性能的监控选择权限。
步骤S20,通过本地数据库检测浏览器本地是否创建有第一监控数据库,其中,所述第一监控数据库存储有第一监控任务表及第一性能指标表;
该步骤中,录制启动时,通过本地数据库WebSQL检查浏览器本地是否已经创建了监控数据库Monitor,监控数据库Monitor中存储有监控任务表monitor_tasks及性能指标表metrics。
需要说明的是,监控任务表monitor_tasks的数据通过插入任务数据及任务ID形成,性能指标表metrics的数据通过插入指标数据及任务ID形成,监控任务表monitor_tasks与性能指标表metrics之间通过任务ID即taskId关联,并且,监控任务表monitor_tasks及性能指标表metrics均存储于监控数据库中。
在本地数据库WebSQL检测到浏览器本地已经创建了第一监控数据库Monitor时,说明已经建立了录制任务,此时,可以开始进行监听目标网页对应的第一实时指标数据。
监控数据库用于监控录制,通过对监控数据库是否创建的判断,实现对监控录制的选择性需求。
步骤S30,若是,则监听所述目标网页对应的第一实时指标数据;
该步骤中,在本地数据库WebSQL检测到浏览器本地已经创建了监控数据库Monitor时,说明已经建立了录制任务,此时,可以开始进行监听目标网页对应的第一实时指标数据。
监听过程具体为:监听所述目标网页对应的进程信息;在监听到所述进程信息发生变化时,触发所述目标网页对应的进程实时更新事件;基于所述进程实时更新事件获取第一实时指标数据。
第一实时指标数据包括的指标数据有cpu、网络network、专用存储器privateMemory、js配置内存jsMemoryAllocated、js已用内存jsMemoryUsed、sql调用内存sqliteMemory、图像缓存imageCache、script缓存scriptCache、css缓存cssCache等指标值。
第一实时指标数据为浏览器性能的指标数据,由于第一实时指标数据随着时间会不断变化,因此,需要监听及记录,以便于对浏览器性能进行监控。
步骤S40,通过所述本地数据库将所述第一实时指标数据插入所述第一监控数据库中;
该步骤中,第一实时指标数据随着时间会不断变化,本地数据库将第一实时指标数据持久化插入第一监控数据库中,以便于后续查看监控任务时调用。
通过本地数据库进行检测、监听,使得整个监控过程在后台运行不影响其他开发人员的使用。
步骤S50,基于所述第一监控任务表及所述第一性能指标表生成第一曲线图。
该步骤中,生成曲线图具体为:在接收到查询任务指令时,在所述第一监控任务表中获取所述查询任务指令对应的第二任务ID,其中,所述第二任务ID包括任意一个或多个所述第一任务ID;从所述第一性能指标表中获取所述第二任务ID对应的第三实时指标数据及第二时间戳;将所述第三实时指标数据及所述第二时间戳加入图表组件中,得到所述第一曲线图。
在得到第一曲线图以后,对第一曲线图进行分析,判断第一曲线图的指标值是否处于正常范围内,若是,则持续监控;若否,则对第一曲线图中对应的指标值进行适应性调整,以使第一曲线图处于健康良好的状态,从而实现浏览器性能的良好监控。
通过对性能录制及性能分析的分离,并且,录制持续进行,可同时对曲线图进行分析,从而实现长时间的录制,对曲线图的分析,可在后台服务器进行,有效避免浏览器本地信息量过大而导致崩溃的问题。
本发明提出的浏览器性能实时监控方法,对于金融行业的开发人员,浏览器需要更好的监控,开发人员可根据自身需求选择性对打开的目标网页进行性能录制;由于通过本地数据库进行检测、监听,使得整个监控过程在后台运行不影响其他开发人员的使用;再者,性能录制时,可对生成的曲线图进行分析,将性能录制及分析任务有效分离,使得在进行长时间的录性能录制时,分析网页长时间运行后CPU、内存等各项性能指标是否劣化,起到性能监控的作用;再者,本地数据库将第一实时指标数据插入到监控数据库中,并且,第一实时指标数据和曲线图均可上传至服务器,从而避免因信息量过大而引起自动崩溃现象,有效实现大规模的监控。
进一步地,基于本发明浏览器性能实时监控方法的第一实施例,提出本发明浏览器性能实时监控方法的第二实施例;步骤S20之后,浏览器性能实时监控方法可以包括:
若所述浏览器本地未创建有第一监控数据库,则获取所述目标网页对应的第一时间戳、所述目标网页对应的标签名称及所述目标网页对应的性能指标数据;
将所述第一时间戳及所述标签名称组合形成任务数据;
基于所述任务数据及第一任务ID创建第二监控任务表,且基于所述性能指标数据及所述第一任务ID创建第二性能指标表;
通过所述本地数据库,基于所述第二监控任务表及所述第二性能指标表创建所述第二监控数据库,其中,所述第二监控数据库为本地数据库检测浏览器本地未创建有第一监控数据库后创建的数据库;
监听所述目标网页对应的第二实时指标数据;
通过所述本地数据库将第二实时指标数据插入所述第二监控数据库中;
基于所述第二监控任务表及所述第二性能指标表生成第二曲线图。
本实施例中,在判定本地未创建有第一监控数据库时,则需要创建一个新的监控数据库,即创建第二监控数据库,创建过程具体为:获取所述目标网页对应的第一时间戳、所述目标网页对应的标签名称taskname及所述目标网页对应的性能指标数据;将所述第一时间戳及所述标签名称taskname组合形成任务数据;由于监控任务表与性能指标表之间通过任务ID进行关联,因此,基于所述任务数据taskname及第一任务ID创建监控任务表,且基于所述性能指标数据及所述第一任务ID创建性能指标表;通过所述本地数据库,基于所述第二监控任务表及所述第二性能指标表创建所述第二监控数据库,其中,所述第二监控数据库为本地数据库检测浏览器本地未创建有第一监控数据库后创建的数据库,并且,监听所述目标网页对应的第二实时指标数据;通过所述本地数据库将第二实时指标数据插入所述第二监控数据库中;基于所述第二监控任务表及所述第二性能指标表生成第二曲线图。第二曲线图为新建监控数据库后与第一曲线图对应的曲线图。
第一时间戳是指创建监控数据库时目标网页的进程信息公开的当前时间,监控任务表monitor_tasks的数据通过插入任务数据及任务ID形成,性能指标表metrics的数据通过插入指标数据及任务ID形成,监控任务表monitor_tasks与性能指标表metrics之间通过任务ID即taskId关联,并且,监控任务表monitor_tasks及性能指标表metrics均存储于监控数据库中。
在本地数据库WebSQL检测到浏览器本地已经创建了监控数据库Monitor时,说明已经建立了录制任务,此时,可以开始进行监听目标网页对应的第一实时指标数据。
进一步地,步骤S30可以包括:
监听所述目标网页对应的进程信息;
在监听到所述进程信息发生变化时,触发所述目标网页对应的进程实时更新事件;
基于所述进程实时更新事件获取所述第一实时指标数据。
在本实施例中,监听所述目标网页对应的第一实时指标数据具体为:监听所述目标网页对应的进程信息processe;在监听到所述进程信息发生变化时,触发所述目标网页对应的进程实时更新事件chrome.processes.onUpdated;基于所述进程实时更新事件chrome.processes.onUpdated获取所述第一实时指标数据。
其中,基于所述进程实时更新事件获取所述第一实时指标数据具体为:当进程信息发生变化时进程实时更新事件onUpdated,调用信息处理函数handProcessInfo。在信息处理函数handProcessInfo中取得进程实例processe,并从进程实例processe中取得cpu、network、privateMemory、jsMemoryAllocated、jsMemoryUsed、sqliteMemory、imageCache、scriptCache、cssCache等指标值,并将它们与任务ID(taksId)、当前的时间截,一起插入到性能指标表metrics中,从而得到第一实时指标数据,以便于后续查看监控任务时调用。
通过进程实时更新事件进行监听,使得整个监控过程在后台运行不影响其他开发人员的使用。
进一步地,步骤S30可以包括:基于所述进程实时更新事件调用处理进程信息函数,且基于所述处理进程信息函数获取进程实例;
基于所述进程实例获取所述第一实时指标数据对应的指标值。
本实施例中,当进程信息发生变化时进程实时更新事件onUpdated,调用信息处理函数handProcessInfo。在信息处理函数handProcessInfo中取得进程实例processe,并从进程实例processe中取得cpu、network、privateMemory、jsMemoryAllocated、jsMemoryUsed、sqliteMemory、imageCache、scriptCache、cssCache等指标值,并将它们与任务ID(taksId)、当前的时间截,一起插入到性能指标表metrics中,从而得到第一实时指标数据,以便于后续查看监控任务时调用。
进一步地,基于本发明浏览器性能实时监控方法的第二实施例,提出本发明浏览器性能实时监控方法的第三实施例;在步骤S50可以包括:
在接收到查询任务指令时,在所述第一监控任务表中获取所述查询任务指令对应的第二任务ID,其中,所述第二任务ID包括任意一个或多个所述第一任务ID;
从所述第一性能指标表中获取所述第二任务ID对应的第三实时指标数据及第二时间戳;
将所述第三实时指标数据及所述第二时间戳加入图表组件中,得到所述第一曲线图。
在本实施例中,当开发人员需要根据录制的任务来查询上述性能指标时,给装置发送查询任务指令,查询任务指令包含了需要查询的任务ID,此时,该装置的程序会根据taskId从性能指标表metrics取到上述的指标数据、时间戳,然后罐入echarts或highchats等图表组件中就可以将它们渲染成曲线图表。采用图表组件的方式,简单且易于实现。
可以理解的是,在可以同时查询多个任务,可同时显示多个指标的曲线,也可以只查看部分指标的曲线。开发人员还可在图表中进行左右拖拽以便只关注相应时间段的指标。
由于指标数据随着时间而不断变化,因此,以时间为x轴,指标值为y轴建立曲线图,随着时间的推移,可得到录制时间的所有指标值形成的曲线图。
在得到曲线图后,可对曲线图进行分析,分析网页长时间运行后CPU、内存等各项性能指标是否劣化,起到性能监控的作用。
进一步地,基于本发明浏览器性能实时监控方法的第三实施例,提出本发明浏览器性能实时监控方法的第四实施例;请参阅图3-4,在步骤S50之后,所述浏览器性能实时监控方法还包括:
基于所述第一曲线图,判断所述第三实时指标数据是否在预设范围内;
若否,则对所述目标网页对应的应用进程进行调整,以使所述第三实时指标数据调整至所述预设范围内。
在本实施例中,在得到第一曲线图后,可对第一曲线图进行分析,请参阅图3,为某天00:00-14:40的第一曲线图,指标值包括CPU、内存等各个指标,假设正常数据的预设值为2000,那么,很显然,在11:10-14:40各个指标值处于一直增长的趋势,且这个趋势是在往不健康的方式延伸,为异常现象。那么,需要对目标网页的应用进程进行调整,以使指标数据调整至正常数据。
请参阅图4,为某天00:00-19:20的第一曲线图,指标值包括CPU、内存等各个指标,假设正常数据的预设值为2000,那么,很显然,在17:50-18:00各个指标值处于不健康的增长状态,为异常现象,由于发现了该异常现象,在18:00进行调整,使得18:00-18:10各个指标值大幅度下降,在18:10开始以平稳姿势走向,很明显,调整有了良好的结果,使得指标数据恢复正常。
通过对第一曲线图的分析,在发现第一曲线图不正常时,进行及时有效调整,有效监控浏览器性能,使得浏览器性能处于良好的运行状态,减少自动崩溃现象。
进一步地,步骤S10之前,所述浏览器性能实时监控方法还包括:
在接收到启动指令时,获取所述启动指令对应的网页界面,其中,所述网页界面包括多个所述目标网页。
本实施例中,开发人员在打开Chrome浏览器时,浏览器性能实时监控装置接收到启动指令,并且,利用浏览器标签应用程序接口chrome.tabs API读取开发人员所有打开的网页,每个已经打开的网页界面在浏览器中是标签页tab,每个标签页都是一个独立的进程Processe,开发人员可以选择对具体界面进行性能录制,也可以不选择录制当前界面。
在开发人员选定需要录制的界面时,发送性能录制指令,从而得到性能录制指令对应的目标网页。
进一步地,所述第一实时指标数据包括CPU指标数据、网络指标数据及内存指标数据。
本实施例中,第一实时指标数据包括的指标数据有cpu、网络network、专用存储器privateMemory、js配置内存jsMemoryAllocated、js已用内存jsMemoryUsed、sql调用内存sqliteMemory、图像缓存imageCache、script缓存scriptCache、css缓存cssCache等指标值。
本发明还提供一种浏览器性能实时监控装置。本发明所述浏览器性能实时监控装置包括:
获取模块,用于在接收到性能录制指令时,获取所述性能录制指令对应的目标网页;
检测模块,用于通过本地数据库检测浏览器本地是否创建有第一监控数据库,其中,所述第一监控数据库存储有第一监控任务表及第一性能指标表;
监听模块,用于若是,则监听所述目标网页对应的第一实时指标数据;
插入模块,用于通过所述本地数据库将所述第一实时指标数据插入所述第一监控数据库中;
生成模块,用于基于所述第一监控任务表及所述第一性能指标表生成第一曲线图。
进一步地,所述浏览器性能实时监控装置还包括创建模块,用于:
若所述浏览器本地未创建有第一监控数据库,则获取所述目标网页对应的第一时间戳、所述目标网页对应的标签名称及所述目标网页对应的性能指标数据;
将所述第一时间戳及所述标签名称组合形成任务数据;
基于所述任务数据及第一任务ID创建第二监控任务表,且基于所述性能指标数据及所述第一任务ID创建第二性能指标表;
通过所述本地数据库,基于所述第二监控任务表及所述第二性能指标表创建所述第二监控数据库,其中,所述第二监控数据库为本地数据库检测浏览器本地未创建有第一监控数据库后创建的数据库;
监听所述目标网页对应的第二实时指标数据;
通过所述本地数据库将第二实时指标数据插入所述第二监控数据库中;
基于所述第二监控任务表及所述第二性能指标表生成第二曲线图。
进一步地,所述监听模块还用于:
监听所述目标网页对应的进程信息;
在监听到所述进程信息发生变化时,触发所述目标网页对应的进程实时更新事件;
基于所述进程实时更新事件获取所述第一实时指标数据。
进一步地,所述监听模块还用于:
基于所述进程实时更新事件调用处理进程信息函数,且基于所述处理进程信息函数获取进程实例;
基于所述进程实例获取所述第一实时指标数据对应的指标值。
进一步地,所述生成模块还用于:
在接收到查询任务指令时,在所述第一监控任务表中获取所述查询任务指令对应的第二任务ID,其中,所述第二任务ID包括任意一个或多个所述第一任务ID;
从所述第一性能指标表中获取所述第二任务ID对应的第三实时指标数据及第二时间戳;
将所述第三实时指标数据及所述第二时间戳加入图表组件中,得到所述第一曲线图。
进一步地,所述浏览器性能实时监控装置还包括调整模块;所述调整模块用于:
基于所述第一曲线图,判断所述第三实时指标数据是否在预设范围内;
若否,则对所述目标网页对应的应用进程进行调整,以使所述第三实时指标数据调整至所述预设范围内。
本发明还提供一种计算机可读存储介质。
本发明计算机可读存储介质上存储有浏览器性能实时监控程序,所述浏览器性能实时监控程序被处理器执行时实现如上所述的浏览器性能实时监控方法的步骤。
其中,在所述处理器上运行的浏览器性能实时监控程序被执行时所实现的方法可参照本发明浏览器性能实时监控方法各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个可读存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台浏览器性能实时监控设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (16)

1.一种浏览器性能实时监控方法,其特征在于,所述浏览器性能实时监控方法包括如下步骤:
在接收到性能录制指令时,获取所述性能录制指令对应的目标网页;
通过本地数据库检测浏览器本地是否创建有第一监控数据库,其中,所述第一监控数据库存储有第一监控任务表及第一性能指标表;
若是,则监听所述目标网页对应的第一实时指标数据;
通过所述本地数据库将所述第一实时指标数据插入所述第一监控数据库中;
基于所述第一监控任务表及所述第一性能指标表生成第一曲线图。
2.如权利要求1所述的浏览器性能实时监控方法,其特征在于,所述通过本地数据库检测浏览器本地是否创建有第一监控数据库,其中,所述第一监控数据库存储有第一监控任务表及第一性能指标表的步骤之后,所述浏览器性能实时监控方法包括:
若所述浏览器本地未创建有第一监控数据库,则获取所述目标网页对应的第一时间戳、所述目标网页对应的标签名称及所述目标网页对应的性能指标数据;
将所述第一时间戳及所述标签名称组合形成任务数据;
基于所述任务数据及第一任务ID创建第二监控任务表,且基于所述性能指标数据及所述第一任务ID创建第二性能指标表;
通过所述本地数据库,基于所述第二监控任务表及所述第二性能指标表创建所述第二监控数据库,其中,所述第二监控数据库为本地数据库检测浏览器本地未创建有第一监控数据库后创建的数据库;
监听所述目标网页对应的第二实时指标数据;
通过所述本地数据库将第二实时指标数据插入所述第二监控数据库中;
基于所述第二监控任务表及所述第二性能指标表生成第二曲线图。
3.如权利要求2所述的浏览器性能实时监控方法,其特征在于,所述监听所述目标网页对应的第一实时指标数据的步骤包括:
监听所述目标网页对应的进程信息;
在监听到所述进程信息发生变化时,触发所述目标网页对应的进程实时更新事件;
基于所述进程实时更新事件获取所述第一实时指标数据。
4.如权利要求3所述的浏览器性能实时监控方法,其特征在于,所述基于所述进程实时更新事件获取所述第一实时指标数据的步骤包括:
基于所述进程实时更新事件调用处理进程信息函数,且基于所述处理进程信息函数获取进程实例;
基于所述进程实例获取所述第一实时指标数据对应的指标值。
5.如权利要求4所述的浏览器性能实时监控方法,其特征在于,所述基于所述第一监控任务表及所述第一性能指标表生成第一曲线图的步骤包括:
在接收到查询任务指令时,在所述第一监控任务表中获取所述查询任务指令对应的第二任务ID,其中,所述第二任务ID包括任意一个或多个所述第一任务ID;
从所述第一性能指标表中获取所述第二任务ID对应的第三实时指标数据及第二时间戳;
将所述第三实时指标数据及所述第二时间戳加入图表组件中,得到所述第一曲线图。
6.如权利要求5所述的浏览器性能实时监控方法,其特征在于,所述将所述第三实时指标数据及所述第二时间戳加入图表组件中,得到所述第一曲线图的步骤之后,所述浏览器性能实时监控方法包括:
基于所述第一曲线图,判断所述第三实时指标数据是否在预设范围内;
若否,则对所述目标网页对应的应用进程进行调整,以使所述第三实时指标数据调整至所述预设范围内。
7.如权利要求1所述的浏览器性能实时监控方法,其特征在于,所述在接收到录制指令时,获取所述录制指令对应的目标网页的步骤之前,所述浏览器性能实时监控方法还包括:
在接收到启动指令时,获取所述启动指令对应的网页界面,其中,所述网页界面包括多个所述目标网页。
8.如权利要求1至7中任一项所述的浏览器性能实时监控方法,其特征在于,所述第一实时指标数据包括CPU指标数据、网络指标数据及内存指标数据。
9.一种浏览器性能实时监控装置,其特征在于,所述浏览器性能实时监控装置包括:
获取模块,用于在接收到性能录制指令时,获取所述性能录制指令对应的目标网页;
检测模块,用于通过本地数据库检测浏览器本地是否创建有第一监控数据库,其中,所述第一监控数据库存储有第一监控任务表及第一性能指标表;
监听模块,用于若是,则监听所述目标网页对应的第一实时指标数据;
插入模块,用于通过所述本地数据库将所述第一实时指标数据插入所述第一监控数据库中;
生成模块,用于基于所述第一监控任务表及所述第一性能指标表生成第一曲线图。
10.如权利要求9所述的浏览器性能实时监控装置,其特征在于,所述浏览器性能实时监控装置还包括创建模块,用于:
若所述浏览器本地未创建有第一监控数据库,则获取所述目标网页对应的第一时间戳、所述目标网页对应的标签名称及所述目标网页对应的性能指标数据;
将所述第一时间戳及所述标签名称组合形成任务数据;
基于所述任务数据及第一任务ID创建第二监控任务表,且基于所述性能指标数据及所述第一任务ID创建第二性能指标表;
通过所述本地数据库,基于所述第二监控任务表及所述第二性能指标表创建所述第二监控数据库,其中,所述第二监控数据库为本地数据库检测浏览器本地未创建有第一监控数据库后创建的数据库;
监听所述目标网页对应的第一实时指标数据;
通过所述本地数据库将第二实时指标数据插入所述第二监控数据库中;
基于所述第二监控任务表及所述第二性能指标表生成第二曲线图。
11.如权利要求10所述的浏览器性能实时监控装置,其特征在于,所述监听模块还用于:
监听所述目标网页对应的进程信息;
在监听到所述进程信息发生变化时,触发所述目标网页对应的进程实时更新事件;
基于所述进程实时更新事件获取所述第一实时指标数据。
12.如权利要求11所述的浏览器性能实时监控装置,其特征在于,所述监听模块还用于:
基于所述进程实时更新事件调用处理进程信息函数,且基于所述处理进程信息函数获取进程实例;
基于所述进程实例获取所述第一实时指标数据对应的指标值。
13.如权利要求12所述的浏览器性能实时监控装置,其特征在于,所述生成模块还用于:
在接收到查询任务指令时,在所述第一监控任务表中获取所述查询任务指令对应的第二任务ID,其中,所述第二任务ID包括任意一个或多个所述第一任务ID;
从所述第一性能指标表中获取所述第二任务ID对应的第三实时指标数据及第二时间戳;
将所述第三实时指标数据及所述第二时间戳加入图表组件中,得到所述第一曲线图。
14.如权利要求13所述的浏览器性能实时监控装置,其特征在于,所述浏览器性能实时监控装置还包括调整模块;所述调整模块用于:
基于所述第一曲线图,判断所述第三实时指标数据是否在预设范围内;
若否,则对所述目标网页对应的应用进程进行调整,以使所述第三实时指标数据调整至所述预设范围内。
15.一种浏览器性能实时监控设备,其特征在于,所述浏览器性能实时监控设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的浏览器性能实时监控程序,所述浏览器性能实时监控程序被所述处理器执行时实现如权利要求1至8中任一项所述的浏览器性能实时监控方法的步骤。
16.一种可读存储介质,其特征在于,所述可读存储介质上存储有浏览器性能实时监控程序,所述浏览器性能实时监控程序被处理器执行时实现如权利要求1至8中任一项所述的浏览器性能实时监控方法的步骤。
CN201910582770.4A 2019-06-28 2019-06-28 浏览器性能实时监控方法、装置、设备及可读存储介质 Pending CN110309041A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910582770.4A CN110309041A (zh) 2019-06-28 2019-06-28 浏览器性能实时监控方法、装置、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910582770.4A CN110309041A (zh) 2019-06-28 2019-06-28 浏览器性能实时监控方法、装置、设备及可读存储介质

Publications (1)

Publication Number Publication Date
CN110309041A true CN110309041A (zh) 2019-10-08

Family

ID=68078555

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910582770.4A Pending CN110309041A (zh) 2019-06-28 2019-06-28 浏览器性能实时监控方法、装置、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN110309041A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111061606A (zh) * 2019-11-04 2020-04-24 深圳震有科技股份有限公司 一种基于浏览器的监测预警方法、终端及存储介质
CN112052142A (zh) * 2020-09-08 2020-12-08 深圳创维-Rgb电子有限公司 性能的监控方法、设备、装置及计算机可读存储介质
CN113138890A (zh) * 2020-01-17 2021-07-20 腾讯科技(深圳)有限公司 指标图表展示方法、装置、计算机存储介质和计算机设备
CN114168433A (zh) * 2022-02-11 2022-03-11 北京宝兰德软件股份有限公司 基于浏览器本地存储的监控方法及装置
CN115016882A (zh) * 2022-06-28 2022-09-06 上海浦东发展银行股份有限公司 一种监控界面生成方法、装置、设备及存储介质
CN116720023A (zh) * 2023-08-09 2023-09-08 深圳十方融海科技有限公司 浏览器运行数据的处理方法、装置及电子设备
CN115016882B (zh) * 2022-06-28 2024-06-07 上海浦东发展银行股份有限公司 一种监控界面生成方法、装置、设备及存储介质

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111061606A (zh) * 2019-11-04 2020-04-24 深圳震有科技股份有限公司 一种基于浏览器的监测预警方法、终端及存储介质
CN113138890A (zh) * 2020-01-17 2021-07-20 腾讯科技(深圳)有限公司 指标图表展示方法、装置、计算机存储介质和计算机设备
CN112052142A (zh) * 2020-09-08 2020-12-08 深圳创维-Rgb电子有限公司 性能的监控方法、设备、装置及计算机可读存储介质
CN114168433A (zh) * 2022-02-11 2022-03-11 北京宝兰德软件股份有限公司 基于浏览器本地存储的监控方法及装置
CN114168433B (zh) * 2022-02-11 2022-05-27 北京宝兰德软件股份有限公司 基于浏览器本地存储的监控方法及装置
CN115016882A (zh) * 2022-06-28 2022-09-06 上海浦东发展银行股份有限公司 一种监控界面生成方法、装置、设备及存储介质
CN115016882B (zh) * 2022-06-28 2024-06-07 上海浦东发展银行股份有限公司 一种监控界面生成方法、装置、设备及存储介质
CN116720023A (zh) * 2023-08-09 2023-09-08 深圳十方融海科技有限公司 浏览器运行数据的处理方法、装置及电子设备
CN116720023B (zh) * 2023-08-09 2024-04-12 深圳十方融海科技有限公司 浏览器运行数据的处理方法、装置及电子设备

Similar Documents

Publication Publication Date Title
US10965559B1 (en) Automatic creation of related event groups for an IT service monitoring system
US10305758B1 (en) Service monitoring interface reflecting by-service mode
US10547695B2 (en) Automated service discovery in I.T. environments with entity associations
US11593400B1 (en) Automatic triage model execution in machine data driven monitoring automation apparatus
US11144545B1 (en) Monitoring console for entity detail
US10942960B2 (en) Automatic triage model execution in machine data driven monitoring automation apparatus with visualization
CN110309041A (zh) 浏览器性能实时监控方法、装置、设备及可读存储介质
US10193775B2 (en) Automatic event group action interface
US10209956B2 (en) Automatic event group actions
US10324828B2 (en) Generating annotated screenshots based on automated tests
US10997190B2 (en) Context-adaptive selection options in a modular visualization framework
US11087263B2 (en) System monitoring with key performance indicators from shared base search of machine data
US10373094B2 (en) Automated model based root cause analysis
US20230102389A1 (en) Providing a user interface reflecting service monitoring adaptation for maintenance downtime
US9355142B2 (en) Content management
US10198155B2 (en) Interface for automated service discovery in I.T. environments
US9697012B2 (en) Relation-based identification of automation objects
US20160294606A1 (en) Service Detail Monitoring Console
Maalej et al. Collecting and processing interaction data for recommendation systems
US9355193B2 (en) Object design data model
US20140129005A1 (en) Integration of workflow and library modules
US9135000B2 (en) Runtime process diagnostics
JP2007316905A (ja) アプリケーションプログラムを監視する計算機システム及びその方法
US11755559B1 (en) Automatic entity control in a machine data driven service monitoring system
US20180321807A1 (en) Systems and methods for tailored content provision

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination