The present invention provides a method for monitoring the server program and a system thereof, the method includes: function calls to get online server when running the data returned, the return data input to the server, and store the returned data and the return data acquisition time; offline and according to the obtained time, corresponding the return data input to the server program. All input monitoring method of the invention is the server program and system record server program, based on the recorded data, can be done offline to online server program running state of complete reduction. Able to playback time server as a basis for analysis of server performance test, I now reproduce the BUG server program in the development process, analysis of user behavior or access server application etc..
【技术实现步骤摘要】
服务器程序的监控方法及其系统
本专利技术涉及服务器监控的
,特别是涉及一种服务器程序的监控方法,以及一种服务器程序的监控系统。
技术介绍
通常,服务器要处理接收到的数据请求,需要在服务器上运行各种服务器程序。而服务器的运行效率与各个服务器程序的运行情况密切相关,因此,在进行服务器性能分析等应用时,需要对服务器程序的在线运行情况进行监控。一般的服务器程序监控方式都需要记录服务器程序在线运行时的各种状态数据,包括输入、输出,执行等等。以图形化性能分析工具Vtune为例,其核心实现是基于CPU的性能采样,通过直接在运行的进程上采集性能数据样本来分析程序运行性能。然而,在进行服务器程序在线运行情况的监控时,对所述输入、输出,执行等状态数据的全面收集、保存和分析,将会大大影响服务器程序的正常运行,导致服务器程序在线运行时的处理效率损失。
技术实现思路
针对上述
技术介绍
中存在的问题,本专利技术的目的在于提供一种服务器程序的监控方法,能够减少服务器程序在线监控时,服务器程序处理效率损失。本专利技术的目的还在于提供一种服务器程序的监控系统,能够减少在服务器程序在线运行情况监控时,服务器程序的处理效率损失。一种服务器程序的监控方法,包括:获取服务器程序在线运行时调用的函数的返回数据,将所述返回数据输入到所述服务器程序,并保存所述返回数据以及所述返回数据的获取时间;在离线状态下,根据所述获取时间,将相应的所述返回数据输入到所述服务器程序。一种服务器程序的监控系统,包括:录制模块,用于获取服务器程序在线运行时调用的函数的返回数据,将所述返回数据输入到所述服 ...
【技术保护点】
一种服务器程序的监控方法,其特征在于,包括步骤:获取服务器程序在线运行时调用的函数的返回数据,将所述返回数据输入到所述服务器程序,并保存所述返回数据以及所述返回数据的获取时间;在离线状态下,根据所述获取时间,将相应的所述返回数据输入到所述服务器程序。
【技术特征摘要】
1.一种服务器程序的监控方法,其特征在于,包括步骤: 获取服务器程序在线运行时调用的函数的返回数据,将所述返回数据输入到所述服务器程序,并保存所述返回数据以及所述返回数据的获取时间; 在离线状态下,根据所述获取时间,将相应的所述返回数据输入到所述服务器程序。2.根据权利要求1所述的服务器程序的监控方法,其特征在于,获取服务器程序在线运行时调用的函数的返回数据的步骤包括: 利用hook函数监视所述服务器程序在线运行时的函数调用行为; 在发生函数调用行为时,调用预设的伪函数获取被调用的函数的返回数据,将所述返回数据输入到所述服务器程序,并且保存所述返回数据。3.根据权利要求2所述的服务器程序的监控方法,其特征在于,将相应的所述返回数据输入到所述服务器程序的步骤包括: 在离线状态下调用所述伪函数将相应的所述返回数据输入到所述服务器程序。4.根据权利要求2或者3所述的服务器程序的监控方法,其特征在于,所述调用伪函数的步骤包括: 将所述服务器程序所调用的函数的地址替换为承载所述伪函数的动态链接库的地址。5.根据权利要求1任一项 所述的服务器程序的监控方法,其特征在于,所述服务器程序调用的函数包括系统AP1、自定义函数、以及共享内存的读取函数。6.根据权利要求1所述的服务器程序的监控方法,其特征在于,获取服务器程序在线运行时所调用的函数的返回数据的步骤包括: 当所述服务器程序调用时间获取API获取时间时,保存所述时间获取API的返回值; 当所述服务器程序调用文件读取API读取文件时,保存所述读取操作,并判断读取的文件是否已保存;如果未保存,则保存所述文件,并保存所述文件的修改时间;如果已保存,则判断本次文件读取操作对所述文件的修改时间是否晚于所述文件最近一次保存的修改时间;如果是,则更新已保存的所述文件,并保存所述文件更新后的修改时间;否则,不更新已保存的所述文件; 当所述服务器程序调用网络数据接收API接收数据时,保存所述接收数据的操作,并保存接收的数据; 当所述服务器程序中的信号量接收函数接收到信号量时,记录所述信号量的接收时间和所述信号量的值。7.根据权利要求6所述的服务器程序的监控方法,其特征在于,判断读取的文件是否已保存的步骤之前,执行以下步骤: 根据预设的白名单,判断读取的文件是否需要保存;其中,所述白名单中记录有需要保存的文件的扩展名,或者不需要保存的文件的扩展名。8.根据权利要求1所述的服务器程序的监控方法,其特征在于,保存所述返回数据以及所述返回数据的获取时间的步骤包括: 将所述返回数据以及所述返回数据的获取时间传输到所述服务器以外的储存设备上保存。9.根据权利要求1所述的服务器程序的监控方法,其特征在于,首先执行以下步骤: 在服务器程序启动时,判断所述服务器程序是否属于预设的监控列表中记载的程序;在判断结果为是时,执行获取服务器程序在线运行时所调用的函数的返回数据,将所述返回数据输入到所述服务器程序,并保存所述返回数据以及所...
【专利技术属性】
技术研发人员:侯健,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。