CN111368104A - 信息处理方法、装置及设备 - Google Patents

信息处理方法、装置及设备 Download PDF

Info

Publication number
CN111368104A
CN111368104A CN201811601651.0A CN201811601651A CN111368104A CN 111368104 A CN111368104 A CN 111368104A CN 201811601651 A CN201811601651 A CN 201811601651A CN 111368104 A CN111368104 A CN 111368104A
Authority
CN
China
Prior art keywords
determining
snapshot
time
time axis
node
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.)
Granted
Application number
CN201811601651.0A
Other languages
English (en)
Other versions
CN111368104B (zh
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201811601651.0A priority Critical patent/CN111368104B/zh
Publication of CN111368104A publication Critical patent/CN111368104A/zh
Application granted granted Critical
Publication of CN111368104B publication Critical patent/CN111368104B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/44Browsing; Visualisation therefor
    • G06F16/447Temporal browsing, e.g. timeline
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/5866Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, manually generated location and time information

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Library & Information Science (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请实施例提供一种信息处理方法、装置及设备,所述方法包括:根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;确定所述每个方法在所述时间轴中的出现节点;根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。本申请实施例提供的技术方案提高了异常方法的检测精度以及效率。

Description

信息处理方法、装置及设备
技术领域
本申请实施例涉及计算机应用技术领域,尤其涉及一种信息处理方法、装置及设备。
背景技术
线程或进程是控制程序运行的基本单元,可以通过堆栈暂时存放数据和地址,并随着程序运行而生成或者消忙。为了获得线程或者进程的实际运行情况,可以抓取线程的堆栈快照,针对一个程序抓取的所有堆栈快照可以称为快照集合。
而堆栈快照中可以包括堆栈中各个方法,通过对快照集合中所有堆栈快照中出现的不同方法的数量进行统计,继而获得各个方法的耗时。通过筛选各个方法中耗时异常的方法进行筛选,获得调用异常的方法。
但是,采用直接统计各个方法耗时以获得调用异常的方法时准确度不够高,不够精确。
发明内容
本申请实施例提供了一种信息处理方法、装置及设备,用以解决现有技术中直接统计各个方法耗时以获得调用异常的方法时准确度不够高的技术问题。
第一方面,本申请实施例中提供了一种信息处理方法,包括:
根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;
确定所述每个方法在所述时间轴中的出现节点;
根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。
第二方面,本申请实施例中提供了一种信息处理方法,包括:
根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;
确定所述每个方法在所述时间轴中的出现节点;
基于各个方法在所述时间轴中的出现节点,输出各个节点的节点提示信息;
其中,所述节点提示信息用于确定各个方法的耗时信息以及执行顺序。
第三方面,本申请实施例中提供了一种信息处理装置,包括:
顺序确定模块,用于根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;
节点确定模块,用于确定所述每个方法在所述时间轴中的出现节点;
结果确定模块,用于根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。
第四方面,本申请实施例中提供了一种信息处理装置,包括:
顺序确定模块,用于根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;
节点确定模块,用于确定所述每个方法在所述时间轴中的出现节点;
信息输出模块,用于基于各个方法在所述时间轴中的出现节点,输出各个节点的节点提示信息;
其中,所述节点提示信息用于确定各个方法的耗时信息以及执行顺序。
第五方面,本申请实施例中提供了一种信息处理设备,包括:存储组件以及处理组件;所述存储组件用于存储一条或多条计算机指令,所述一条或多条计算机指令用于被所述处理组件调用并执行;
所述处理组件用于:
根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;确定所述每个方法在所述时间轴中的出现节点;根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。
第六方面,本申请实施例中提供了一种信息处理设备,包括:存储组件、处理组件以及输出组件;所述存储组件用于存储一条或多条计算机指令,所述一条或多条计算机指令用于被所述处理组件调用并执行;
所述处理组件用于:
根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;确定所述每个方法在所述时间轴中的出现节点;
所述输出组件用于:
基于各个方法在所述时间轴中的出现节点,输出各个节点的节点提示信息;
其中,所述节点提示信息用于确定各个方法的耗时信息以及执行顺序。
本申请实施例中,可以根据快照集合中各个堆栈快照的生成时间先后顺序,确定快照集合对应的时间轴,时间轴为针对堆栈快照的生成时间设置的,确定每个方法在时间轴中的出现节点,时间轴可以标识堆栈快照的生成顺序,对应线程中运行的方法的执行顺序,通过统计每个方法在时间轴中的出现节点,可以获得每个方法实际的运行情况,进而可以根据各个方法在时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序,继而可以通过各个方法的耗时信息快速判断对应方法是否运行异常,并通过其执行顺序可以快照确定对应方法的执行节点,方便对该方法进行快速定位,获知其调用关系,以进行精确追踪,提高了异常判断的准确性,降低了方法的排查难度。
本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请提供的一种信息处理方法一个实施例的流程图;
图2示出了本申请提供的一种信息处理方法又一个实施例的流程图;
图3示出了本申请提供的一种信息处理方法又一个实施例的流程图;
图4示出了本申请提供的一种信息处理方法又一个实施例的流程图;
图5示出了本申请提供的一种信息处理方法又一个实施例的流程图;
图6示出了本申请提供的一种信息处理方法的一个示例图;
图7示出了本申请提供的一种快照集合的示例图;
图8示出了本申请提供的一种调用拓扑的示例图;
图9示出了本申请提供的一种各个方法的节点提示信息的示例图;
图10示出了本申请提供的一种信息处理装置一个实施例的结构示意图;
图11示出了本申请提供的一种信息处理设备一个实施例的结构示意图;
图12示出了本申请提供的一种信息处理装置又一个实施例的结构示意图;
图13示出了本申请提供的一种信息处理设备又一个实施例的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
在本申请的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
本申请主要可以应用于对各种业务程序的监控场景中,通过针对线程的堆栈进行快照采集并进行分析,获得各个方法的耗时信息以及执行顺序,以对各个方法进行准确跟踪,提高异常方法检测的准确度。
现有技术中,通常可以通过各种业务程序提供相应的服务,例如,通过网上交易程序提供用户登录、物品下单、支付等服务,针对各个服务可以触发各种方法之间的调用操作,在实际应用中,为了获得业务程序的具体执行过程,以判断是否能为用户提供正常的服务,可以为针对程序中的各个方法运行时的线程进行监控。其中,可以采用抓取程序运行过程中的各个线程的堆栈快照,获得一个堆栈快照的集合,并通过分析获得每个堆栈快照中的各个方法的耗时,进而通过各个方法耗时确定运行异常的方法。但是这种方式获得的异常方法的准确度不够高。
为了解决上述问题,发明人经过一系列的研究发现,如果在能够准确确定各个方法的运行时长之外,还能够确定各个方法的执行顺序,继而获得各个方法的调用关系,以监控各个方法的时长是否超越耗时预期,即可以准确确定运行异常的方法,提高异常检测的准确度。据此,发明人提出了本申请的技术方案。
本发明实施例中,可以根据快照集合中各个堆栈快照的生成时间的先后顺序,确定快照集合对应时间轴。确定每个方法在时间轴中的出现节点,时间轴可以标识堆栈快照的生成顺序,对应线程中运行的方法的执行顺序,通过统计每个方法在时间轴中的出现节点,可以获得每个方法实际的运行情况,进而可以根据各个方法在时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序,继而可以通过各个方法的耗时信息快速判断对应方法是否运行异常,并通过其执行顺序可以快照确定对应方法的执行节点,方便对该方法进行快速定位,获知其调用关系,以进行精确追踪,提高了异常判断的准确性,降低了方法的排查难度。
下面将结合附图对本发明实施例进行详细描述。
如图1所示,为本发明实施例提供的一种信息处理方法的一个实施例的流程图,该方法可以包括以下几个步骤:
101:根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴。
其中,可以针对线程中的堆栈进行抓取获得堆栈快照。堆栈快照可以指某一线程的堆栈在某一时刻的状态副本,也即指状态数据,这些数据可以记录线程中的各个方法也即函数的实际运行状态对应的数据,状态副本实际可以作为线程的堆栈的源数据使用。
堆栈快照中可以包括线程中运行的各个方法的方法名称以及方法的调用关系。方法的调用关系可以指将每个方法分别对应的各个父节点以及子节点。
快照集合对应时间轴可以按照各个堆栈快照的生成时间的先后顺序进行排列。可选地,可以将每个堆栈快照的生成时间按照从小到大的顺序依次排列,获得相应的时间轴。时间轴可以以时间为基准将各个堆栈快照的生成时间点一一对应。
各个堆栈快照可以按照生成时间先后顺序确定对应的快照集合。
可选地,所述根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴之前,所述方法还包括:按照快照采样频率,对线程中的堆栈进行采样,获得至少一个堆栈快照构成的快照集合。
针对每一次采样获得的堆栈快照,可以记录所述堆栈快照的生成时间。每一个堆栈快照可以对应一个生成时间,通过各个生成时间的先后顺序可以获得各个堆栈快照的生成顺序。
102:确定所述每个方法在所述时间轴中的出现节点。
可选地,所述确定所述每个方法在所述时间轴中的出现节点可以包括:根据每个方法在所述时间轴上依次一一对应,获得所述每个方法在所述时间轴中的出现节点
103:根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。
各个方法的耗时信息具体可以指各个方法的耗时时长或者耗时占比,所述耗时时长具体可以指各个方法实际的运行时长,所述耗时占比可以指各个方法实际占快照集合的对应总时长的比值。
本发明实施例中,通过所述快照集合中各个堆栈快照的生成时间先后顺序,确定快照集合对应时间轴,时间轴可以衡量各个堆栈快照生成时间的先后,可以确定每个方法在时间轴中的出现节点,可以通过时间轴确定每个方法在时间轴中的耗时信息以及执行顺序。通过每个方法的执行位置可以快速对该方法进行定位,进而监控每个方法的耗时是否超越耗时预期,以准确确定运行异常的方法,提异常检测的准确度。同时,由于还可以通过执行顺序确定与各个方法关联的调用关系,可以对每个方法进行准确定位,降低了排查难度。
为了获得每个方法在时间轴中的出现节点,以将不同方法在时间轴对应展示,如图2所示,为本发明实施例提供的一种信息处理方法的又一个实施例的流程图,所述方法可以包括以下几个步骤:
201:根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴。
本发明实施例的部分步骤与图1所示的实施例的步骤相同在此不再赘述。
202:从所述快照集合中,确定每个方法对应的至少一个目标堆栈快照。
每一个堆栈快照可以指线程的在采样时的运行状态,可以包含线程中运行的至少一个方法的运行状态。其中,每一个方法的运行状态中可以包括该方法的方法名称。
可选地,所述从所述快照集合中,确定每个方法对应的至少一个目标堆栈快照可以包括:从所述快照集合中,确定包含每个方法的方法名称的至少一个目标堆栈快照。
具体可以针对每个方法,从所述快照集合中确定包含所述方法的方法名称的至少一个目标堆栈快照。
203:根据每个方法对应的至少一个目标堆栈快照的生成时间,确定所述每个方法在所述时间轴中的出现节点。
可选地,所述根据每个方法对应的至少一个目标堆栈快照的生成时间,确定所述每个方法在所述时间轴中的出现节点可以包括:根据每个方法对应的至少一个目标堆栈快照的生成时间,在所述时间轴上依次一一对应,获得所述每个方法在所述时间轴中的出现节点。
204:根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。
通过所述快照集合中各个堆栈快照的生成时间先后顺序,确定快照集合对应时间轴,时间轴可以衡量各个堆栈快照生成时间的先后,通过从快照集合中确定每个方法对应的至少一个目标堆栈快照,并根据每个方法对应至少一个目标堆栈快照的生成时间可以确定每个方法在时间轴中的出现节点,可以通过时间轴确定每个方法在时间轴中的耗时信息以及执行顺序。通过每个方法的执行位置可以快速对该方法进行定位,进而监控每个方法的耗时是否超越耗时预期,以准确确定运行异常的方法,提异常检测的准确度。同时,由于还可以通过执行顺序确定与各个方法关联的调用关系,可以对每个方法进行准确定位,降低了排查难度。
由于通过计算各个方法的耗时,通过筛选各个方法中耗时异常的方法进行筛选,获得调用异常的方法,准确度不够高,只能获得各个方法的总耗时,不能获知各个方法执行的先后顺序,也不能直观而准确地确定与运行异常的方法所关联的调用关系,也即不能直接获得各个方法的父节点和/或子节点,导致用户不能对运行异常的方法进行准确定位,在实际针对线程进行追踪时,不能对异常方法进行准确定位,排查难度较高。
为了更直观地提供各个方法的实际调用情况,可以通过确定各个方法的执行顺序,以对各个方法的执行过程进行准确定位。如图3所示,为本发明实施例提供的一种信息处理方法的又一个实施例的流程图,该方法可以包括以下几个步骤:
301:根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴。
302:从所述快照集合中,确定每个方法对应的至少一个目标堆栈快照。
303:根据每个方法对应的至少一个目标堆栈快照的生成时间,确定所述每个方法在所述时间轴中的出现节点。
304:根据各个方法在所述时间轴中的出现节点,统计各个方法在所述时间轴中的出现次数以及首次出现节点。
305:根据各个方法在所述时间轴中的出现次数,确定各个方法的耗时信息。
306:根据各个方法在所述时间轴中的首次出现节点,确定各个方法的执行顺序。
各个方法的执行顺序可以根据各个方法在时间轴中的首次出现节点而确定,由于时间轴可以标识各个方法对应目标堆栈快照的出现节点,各个方法在时间轴中首次出现节点越靠前,说明对应方法的执行顺序排序越靠前。可选地,各个方法可能在不同的时间段被执行或者调用,因此,在各个方法的首次出现节点出现后,可以获取与所述首次出现节点连续的堆栈快照,直至检测到不包含该方法的堆栈快照,记录最后一个与该首次出现节点关联的堆栈快照在时间轴上的出现节点。如果后续该方法在时间轴上的任一节点再次出现,可以根据再次出现的节点确定各个方法对应的第二执行顺序,直至遍历所有的堆栈快照。
各个方法在时间轴中的首次出现节点可以指各个方法分别对应的至少一个目标堆栈快照按照生成时间先后顺序排列时,排序最先的目标堆栈快照对应生成时间在时间轴上的对应节点。任一方法在首次出现节点即开始执行,即便执行中断后被重新执行,该方法的执行顺序仍为首次出现节点对应的执行顺序。
为了快速而准确地确定各个方法的耗时时长,作为一个实施例,所述耗时信息包括耗时时长,所述根据各个方法在所述时间轴中的出现次数,确定各个方法的耗时信息可以包括:
根据堆栈快照的采样周期与各个方法在所述时间轴中的出现次数的乘积,确定各个方法的耗时时长。
采样周期可以通过堆栈快照的采样频率确定,采样周期与采样频率成反比。采样周期实际可以指两次采样的间隔时间,将两次采样的间隔时间与各个方法在时间轴中的出现次数的乘积可以确定各个方法的耗时时长。
作为又一个实施例,所述根据各个方法在所述时间轴中首次出现节点,确定各个方法的执行顺序可以包括:
根据各个方法在所述时间轴中首次出现节点,确定各个方法的开始执行时间;
根据各个方法开始执行时间的先后顺序,确定各个方法的执行顺序。
根据各个方法的首次出现节点对应时间轴的时刻,即为各个方法的开始执行时间。
本发明实施例中,通过统计各个方法在时间轴中的出现节点可以获得各个方法在时间轴中的出现次数以及首次出现节点,通过出现次数可以确定各个方法的耗时信息,以及根据各个方法在时间轴中的首次出现位置,确定各个方法的执行顺序。时间轴与堆栈快照的生成先后顺序相关联,当各个方法在时间轴中首次出现的位置即可以代表在时间轴上对应的位置处开始执行,以准确定位各个方法的执行顺序。通过各个方法的执行顺序可以对各个方法进行按序追踪,快速定位运行异常的方法,提高异常检测的准确度。
采用生成时间标记堆栈快照的执行先后顺序时,需要将各个堆栈快照的生成时间对应时间戳进行记录,并一一保存,进而可以通过各个堆栈快照时间戳的比较,获得各个堆栈快照的执行先后顺序。但是,通过时间戳标识堆栈快照的生成先后顺序需要执行较为复杂的先后判断,效率不高。因此,可以为每一个堆栈快照按照其生成时间的先后设置快照编号,以通过编号大小直接表示堆栈快照的生成先后顺序。因此,如图4所示,为本发明实施例提供的一种信息处理方法的又一个实施的流程图,该方法可以包括以下几个步骤:
401:根据快照集合中各个堆栈快照的生成时间先后顺序为各个堆栈快照设置快照编号。
其中,每个堆栈快照的快照编号可以在每生成一个堆栈快照时实时设置,也即堆栈快照的快照编号的设置与堆栈快照的生成时间可以保持一致,以为每一个堆栈快照均按生成顺序设置相应的快照编号。
402:按照所述快照编号的排列顺序,生成快照集合对应时间轴。
其中,可以按照快照编号的由小到大的顺序进行排序,获得快照集合对应时间轴。快照集合对应的时间轴的长短可以与快照集合中的堆栈快照的数量相一致。
403:从所述快照集合中,确定每个方法对应的至少一个目标堆栈快照。
404:根据每个方法对应的至少一个目标堆栈快照的生成时间,确定所述每个方法在所述时间轴中的出现节点。
405:根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。
由于,每一个堆栈快照均用快照编号进行标识,也即可以通过快照编号作为筛选问题的方法,通过快照编号作为实现方式。作为一个实施例,所述根据每个方法对应的至少一个目标堆栈快照的生成时间,确定所述每个方法在所述时间轴中的出现节点包括:
根据每个方法对应的至少一个目标堆栈快照的目标快照编号,确定每个方法在所述时间轴中的出现节点。
由于堆栈快照中可以包含各个方法的方法名称,因此,包含各个堆栈快照的快照编号可以作为各个方法的出现节点,进而在某些实施例中,所述根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信号以及执行顺序可以包括:
根据各个方法在所述时间轴中的出现节点,统计包含各个方法的方法名称的目标快照编号以及包含各个方法的首个目标快照编号;
根据所述目标快照编号的数量,确定各个方法的耗时信息;
根据包含各个方法的首个目标快照编号,确定各个方法的执行顺序。
作为一种可能的实现方式,所述根据包含各个方法的首个目标快照编号,确定各个方法的执行顺序包括:
将各个方法的目标快照编号按照编号顺序,从首个目标快照编号在时间轴对应的目标节点开始进行排列,获得各个方法的执行顺序。
针对任一个方法可以查找包含该任一个方法的方法名称的目标堆栈快照,进而获得目标堆栈快照对应的目标快照编号。通过堆栈快照的快照编号按照编号打小顺序排列构成的时间轴,可以将该任一个方法的目标快照编号按照编号顺序从首个目标快照编号在时间轴对应的目标节点开始进行排列,获得该任一个方法的执行顺序,进而获得各个方法的执行顺序。
本发明实施例中,通过为堆栈快照设置快照编号,可以快速而准确地设置堆栈集合中的堆栈快照对应的时间轴,生成的时间轴可以用于标识各个方法在不同堆栈快照的出现节点,以通过统计各个方法在时间轴中的出现节点,获得各个方法的耗时信息以及执行顺序,提高各个方法的判别顺序。
堆栈快照中可以包含各个方法的节点调用关系,通过节点调用关系可以获得各个方法之间的调用顺序,通过调用顺序可以获得更准确的执行顺序,因此,作为又一个实施例,所述从所述快照集合中,确定每个方法对应的至少一个目标堆栈快照之后,所述方法还可以包括:
根据每个方法对应的至少一个目标堆栈快照中的节点调用关系,确定每个方法对应的目标调用关系。
所述根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序包括:
根据各个方法各自的目标调用关系以及在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。
其中,每一个方法对应的目标调用关系可以包含于该每一个方法相关联的父节点对应的第一方法以及子节点对应的第二方法。
各个方法各自对应的目标调用关系可以确定每个方法的调用拓扑结构,进而可以基于调用拓扑结构行成的执行基准,获得每个方法的耗时基础以及执行顺序。作为一种可能的实现方式,所述根据各个方法各自的目标调用关系以及在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序包括:
根据各个方法在所述时间轴中的出现节点,统计各个方法在所述时间轴中的出现次数以及首次出现节点;
根据各个方法在所述时间轴中的出现次数,确定各个方法的耗时信息;
根据各个方法各自的目标调用关系以及在所述时间轴中的首次出现节点,确定各个方法的执行顺序。
为了准确获得各个方法的执行顺序,以对各个方法进行精确监控,所述根据各个方法各自的目标调用关系以及在所述时间轴中的首次出现节点,确定各个方法的执行顺序包括:
根据各个方法各自的目标调用关系,确定各个方法对应调用拓扑;
在各个方法在所述调用拓扑中对应调用位置,将各个方法在所述时间轴中的出现节点从首次出现节点开始,依次进行排列,获得各个方法的执行顺序。
通过获取各个方法各自对应的目标调用关系,可以获得各个方法构成的调用拓扑,在所述调用拓扑的基础上,可以按照各个方法在时间轴上出现节点,获得各个方法的执行顺序以及耗时信息。在各个方法的调用拓扑的基础上,再获得各个方法的执行顺序以及各个方法的耗时信息,可以通过对各个方法的调用进行拓扑耗时分析,可以快速获得运行异常的方法,并在调用拓扑的基础上获得运行异常的方法的执行顺序,实现对运行异常的方法的快速而精确的定位,降低了排查难道,并提高排查效率。
在一种可能的设计中,所述方法还可以包括:
基于各个方法在所述时间轴中的出现节点,输出各个方法的节点提示信息。
可选地,在输出各个方法的节点提示信息之前,还可以包括:基于各个方法在时间轴中的出现节点,分别确定各个方法各自的节点提示信息。具体还可以根据各个方法的执行顺序以及耗时信息,分别确定各个方法各自的节点提示信息。
各个方法的节点提示信息具体可以由各个方法的耗时信息以及执行顺序构成。
作为一个实施例,所述基于各个方法在所述时间轴中的出现节点,输出各个方法的节点提示信息可以包括:
将所述时间轴作为坐标轴,建立导航坐标系;
基于每个方法在所述时间轴中的首次出现节点,在所述导航坐标系中绘制表示每个方法在所述时间轴中的所有出现节点的统计图形。
在导航坐标系中,以时间轴为输出基准,从各个方法在所述时间轴的首次出现节点开始,分别输出各个节点的节点提示信息。
可选地,还可以包括:以所述导航坐标系为基准,输出所述统计图形。
通过输出各个方法的节点提示信息可以使得各个方法的耗时时长以及执行顺序可以被直观地展示,可读性更高。
如图5所示,为本发明实施例提供的一种信息处理方法的又一个实施例的流程图,该方法可以包括以下几个步骤:
501:根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴。
502:确定所述每个方法在所述时间轴中的出现节点。
在某些实施例中,所述确定所述每个方法在所述时间轴中的出现节点可以包括:从所述快照集合中,确定每个方法对应的至少一个目标堆栈快照。根据每个方法对应的至少一个目标堆栈快照的生成时间,确定每个方法在时间轴中的出现节点。
503:基于各个方法在所述时间轴中的出现节点,输出各个节点的节点提示信息。
其中,所述节点提示信息用于确定各个方法的耗时信息以及执行顺序。
本发明实施例中,根据快照集合中堆栈快照的生成时间的先后顺序,可以获得快照集合对应时间轴。确定每个方法在时间轴中的出现节点,进而可以基于各个方法在时间轴中的出现节点输出各个节点的节点提示信息,而该节点提示信息用于确定各个方法的耗时信息以及执行顺序。通过输出节点提示信息可以提示用户各个方法的实际运行情况,进而用户可以根据节点提示信息,按照各个方法的耗时信息以及执行顺序快速确定各个节点中的异常节点,提高异常节点的判断效率。而输出的提示信息的可读性更高,更易被读取并使用,提高异常方法的监控效率。
作为一个实施例,所述基于各个方法在所述时间轴中的出现节点,输出各个节点的节点提示信息可以包括:
根据各个方法在所述时间轴中的出现节点,统计各个方法在时间轴中的出现次数以及首次出现节点;
基于各个方法在时间轴中的出现次数以及首次出现节点,输出各个节点的节点提示信息。其中,所述节点提示信息用于确定各个方法的耗时信息以及执行顺序,每个方法耗时信息可以根据每个方法在时间轴中的出现次数确定,每个方法的执行顺序可以根据每个方法在时间轴中的首次出现节点确定。
作为又一个实施例,所述基于各个方法在所述时间轴中的出现节点,输出各个节点的节点提示信息可以包括:
基于各个方法在时间轴中对应目标快照编号的数量以及首个目标快照编号,输出各个节点的提示信息。
其中,所述节点提示信息用于确定各个方法的耗时信息以及执行顺序。耗时信息可以根据目标快照编号的数量确定,例如可以根据目标快照编号的数量与采样周期的乘积确定。执行顺序可以通过将各个方法的目标快照编号按照编号顺序,从首个目标快照编号在时间轴对应的目标节点开始进行排列而确定,继而获得各个方法的执行顺序。
作为又一个实施例,所述基于各个方法在所述时间轴中的出现节点,输出各个节点的节点提示信息可以包括:
根据各个方法各自的目标调用关系以及在所述时间轴中的出现节点,输出各个节点的节点提示信息。
其中,所述节点的提示信息用于确定各个方法的耗时信息以及执行顺序。耗时信息可以根据各个方法在所述时间轴中的出现次数确定,各个方法的执行顺序可以根据各个方法各自的目标调用关系以及在之间轴中的首次出现节点确定。具体可以通过各个方法各自的目标调用关系,确定各个方法对应调用拓扑;在各个方法在所述调用拓扑中对应调用位置,将各个方法在所述时间轴中的出现节点从首次出现节点开始,依次进行排列,获得各个方法的执行顺序。
本发明实施例的部分步骤与上述实施例的步骤相同,关于实施例中的不同的实现方式在上述实施例中已经详细说明,在此不再赘述。
在实际应用中,以对堆栈进行采样获得的堆栈集合中包括10个堆栈快照为例在图6中对本发明实施例的各个步骤进行详细说明,其中,假设对堆栈进行10次采样,获得10个堆栈快照具体可以如图7所示,每获得一个堆栈快照,即为该堆栈快照设置快照编号,也即根据快照集合中各个堆栈快照的生成时间先后顺序为各个堆栈快照设置快照编号601,分别为堆栈快照(1)~堆栈快照(10),如图7中标示的701。并按照快照编号的排列顺序,生成快照集合对应时间轴602,也即生成快照集合对应时间轴为1~10的时间轴。
如图7所示,假定堆栈快照(1)中包含的方法为ABD,堆栈快照(2)中包含的方法为ABD,堆栈快照(3)中包含的方法为ABD,堆栈快照(4)中包含的方法为ABD,堆栈快照(5)中包含的方法为ABD,堆栈快照(6)中包含的方法为ABE,堆栈快照(7)中包含的方法为ABE,堆栈快照(8)中包含的方法为ABE,堆栈快照(9)中包含的方法为AC,堆栈快照(10)中包含的方法为AC。之后,根据各个方法在所述时间轴中的出现节点,统计包含各个方法的方法名称的目标快照编号以及包含各个方法的首个目标快照编号603。也即,通过统计获得包含A方法的目标快照编号1~10和首个目标快照编号1、B方法的目标快照编号1~8和首个目标快照编号1、C方法的目标快照编号9~10和首个目标快照编号9、D方法的目标快照编号1~5和首个目标快照编号1以及E方法的目标快照编号6~8和首个目标快照编号6。
之后,可以根据目标快照编号的数量确定各个方法的耗时信息604,也即获得A方法的耗时为10、B方法的耗时为8、C方法的耗时为2、D方法的耗时为5以及E方法的耗时为2。
之后,可以获取每个方法在至少一个目标堆栈快照中的节点调用关系,确定每个方法的目标调用关系605,并根据各个方法各自的目标调用关系,获得各个方法的调用拓扑606。从图8中可以看出,A方法为根节点,B方法以及C方法为A方法的子节点,D方法以及E方法为B方法的子节点,进而可以获得图7中的调用拓扑。
之后,可以根据各个方法在调用拓扑中对应调用位置,将各个方法的目标快照编号,按照编号顺序,从首个目标快照编号开始,在时间轴上中出现节点的节点提示信息607,各个方法的节点提示信息可以用于获得各个方法的执行顺序以及耗时时长。也即,如图9所示,将A方法对应调用位置S1将目标快照编号1~10,从1开始,按照从小到大的顺序在时间轴对应的目标节点一一输出,获得A方法的节点提示信息;将B方法对应调用位置S2将目标快照编号1~8,从1开始,按照从小到大的顺序在时间轴对应的目标节点一一输出,获得B方法的节点提示信息;将D方法对应调用位置S3将目标快照编号1~5,从1开始,按照从小到大的顺序在时间轴对应的目标节点一一输出,获得D方法的节点提示信息;将E方法对应调用位置S4将目标快照编号6~8,从6开始,按照从小到大的顺序在时间轴对应的目标节点一一输出,获得E方法的节点提示信息;将C方法对应调用位置S5将目标快照编号9~10,从9开始,按照从小到大的顺序在时间轴对应的目标节点一一输出,获得C方法的节点提示信息;其中,每个方法的节点提示信息可以展示该方法的耗时信息以及执行顺序。
如图10所示,为本发明实施例提供的一种信息处理装置的一个实施例的结构示意图,该装置可以包括以下几个模块:
顺序确定模块1001,用于根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;
节点确定模块1002,用于确定所述每个方法在所述时间轴中的出现节点;
结果确定模块1003,用于根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。
作为一个实施例,所述装置还可以包括:
目标确定模块,用于从所述快照集合中,确定每个方法对应的至少一个目标堆栈快照;
所述节点确定模块可以包括:
节点确定单元,用于根据每个方法对应的至少一个目标堆栈快照的生成时间,确定所述每个方法在所述时间轴中的出现节点。
作为一个实施例,所述结果确定模块包括:
第一统计单元,用于根据各个方法在所述时间轴中的出现节点,统计各个方法在所述时间轴中的出现次数以及首次出现节点;
耗时确定单元,用于根据各个方法在所述时间轴中的出现次数,确定各个方法的耗时信息;
顺序确定单元,用于根据各个方法在所述时间轴中的首次出现节点,确定各个方法的执行顺序。
作为一个实施例,所述耗时信息包括耗时时长,所述耗时确定单元包括:
根据堆栈快照的采样周期与各个方法在所述时间轴中的出现次数的乘积,确定各个方法的耗时时长。
作为一个实施例,所述顺序确定单元包括:
根据各个方法在所述时间轴中首次出现位置,确定各个方法的开始执行时间;
根据各个方法开始执行时间的先后顺序,确定各个方法的执行顺序。
作为一个实施例,所述顺序确定模块包括:
编号设置单元,用于根据快照集合中各个堆栈快照的生成时间先后顺序为各个堆栈快照设置快照编号;
第一生成单元,用于按照所述快照编号的排列顺序,生成快照集合对应时间轴。
在某些实施例中,所述节点确定单元包括:
节点确定子单元,用于根据每个方法对应的至少一个目标堆栈快照的目标快照编号,确定每个方法在所述时间轴中的出现节点。
在某些实施例中,所述结果确定模块包括:
第二统计单元,用于根据各个方法在所述时间轴中的出现节点,统计包含各个方法的方法名称的目标快照编号以及包含各个方法的首个目标快照编号;
第一确定单元,用于根据所述目标快照编号的数量,确定各个方法的耗时信息;
第二确定单元,用于根据各个方法的首个目标快照编号,确定各个方法的执行顺序。
作为一种可能的实现方式,所述第二确定单元具体用于:
将各个方法的目标快照编号按照编号顺序,从首个目标快照编号在时间轴对应的目标节点进行排列,获得各个方法的执行顺序。
作为又一个实施例,所述装置还包括:
关系确定模块,用于根据每个方法对应的至少一个目标堆栈快照中的节点调用关系,确定每个方法对应的目标调用关系;
所述结果确定模块包括:
第三确定单元,用于根据各个方法各自的目标调用关系以及在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。
在某些实施例中,所述第三确定单元包括:
统计子单元,用于根据各个方法在所述时间轴中的出现节点,统计各个方法在所述时间轴中的出现次数以及首次出现节点;
第一确定子单元,用于根据各个方法在所述时间轴中的出现次数,确定各个方法的耗时信息;
第二确定子单元,用于根据各个方法各自的目标调用关系以及在所述时间轴中的首次出现节点,确定各个方法的执行顺序。
在某些实施例中,所述第二确定子单元具体用于:
根据各个方法各自的目标调用关系,确定各个方法对应调用拓扑;在各个方法在所述调用拓扑中对应调用位置,将各个方法在所述时间轴中的出现节点从首次出现节点开始,依次进行排列,获得各个方法的执行顺序。
作为一个实施例,所述装置还包括:
第一输出模块,用于基于各个方法在所述时间轴中的出现节点,输出各个方法的节点提示信息。
在某些实施例中,所述信息输出模块包括:
第一建立单元,用于将所述时间轴作为坐标轴,建立导航坐标系;
第一生成单元,用于基于每个方法在所述时间轴中的首次出现节点,在所述导航坐标系中绘制表示每个方法在所述时间轴中的所有出现节点的统计图形。
在某些实施例中,所述装置还包括:
第二输出模块,用于以所述导航坐标系为基准,输出所述统计图形。
上述所述的信息处理装置可以执行上述实施例所述信息处理方法的各个步骤,其执行内容和技术效果不再赘述,对于上述实施例中的信息处理方法其中各个步骤执行的操作的具体方式已经在有关该装置的实施例中进行了详细描述,此处将不做详细阐述说明。
在一种可能的设计中,图10所述的装置可以实现为一信息处理设备,其中,如图11所示,所述信息处理设备可以包括:存储组件1101以及处理组件1102;所述存储组件1101用于存储一条或多条计算机指令,所述一条或多条计算机指令用于被所述处理组件1102调用并执行;
所述处理组件1102用于:
根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;确定所述每个方法在所述时间轴中的出现节点;根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。
作为一个实施例,所述处理组件确定每个方法在时间轴中的出现节点可以是:从所述快照集合中,确定每个方法对应的至少一个目标堆栈快照;根据每个方法对应的至少一个目标堆栈快照的生成时间,确定所述每个方法在所述时间轴中的出现节点。
作为一个实施例,所述处理组件根据所述各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序具体是:
根据各个方法在所述时间轴中的出现节点,统计各个方法在所述时间轴中的出现次数以及首次出现节点;
根据各个方法在所述时间轴中的出现次数,确定各个方法的耗时信息;
根据各个方法在所述时间轴中的首次出现节点,确定各个方法的执行顺序。
在某些实施例中,所述耗时信息包括耗时时长,所述处理组件根据各个方法在所述时间轴中的出现次数,确定各个方法的耗时信息具体是:
根据堆栈快照的采样周期与各个方法在所述时间轴中的出现次数的乘积,确定各个方法的耗时时长。
在某些实施例中,所述处理组件根据各个方法在所述时间轴中首次出现节点,确定各个方法的执行顺序具体是:
根据各个方法在所述时间轴中首次出现位置,确定各个方法的开始执行时间;
根据各个方法开始执行时间的先后顺序,确定各个方法的执行顺序。
作为一个实施例,,所述处理组件根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴具体是:
根据快照集合中各个堆栈快照的生成时间先后顺序为各个堆栈快照设置快照编号;
按照所述快照编号的排列顺序,生成快照集合对应时间轴。
在某些实施例中,所述处理组件根据每个方法对应的至少一个目标堆栈快照的生成时间,确定所述每个方法在所述时间轴中的出现节点具体是:
根据每个方法对应的至少一个目标堆栈快照的目标快照编号,确定每个方法在所述时间轴中的出现节点。
在某些实施例中,所述处理组件根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信号以及执行顺序具体是:
根据各个方法在所述时间轴中的出现节点,统计包含各个方法的方法名称的目标快照编号以及包含各个方法的首个目标快照编号;
根据所述目标快照编号的数量,确定各个方法的耗时信息;
根据各个方法的首个目标快照编号,确定各个方法的执行顺序。
在某些实施例中,所述处理组件根据各个方法的首个目标快照编号,确定各个方法的执行顺序具体是:
将各个方法的目标快照编号按照编号顺序,从首个目标快照编号在时间轴对应的目标节点进行排列,获得各个方法的执行顺序。
作为一个实施例,,所述处理组件可以用于:
根据每个方法对应的至少一个目标堆栈快照中的节点调用关系,确定每个方法对应的目标调用关系;
所述根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序包括:
根据各个方法各自的目标调用关系以及在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。
在某些实施例中,所述处理组件根据各个方法各自的目标调用关系以及在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序具体是:
根据各个方法在所述时间轴中的出现节点,统计各个方法在所述时间轴中的出现次数以及首次出现节点;
根据各个方法在所述时间轴中的出现次数,确定各个方法的耗时信息;
根据各个方法各自的目标调用关系以及在所述时间轴中的首次出现节点,确定各个方法的执行顺序。
在某些实施例中,所述处理组件根据各个方法各自的目标调用关系以及在所述时间轴中的首次出现节点,确定各个方法的执行顺序具体是:
根据各个方法各自的目标调用关系,确定各个方法对应调用拓扑;
在各个方法在所述调用拓扑中对应调用位置,将各个方法在所述时间轴中的出现节点从首次出现节点开始,依次进行排列,获得各个方法的执行顺序。
作为又一个实施例,处理组件还可以用于:
基于各个方法在所述时间轴中的出现节点,输出各个方法的节点提示信息。
在某些实施例中,所述处理组件基于各个方法在所述时间轴中的出现节点,输出各个方法的节点提示信息具体是:
将所述时间轴作为坐标轴,建立导航坐标系;
基于每个方法在所述时间轴中的首次出现节点,在所述导航坐标系中绘制表示每个方法在所述时间轴中的所有出现节点的统计图形。
在某些实施例中,处理组件还可以用于:
以所述导航坐标系为基准,输出所述统计图形。
上述所述的信息处理设备可以配置以执行如上述实施例所述信息处理方法,其执行内容和技术效果不再赘述,对于实施例中的信息处理设备其中各个组件执行的操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
如图12所示,为本发明实施例提供的一种信息处理装置的又一个实施例的结构示意图,该装置可以包括以下几个模块:
顺序确定模块1201,用于根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;
节点确定模块1202,用于确定所述每个方法在所述时间轴中的出现节点;
信息输出模块1203,用于基于各个方法在所述时间轴中的出现节点,输出各个节点的节点提示信息;
其中,所述节点提示信息用于确定各个方法的耗时信息以及执行顺序。
所述装置还可以包括:目标确定模块,用于从所述快照集合中,确定每个方法对应的至少一个目标堆栈快照;
所述节点确定模块可以包括:
节点确定单元,用于根据每个方法对应的至少一个目标堆栈快照的生成时间,确定所述每个方法在所述时间轴中的出现节点。
图12所示的装置所执行的具体操作与图10所示的装置的部分步骤相同,在此不再赘述。
上述所述的信息处理装置可以执行上述实施例所述信息处理方法的各个步骤,其执行内容和技术效果不再赘述,对于上述实施例中的信息处理方法其中各个步骤执行的操作的具体方式已经在有关该装置的实施例中进行了详细描述,此处将不做详细阐述说明。
在一种可能的设计中,图12所示的信息处理装置可以实现为一信息处理设备,其中,如图13所示,该设备可以包括:存储组件1301、处理组件1302以及输出组件1303;所述存储组件1301用于存储一条或多条计算机指令,所述一条或多条计算机指令用于被所述处理组件1302调用并执行;
所述处理组件1302用于:
根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;确定所述每个方法在所述时间轴中的出现节点;
所述输出组件1303用于:
基于各个方法在所述时间轴中的出现节点,输出各个节点的节点提示信息;
其中,所述节点提示信息用于确定各个方法的耗时信息以及执行顺序。
所述处理组件确定每个方法在所述时间轴中的出现节点具体可以是:从所述快照集合中,确定每个方法对应的至少一个目标堆栈快照;根据每个方法对应的至少一个目标堆栈快照的生成时间,确定所述每个方法在所述时间轴中的出现节点。
上述所述的信息处理设备可以配置以执行如上述实施例所述信息处理方法,其执行内容和技术效果不再赘述,对于实施例中的信息处理设备其中各个组件执行的操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (20)

1.一种信息处理方法,其特征在于,包括:
根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;
确定所述每个方法在所述时间轴中的出现节点;
根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。
2.根据权利要求1所述的方法,其特征在于,所述确定每个方法在所述时间轴中的出现节点包括:
从所述快照集合中,确定每个方法对应的至少一个目标堆栈快照;
根据每个方法对应的至少一个目标堆栈快照的生成时间,确定所述每个方法在所述时间轴中的出现节点。
3.根据权利要求1所述的方法,其特征在于,所述根据所述各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序包括:
根据各个方法在所述时间轴中的出现节点,统计各个方法在所述时间轴中的出现次数以及首次出现节点;
根据各个方法在所述时间轴中的出现次数,确定各个方法的耗时信息;
根据各个方法在所述时间轴中的首次出现节点,确定各个方法的执行顺序。
4.根据权利要求3所述的方法,其特征在于,所述耗时信息包括耗时时长,所述根据各个方法在所述时间轴中的出现次数,确定各个方法的耗时信息包括:
根据堆栈快照的采样周期与各个方法在所述时间轴中的出现次数的乘积,确定各个方法的耗时时长。
5.根据权利要求3所述的方法,其特征在于,所述根据各个方法在所述时间轴中首次出现节点,确定各个方法的执行顺序包括:
根据各个方法在所述时间轴中首次出现位置,确定各个方法的开始执行时间;
根据各个方法开始执行时间的先后顺序,确定各个方法的执行顺序。
6.根据权利要求2所述的方法,其特征在于,所述根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴包括:
根据快照集合中各个堆栈快照的生成时间先后顺序为各个堆栈快照设置快照编号;
按照所述快照编号的排列顺序,生成快照集合对应时间轴。
7.根据权利要求6所述的方法,其特征在于,所述根据每个方法对应的至少一个目标堆栈快照的生成时间,确定所述每个方法在所述时间轴中的出现节点包括:
根据每个方法对应的至少一个目标堆栈快照的目标快照编号,确定每个方法在所述时间轴中的出现节点。
8.根据权利要求6所述的方法,其特征在于,所述根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信号以及执行顺序包括:
根据各个方法在所述时间轴中的出现节点,统计包含各个方法的方法名称的目标快照编号以及包含各个方法的首个目标快照编号;
根据所述目标快照编号的数量,确定各个方法的耗时信息;
根据各个方法的首个目标快照编号,确定各个方法的执行顺序。
9.根据权利要求8所述的方法,其特征在于,所述根据各个方法的首个目标快照编号,确定各个方法的执行顺序包括:
将各个方法的目标快照编号按照编号顺序,从首个目标快照编号在时间轴对应的目标节点进行排列,获得各个方法的执行顺序。
10.根据权利要求2所述的方法,其特征在于,所述从所述快照集合中,确定每个方法对应的至少一个目标堆栈快照之后,所述方法还包括:
根据每个方法对应的至少一个目标堆栈快照中的节点调用关系,确定每个方法对应的目标调用关系;
所述根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序包括:
根据各个方法各自的目标调用关系以及在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。
11.根据权利要求10所述的方法,其特征在于,所述根据各个方法各自的目标调用关系以及在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序包括:
根据各个方法在所述时间轴中的出现节点,统计各个方法在所述时间轴中的出现次数以及首次出现节点;
根据各个方法在所述时间轴中的出现次数,确定各个方法的耗时信息;
根据各个方法各自的目标调用关系以及在所述时间轴中的首次出现节点,确定各个方法的执行顺序。
12.根据权利要求11所述的方法,其特征在于,所述根据各个方法各自的目标调用关系以及在所述时间轴中的首次出现节点,确定各个方法的执行顺序包括:
根据各个方法各自的目标调用关系,确定各个方法对应调用拓扑;
在各个方法在所述调用拓扑中对应调用位置,将各个方法在所述时间轴中的出现节点从首次出现节点开始,依次进行排列,获得各个方法的执行顺序。
13.根据权利要求1所述的方法,其特征在于,还包括:
基于各个方法在所述时间轴中的出现节点,输出各个方法的节点提示信息。
14.根据权利要求13所述的方法,其特征在于,所述基于各个方法在所述时间轴中的出现节点,输出各个方法的节点提示信息包括:
将所述时间轴作为坐标轴,建立导航坐标系;
基于每个方法在所述时间轴中的首次出现节点,在所述导航坐标系中绘制表示每个方法在所述时间轴中的所有出现节点的统计图形。
15.根据权利要求14所述的方法,其特征在于,还包括:
以所述导航坐标系为基准,输出所述统计图形。
16.一种信息处理方法,其特征在于,包括:
根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;
确定所述每个方法在所述时间轴中的出现节点;
基于各个方法在所述时间轴中的出现节点,输出各个节点的节点提示信息;
其中,所述节点提示信息用于确定各个方法的耗时信息以及执行顺序。
17.一种信息处理装置,其特征在于,包括:
顺序确定模块,用于根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;
节点确定模块,用于确定所述每个方法在所述时间轴中的出现节点;
结果确定模块,用于根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。
18.一种信息处理装置,其特征在于,包括:
顺序确定模块,用于根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;
节点确定模块,用于确定所述每个方法在所述时间轴中的出现节点;
信息输出模块,用于基于各个方法在所述时间轴中的出现节点,输出各个节点的节点提示信息;
其中,所述节点提示信息用于确定各个方法的耗时信息以及执行顺序。
19.一种信息处理设备,其特征在于,包括:存储组件以及处理组件;所述存储组件用于存储一条或多条计算机指令,所述一条或多条计算机指令用于被所述处理组件调用并执行;
所述处理组件用于:
根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;确定所述每个方法在所述时间轴中的出现节点;根据各个方法在所述时间轴中的出现节点,确定各个方法的耗时信息以及执行顺序。
20.一种信息处理设备,其特征在于,包括:存储组件、处理组件以及输出组件;所述存储组件用于存储一条或多条计算机指令,所述一条或多条计算机指令用于被所述处理组件调用并执行;
所述处理组件用于:
根据快照集合中各个堆栈快照的生成时间先后顺序,确定所述快照集合对应时间轴;确定所述每个方法在所述时间轴中的出现节点;
所述输出组件用于:
基于各个方法在所述时间轴中的出现节点,输出各个节点的节点提示信息;
其中,所述节点提示信息用于确定各个方法的耗时信息以及执行顺序。
CN201811601651.0A 2018-12-26 2018-12-26 信息处理方法、装置及设备 Active CN111368104B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811601651.0A CN111368104B (zh) 2018-12-26 2018-12-26 信息处理方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811601651.0A CN111368104B (zh) 2018-12-26 2018-12-26 信息处理方法、装置及设备

Publications (2)

Publication Number Publication Date
CN111368104A true CN111368104A (zh) 2020-07-03
CN111368104B CN111368104B (zh) 2023-05-26

Family

ID=71208476

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811601651.0A Active CN111368104B (zh) 2018-12-26 2018-12-26 信息处理方法、装置及设备

Country Status (1)

Country Link
CN (1) CN111368104B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113159331A (zh) * 2021-05-24 2021-07-23 同济大学 一种网络化机器学习系统的自适应稀疏度量化方法
CN115858399A (zh) * 2023-02-09 2023-03-28 创智和宇信息技术股份有限公司 一种利用线程栈快照进行代码级性能分析的方法和系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040075690A1 (en) * 2002-10-18 2004-04-22 Cirne Lewis K. User interface for viewing performance information about transactions
US20120054721A1 (en) * 2010-08-25 2012-03-01 Microsoft Corporation Dynamic calculation of sample profile reports
CN103838747A (zh) * 2012-11-22 2014-06-04 富士通株式会社 网络服务构建方法和设备以及网页数据抽取方法和设备
CN105260294A (zh) * 2015-11-16 2016-01-20 曙光信息产业(北京)有限公司 一种应用程序占用内存的监控方法及装置
CN106445769A (zh) * 2015-08-11 2017-02-22 腾讯科技(深圳)有限公司 计算机运行监测方法、装置和系统
CN106649063A (zh) * 2016-11-22 2017-05-10 腾讯科技(深圳)有限公司 用于监测程序运行时耗时数据的方法及系统
US10146637B1 (en) * 2017-07-14 2018-12-04 EMC IP Holding Company LLC Intelligent snapshot rollbacks

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040075690A1 (en) * 2002-10-18 2004-04-22 Cirne Lewis K. User interface for viewing performance information about transactions
US20120054721A1 (en) * 2010-08-25 2012-03-01 Microsoft Corporation Dynamic calculation of sample profile reports
CN103838747A (zh) * 2012-11-22 2014-06-04 富士通株式会社 网络服务构建方法和设备以及网页数据抽取方法和设备
CN106445769A (zh) * 2015-08-11 2017-02-22 腾讯科技(深圳)有限公司 计算机运行监测方法、装置和系统
CN105260294A (zh) * 2015-11-16 2016-01-20 曙光信息产业(北京)有限公司 一种应用程序占用内存的监控方法及装置
CN106649063A (zh) * 2016-11-22 2017-05-10 腾讯科技(深圳)有限公司 用于监测程序运行时耗时数据的方法及系统
US10146637B1 (en) * 2017-07-14 2018-12-04 EMC IP Holding Company LLC Intelligent snapshot rollbacks

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113159331A (zh) * 2021-05-24 2021-07-23 同济大学 一种网络化机器学习系统的自适应稀疏度量化方法
CN115858399A (zh) * 2023-02-09 2023-03-28 创智和宇信息技术股份有限公司 一种利用线程栈快照进行代码级性能分析的方法和系统

Also Published As

Publication number Publication date
CN111368104B (zh) 2023-05-26

Similar Documents

Publication Publication Date Title
CN106649063B (zh) 用于监测程序运行时耗时数据的方法及系统
US20080016412A1 (en) Performance metric collection and automated analysis
CN109934268B (zh) 异常交易检测方法及系统
CN109587008A (zh) 检测异常流量数据的方法、装置及存储介质
CN109407984B (zh) 一种存储系统性能监测方法、装置和设备
CN110275878B (zh) 业务数据检测方法、装置、计算机设备及存储介质
EP4020218A1 (en) Analyzing large-scale data processing jobs
CN106951360B (zh) 数据统计完整度计算方法和系统
US11526413B2 (en) Distributed tracing of huge spans for application and dependent application performance monitoring
CN112052078A (zh) 一种耗时的确定方法和装置
KR20070080313A (ko) 클라이언트 단말로 제공되는 서비스 성능 분석 방법 및시스템
CN111368104B (zh) 信息处理方法、装置及设备
CN110262955B (zh) 基于pinpoint的应用性能监控工具
CN102610002A (zh) 机台状态侦测系统及方法
US20230004487A1 (en) System and method for anomaly detection and root cause automation using shrunk dynamic call graphs
CN117407245A (zh) 模型训练任务异常检测方法及系统、电子设备和存储介质
CN114996080A (zh) 数据处理方法、装置、设备及存储介质
CN115580528A (zh) 故障根因定位方法、装置、设备及可读存储介质
CN112306818B (zh) 一种流式作业处理方法及装置
CN115426534A (zh) 视频流质量检测方法、装置、设备及存储介质
CN113778831A (zh) 一种数据应用性能分析方法、装置、设备和介质
CN109765411B (zh) 波形显示装置及历史波形统计方法
WO2015182072A1 (ja) 因果構造推定システム、因果構造推定方法およびプログラム記録媒体
CN111581044A (zh) 集群优化方法、装置、服务器及介质
CN112992298A (zh) 一种异常识别方法、试管关联人员确定方法及相关设备

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
GR01 Patent grant
GR01 Patent grant