CN105637488A - 追踪源代码用于末端用户监控 - Google Patents
追踪源代码用于末端用户监控 Download PDFInfo
- Publication number
- CN105637488A CN105637488A CN201380079620.2A CN201380079620A CN105637488A CN 105637488 A CN105637488 A CN 105637488A CN 201380079620 A CN201380079620 A CN 201380079620A CN 105637488 A CN105637488 A CN 105637488A
- Authority
- CN
- China
- Prior art keywords
- code
- application
- affected
- monitoring
- comprehensive monitor
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3409—Recording 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 for performance assessment
- G06F11/3414—Workload generation, e.g. scripts, playback
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3466—Performance evaluation by tracing or monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3466—Performance evaluation by tracing or monitoring
- G06F11/3495—Performance evaluation by tracing or monitoring for systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3409—Recording 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 for performance assessment
- G06F11/3433—Recording 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 for performance assessment for load management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3438—Recording 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 monitoring of user actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/865—Monitoring of software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/87—Monitoring of transactions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Debugging And Monitoring (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
Abstract
示例实施例涉及追踪源代码用于末端用户监控。在示例实施例中,监控应用以获得交互日志,其中交互日志通过多个综合监控器中的每一个追踪应用交互。另外,监控与所述应用相关联的应用代码的执行以获得仪表日志。在该阶段,交互日志和仪表日志被用于确定应用代码的部分和多个综合监控器之间的关系。接收对应用的更改的通知,并且基于所述关系识别由更改影响的综合监控器的受影响的子集。
Description
背景技术
开发和运营(DevOp)是新兴的一套旨在桥接现代信息技术(IT)和软件组织中的开发者和运营之间的空隙的实践和方法论。DevOp实践包括交付过程的自动化、包括开发者和运行的功能交叉组、开发环境和生产环境的联合(alignment)等。一个这样的空隙是在代码改变和生产综合监控器(syntheticmonitor)之间的断开。综合监控器是从在生产环境中的末端用户的观点执行的脚本或流,其中当用户体验被降级时该监控器警告IT人员。
附图说明
以下详细描述参考附图,其中:
图1是用于追踪源代码用于末端用户监控(EUM)的示例系统的框图;
图2是包括用于执行追踪源代码用于EUM的方面的模块的示例计算设备的框图;
图3是用于由计算设备执行用于追踪源代码用于EUM的示例方法的流程图;
图4是用于由计算设备使用静态和动态代码分析执行用于追踪源代码用于EUM的示例方法的流程图;以及
图5A-5B是在追踪源代码用于EUM的各种阶段处的示例应用代码的框图。
具体实施方式
如上面讨论的那样,DevOp实践尝试桥接代码改变和生产综合监控器之间的空隙。代表性地,应用手动维护以保证当应用被改变时脚本正继续执行并且仍在监控正确的进程。例如,这是类似于与所监控的应用用户接口(UI)或应用编程接口(API)交互的脚本(例如,测试脚本)的进程。另外,当应用改变时更新EUM脚本可以为采用诸如持续交付的DevOp实践的IT和软件组织提供另外的挑战,其发布应用改变更频繁,并且其依赖于较多的自动化和较少的手动干涉。
本文中公开的示例实施例使用静态和动态代码分析追踪源代码用于EUM。例如,在一些实施例中,监控应用以获得交互日志,其中交互日志通过多个综合监控器中的每一个追踪应用交互。另外,监控与该应用相关联的应用代码的执行以获得仪表日志(instrumentationlog)。在该阶段,交互日志和仪表日志被用于确定应用代码的部分和多个综合监控器之间的关系。接收对应用的更改的通知,并且基于该关系识别被更改影响的综合监控器的受影响的子集。
以这种方式,本文中公开的示例实施例通过执行各种静态和动态代码分析允许应用改变与EUM相关。特别地,通过观察在服务器侧上的仪表和在客户端侧上的监控,可以识别应用代码和综合监控器之间的关系。
现在参考附图,图1是用于追踪源代码用于EUM的示例系统的框图。示例系统可以被实现为计算设备100,诸如服务器、笔记本计算机、台式计算机、一体化系统、平板计算设备、或任何其它适用于追踪源代码用于EUM的电子设备。在图1的实施例中,计算设备100包括处理器110、接口115、以及机器可读储存媒体120。
处理器110可以是一个或多个中央处理单元(CPU)、微处理器、和/或其它适用于检索并执行存储在机器可读储存媒体120中的指令的硬件设备。处理器110可以提取、解码并执行用于使实现追踪源代码用于EUM的指令122、124、126、128、130。作为检索并执行指令的替换或除了检索并执行指令之外,处理器110可以包括一个或多个电子电路,其包括用于执行指令122、124、126、128、130中的一个或多个的功能性的多个电子组件。
接口115可以包括多个用于与(一个或多个)客户端设备通信的电子组件。例如,接口115可以是以太网接口、通用串行总线(USB)接口、IEEE1394(火线)接口、外部串行高级技术附件(eSATA)接口、或任何其它适用于与客户端设备通信的物理连接接口。替换地,接口115可以是无线接口,诸如无线局域网(WLAN)接口或近场通信(NFC)接口。在操作中,如下面详述的那样,接口115可以被用于将诸如应用数据的数据发送到客户端设备的对应接口并从其处接收所述数据。
机器可读储存媒体120可以是任何电子、磁、光、或存储可执行指令的其它物理储存设备。因此,机器可读储存媒体120可以是例如随机存取存储器(RAM)、电可擦可编程只读存储器(EEPROM)、储存设备、光盘等。如下面详细描述的那样,可以采用用于追踪源代码用于EUM的可执行指令编码机器可读储存媒体120。
应用交互监控指令122可以监控综合监控器与正在执行的应用的交互。例如,综合监控器可以与应用的用户接口元件交互,其中可以记录用户输入和应用响应。在另一示例中,综合监控器可以与应用的数据进入点(entrypoint)交互,其中可以记录输入参数和返回值。可以将与应用的交互存储在交互日志中用于如下面描述的那样稍后使用。
应用的数据进入点的示例可以包括但不被限于统一资源定位符(URL)参数、超文本标识语言(HTML)参数、客户端侧脚本参数、web服务接口、以及API'。在一些情况中,可以基于在源代码中的关键字识别数据进入点,其中所述关键字根据源代码的编程语言而不同。在其它情况中,可以基于在例如描述所期望的参数和输出的可扩展标识语言(XML)消息中的元数据识别数据进入点。
应用可以是由计算设备100通过网络(例如,互联网、内联网等)经由接口115向客户端设备提供的软件或服务。例如,可以由在计算设备100上执行以向客户端设备的web浏览器提供网页的web服务器执行应用。在另一示例中,应用可以是通过网络响应于来自客户端设备的请求而提供功能性的web服务。
仪表监控指令124可以执行应用的执行的服务器侧监控。特别地,可以在仪表日志中记录代码的部分的执行和执行的触发。例如,可以在应用中的函数调用期间记录时间戳和对应的函数名称。在该示例中,也可以记录来自客户端设备的交互使得可以在仪表日志和交互日志之间进行比较。可以通过动态分析模块创建仪表日志,所述动态分析模块具有到例如调试功能性和/或正在执行的应用的编程接口以及计算设备100的系统信息(例如,存储器堆栈、事件日志等)的访问。客户端侧可以涉及在与计算设备100交互的客户端设备上执行的任何操作。服务器侧可以涉及在计算设备100上执行的任何操作。
关系确定指令126可以识别应用代码的部分和综合监控器之间的关系。例如,可以在交互日志和仪表日志两者中识别由综合监控器与应用的匹配交互以识别正在调用的综合监控器和响应于该调用执行的应用代码的相关部分。还可以基于综合监控器将被对应用代码的改变影响的概率来对综合监控器和应用代码的部分之间的关系分等级。
更改通知接收指令128可以处理应用改变的通知。在应用中的改变包括但不被限于对源代码的更改、对计算设备100配置的更改、对应用部署的改变等。例如,源配置管理(SCM)系统可以被配置成向更改通知接收指令128通知源代码改变。
受影响的监控器识别指令130可以识别被对应用的改变影响的监控器。特别地,上面所识别的关系可以被用于识别与应用改变有关的源代码的部分,其中然后将源代码的该部分用于识别受影响的监控器。在一些情况中,上面所识别的关系可以被用于创建查找表,其被用于识别受影响的监控器。
图2是包括用于执行追踪源代码用于EUM的方面的模块的示例计算设备200的框图。与图1的计算设备100一样,计算设备200可以是任何适用于追踪源代码用于EUM的电子设备。
应用服务器模块210可以是服务器软件应用,其被配置成向客户端设备提供应用。通过网络,该应用可以被提供为薄或厚的客户端软件、网页、或通过网络的web服务。应用服务器模块210可以提供基于源代码(例如,HTML文件、脚本文件等)或从源代码生成的目标代码(例如,被链接的库、被分享的目标、可执行文件等)的应用。例如,应用服务器模块210可以提供基于HTML文件的网页,其可以包括由应用服务器模块210执行以为客户端设备生成动态内容的嵌入式脚本。在另一示例中,应用服务器模块210可以使接口暴露于响应于从客户端设备接收请求而触发在所链接的库中的函数的执行的web服务。
如在图2中图解并在下面详细描述的那样,计算设备200还可以包括多个模块220-244。所述模块中的每一个可以包括被编码在机器可读储存媒体上并且由计算设备200的处理器可执行的一系列指令。另外或作为替换,每个模块220-244可以包括一个或多个硬件设备,其包括用于实现下面描述的功能性的电子电路。在一些情况中,模块220-244可以被实现为跨多个计算设备的分布式系统。
监控模块220可以监控由web服务器模块210提供的应用的执行。虽然在下面详细描述了监控模块220的组件,但是在上面关于图1的指令122、124和126提供了关于监控模块220的示例实现的另外的细节。
着色模块222采用颜色为由综合监控执行的事务加标签并将所述事务链接到由应用服务器模块210执行的代码。在一些情况中,着色模块222还可以为由在客户端设备上的综合监控执行的事务加标签。着色模块222与仪表监控工具集成并记录关于当执行综合监控器时执行应用代码的哪些部分的信息。
真实用户监控模块224将真实用户监控(RUM)和深度代码诊断与综合监控器相关联。RUM通过例如复制所监控的应用的网络通信量来追踪在生产中的真实用户的实际执行。可以采用代码诊断进一步增强RUM以将代码执行与用户事务相链接。例如,RUM可以被用于将由所监控的应用执行的代码链接到事务签名(例如,API调用和争论(APIcallandarguments)),其使用由综合监控器到服务器的调用记录进一步被链接到综合监控器。在该示例中,RUM充当用于链接综合监控器和由深度代码诊断追踪的应用代码的中间人。在该情况中,RUM在其中中介器(例如,负载平衡器)能够干扰综合监控器着色的网络架构中尤其是有帮助的。
开发环境模块226在孤立的并被使能完整的代码诊断的测试环境中自动地执行综合监控脚本。综合监控脚本的结果是综合监控器和所执行的代码之间的基准联接(linkage)。
静态分析模块228可以使用静态分析技术以由综合监控脚本检测在源代码中被交互的应用API和UI元件。静态分析可以被用于建立API和UI元件以及综合监控器之间的链接。源代码可以是人类可读、计算机指令的集合。源代码文件的示例包括但不被限于HTML文件、配置文件、动态脚本文件、以及各种编程语言文件。
应用改变模块230可以针对改变监控由应用服务器模块210提供的应用。虽然在下面详细描述应用改变模块230的组件,但是在上面关于图1的指令128提供了关于应用改变模块230的示例实现的另外的细节。
源管理模块232可以与SCM系统交互以针对改变监控应用的源代码。例如,当对源代码文件进行改变时SCM系统可以通知源管理模块232。在该示例中,通知可以包括描述源代码改变的信息,诸如被影响的源代码文件的一部分(例如,代码的行)、在源代码的所述部分中的对客户端设备可用的API等。
部署模块234可以与部署工具交互以识别在应用的部署方面的改变。例如,部署工具可以向部署模块234通知部署工具部署了的新的或被改变的人造物(artifact)。部署工具可以包括自动化安装系统、系统成像管理器、储存分区管理器等。人造物可以包括软件模块,诸如web服务、数据库系统、应用等。
诊断模块236可以与基础设施监控器和诊断交互以检测新的或被改变的人造物。基础设施监控器可以监控网络上的计算设备(例如,服务器、客户端设备等)以获得性能、配置、访问、和故障信息。例如,基础设施监控器可以检测在服务器上的故障并然后很可能地识别网络上的故障的原因。在另一示例中,基础设施监控器可以监控网络数据以保证满足服务水平协议。
监控器通知模块240可以管理到综合监控器的管理员的通知。虽然在下面详细描述监控器通知模块240的组件,但是在上面关于图1的指令130提供了关于监控器通知模块240的示例实现的另外的细节。
管理员通知模块242可以向综合监控器的管理员发送被确定为与应用改变相关的通知。可以使用所识别的关系和由监控模块220提供的如上面描述的其它输出来确定相关的综合监控器。例如,响应于应用改变模块230检测应用改变,可以查询描述应用代码的部分和综合监控器之间的潜在关系的查找表来识别相关的综合监控器。
影响概率模块244可以基于应用改变影响综合监控器中的每一个的概率对相关的综合监控器分等级。特别地,影响概率模块244可以使用由监控模块220执行的各种分析的结果以针对应用代码的部分和综合监控器之间的所识别的关系确定准确度概率。例如,由着色模块222和开发环境模块226识别的关系可以被考虑更直接的,并且相应地,具有相对更高的准确度概率。管理员通知模块242可以基于相关联的关系的准确度概率对在上面描述的通知中的相关综合监控器分等级。
图3是用于由计算设备100执行用于追踪源代码用于EUM的示例方法300的流程图。虽然在下面参考图1的计算设备100描述方法300的执行,但是可以使用用于执行方法300的其它适当的设备,诸如图2的计算设备200。可以以存储在机器可读储存媒体(诸如储存媒体120)上的可执行指令的形式和/或以电子电路的形式实现方法300。
方法300可以在块305中开始并继续至块310,其中计算设备100监控由综合监控器与应用的交互。特别地,可以对应用执行静态代码分析和网络监控以记录如何执行综合监控器与应用交互(例如,应用的API、用户接口元件等)。其次,在块315中,计算设备100监控应用的执行。例如,可以执行动态代码分析以记录响应于来自综合监控器的交互而执行的应用代码的部分。
在块320中,计算设备100确定应用代码的部分和综合监控器之间的关系。特别地,可以在上面在块310到315中创建的日志之间匹配与应用的交互以相关综合监控器调用和应用代码中的作为结果的执行。在块325中,接收对应用代码的更改的通知。例如,SCM系统可以检测更改并提供通知。在块330中,计算设备100基于上面识别的关系来识别被更改影响的综合监控器。在该阶段,可以通知受影响的监控器的管理员使得可以适当地重新配置综合监控器。方法300可以随后前进至块335,方法300可以在那里停止。
图4是用于由计算设备200使用静态和动态代码分析执行用于追踪源代码用于EUM的示例方法400的流程图。虽然在下面参考图2的计算设备200描述方法400的执行,但是可以使用用于执行方法400的其它适当设备,诸如图1的计算设备100。可以以存储在机器可读储存媒体上的可执行指令的形式和/或以电子电路的形式实现方法400。
方法400可以在块405中开始并前进至块410,其中计算设备200监控由综合监控器与应用的交互。在块412中,监控与应用相关联的应用代码的执行。在块415中,计算设备200执行真实用户监控以将应用代码的部分链接到用户事务签名(例如,API调用等)。在块420中,孤立地执行开发环境训练以识别响应于训练脚本而执行的应用代码的部分。在块425中,执行静态代码分析以识别对综合监控器可访问的数据进入点。
在块430中,计算设备200基于在块410-425中收集的数据确定应用代码的部分和综合监控器之间的关系。在该阶段,方法400可以返回至块410使得数据收集可以继续并且使得可以在块430中随着应用执行继续地识别另外的关系。例如,可以收集监控器数据使得可以在块430中周期性地(例如,每小时、每天、每周等)识别关系。
在块435中,可以接收应用改变的通知。可以将应用改变与源代码和/或应用的部署的配置相关。在块440中,将在块430中确定的关系用于确定每个综合监控器被应用改变影响的概率。在块445中,生成基于所确定的概率对任何受影响的监控器分等级的用户通知。例如,具有超出预配置阈值的概率的所有的综合监控器可以被识别并被包括在用户通知中。在该阶段,可以向受影响的综合监控器的管理员提供用户通知。方法400可以随后前进至块450,方法400可以在那里停止。
图5A-5B是在追踪源代码用于EUM的各种阶段处的示例应用代码的框图。图6A描绘应用的源代码505,其中源代码505包括代码模块A515、代码模块B520、和代码模块C525。代码模块B520被示出为与代码模块C525交互。例如,代码模块B520可以调用代码模块C525,其然后将输出返回回到代码模块B520。静态代码分析模块545可以分析应用源代码505以识别可以由综合监控器使用的数据进入点(例如,API)。
图5B描绘应用510的执行,其中执行510包括代码模块A515、代码模块B520、和代码模块C525。执行510还示出当应用处于生产中时暴露的数据进入点530、535、540。数据进入点530、535、540对用户设备555可访问,用户设备555可以包括综合监控器。当访问数据进入点530、535、540时,动态分析模块550可以监控应用550的执行以识别响应于访问数据进入点530、535、540而执行的应用的部分。
上述公开描述了使用静态和动态代码分析的用于追踪源代码用于EUM的多个示例实施例。以这种方式,本文中公开的实施例使实现通过观察在服务器侧上的仪表和在客户端侧上的监控识别的应用代码的部分和综合监控器之间的更多关系。
Claims (15)
1.一种用于追踪源代码用于末端用户监控的系统,所述系统包括:
处理器,用于:
监控应用以获得交互日志,其中所述交互日志通过多个综合监控器中的每一个追踪应用交互;
监控与所述应用相关联的应用代码的执行以获得仪表日志;
使用所述交互日志和所述仪表日志来确定在所述应用代码的部分和所述多个综合监控器之间的多个关系;
从源管理模块接收在所述应用代码中的更改的通知;以及
基于所述多个关系识别被所述更改影响的所述综合监控器的受影响的子集。
2.根据权利要求1所述的系统,其中所述处理器还用于:
执行对所述应用代码的静态代码分析以识别由所述多个综合监控器访问的应用编程接口(API),其中还基于所述API确定所述多个关系。
3.根据权利要求1所述的系统,其中所述处理器还用于:
在所述应用的测试环境中执行综合监控脚本以将所述综合监控脚本链接到所述应用代码的所述部分,其中还基于所述综合监控脚本确定所述多个关系。
4.根据权利要求1所述的系统,其中代码的可获得的部分包括从客户端侧操作可获得的代码的第一部分以及从客户端侧操作不可获得的代码的第二部分,并且其中所述处理器还用于:
执行真实用户监控以将所述应用代码的所述部分的执行链接到用户事务签名,其中将所述用户事务签名与被链接到所述多个综合监控器的接口调用相关联。
5.根据权利要求1所述的系统,其中根据受影响的监控器中的每一个被在所述应用代码中的所述更改影响的概率对所述受影响的监控器分等级。
6.根据权利要求1所述的系统,其中所述处理器还用于:
接收在所述应用的部署配置方面的改变的部署通知;以及
基于所述多个关系识别被在所述部署配置方面的所述改变影响的所述综合监控器的第二子集。
7.一种至少部分地由计算设备实现的用于追踪源代码用于末端用户监控的方法,所述方法包括:
监控应用以获得交互日志,其中所述交互日志通过多个综合监控器中的每一个追踪应用交互;
监控与所述应用相关联的应用代码的执行以获得仪表日志;
使用所述交互日志和所述仪表日志来确定在所述应用代码的部分和所述多个综合监控器之间的多个关系;
接收对所述应用的更改的通知;以及
基于所述多个关系识别被所述更改影响的所述综合监控器的受影响的子集。
8.根据权利要求7所述的方法,还包括:
执行对所述应用代码的静态代码分析以识别由所述多个综合监控器访问的应用编程接口(API),其中还基于所述API确定所述多个关系。
9.根据权利要求7所述的方法,还包括:
在所述应用的测试环境中执行综合监控脚本以将所述综合监控脚本链接到所述应用代码的所述部分,其中还基于所述综合监控脚本确定所述多个关系。
10.根据权利要求7所述的方法,其中代码的可获得的部分包括从客户端侧操作可获得的代码的第一部分以及从客户端侧操作不可获得的代码的第二部分,并且其中所述方法还包括:
执行真实用户监控以将所述应用代码的所述部分的执行链接到用户事务签名,其中将所述用户事务签名与被链接到所述多个综合监控器的接口调用相关联。
11.根据权利要求7所述的方法,其中根据受影响的监控器中的每一个被在所述应用代码中的所述更改影响的概率对所述受影响的监控器分等级。
12.一种采用指令编码的非暂时性机器可读储存媒体,所述指令由处理器可执行用于追踪源代码用于末端用户监控,所述机器可读储存媒体包括指令用于:
监控应用以获得交互日志,其中所述交互日志通过多个综合监控器中的每一个追踪应用交互;
监控与所述应用相关联的应用代码的执行以获得仪表日志;
使用所述交互日志和所述仪表日志来确定在所述应用代码的部分和所述多个综合监控器之间的多个关系;
从源管理模块接收在所述应用代码中的更改的通知;以及
基于所述多个关系识别被所述更改影响的所述综合监控器的受影响的子集,其中根据受影响的监控器中的每一个被在所述应用代码中的所述更改影响的概率对所述受影响的监控器分等级。
13.根据权利要求12所述的非暂时性机器可读储存媒体,其中所述指令还用于:
执行对所述应用代码的静态代码分析以识别由所述多个综合监控器访问的应用编程接口(API),其中还基于所述API确定所述多个关系。
14.根据权利要求12所述的非暂时性机器可读储存媒体,其中所述指令还用于:
在所述应用的测试环境中执行综合监控脚本以将所述综合监控脚本链接到所述应用代码的所述部分,其中还基于所述综合监控脚本确定所述多个关系。
15.根据权利要求12所述的非暂时性机器可读储存媒体,其中代码的可获得的部分包括从客户端侧操作可获得的代码的第一部分以及从客户端侧操作不可获得的代码的第二部分,并且其中所述指令还用于:
执行真实用户监控以将所述应用代码的所述部分的执行链接到用户事务签名,其中将所述用户事务签名与被链接到所述多个综合监控器的接口调用相关联。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2013/062695 WO2015047409A1 (en) | 2013-09-30 | 2013-09-30 | Tracing source code for end user monitoring |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105637488A true CN105637488A (zh) | 2016-06-01 |
Family
ID=52744280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380079620.2A Pending CN105637488A (zh) | 2013-09-30 | 2013-09-30 | 追踪源代码用于末端用户监控 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10073755B2 (zh) |
EP (1) | EP3053042A4 (zh) |
CN (1) | CN105637488A (zh) |
WO (1) | WO2015047409A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9860273B2 (en) * | 2015-10-09 | 2018-01-02 | T-Mobile Usa, Inc. | Logging encrypted data communications for QOE analysis |
US20170123760A1 (en) * | 2015-10-30 | 2017-05-04 | AppDynamics, Inc. | Code Correction During a User Session in a Distributed Business Transaction |
US11087358B2 (en) * | 2016-06-24 | 2021-08-10 | The Nielsen Company (Us), Llc | Methods and apparatus for wireless communication with an audience measurement device |
US10489281B2 (en) | 2016-08-26 | 2019-11-26 | International Business Machines Corporation | Application monitoring with a decoupled monitoring tool |
US10296438B2 (en) | 2017-04-16 | 2019-05-21 | International Business Machines Corporation | Integrating synthetic performance measurements with continuous delivery pipelines |
US10248549B1 (en) * | 2017-11-02 | 2019-04-02 | Citrix Systems, Inc. | Systems and methods for detection of untested code execution |
US10606583B2 (en) | 2017-12-08 | 2020-03-31 | International Business Machines Corporation | Software change tracking and management |
US11237946B2 (en) * | 2018-05-03 | 2022-02-01 | Sap Se | Error finder tool |
US11182754B2 (en) * | 2018-08-28 | 2021-11-23 | Jpmorgan Chase Bank, N.A. | Methods for synthetic monitoring of systems |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050223366A1 (en) * | 2004-03-30 | 2005-10-06 | Tonic Solutions, Inc. | System and methods for transaction tracing |
CN1760830A (zh) * | 2004-10-14 | 2006-04-19 | 国际商业机器公司 | 编程生成合成事务以监视web应用的性能和可用性的方法和系统 |
US20060277439A1 (en) * | 2005-06-01 | 2006-12-07 | Microsoft Corporation | Code coverage test selection |
US20070266149A1 (en) * | 2006-05-11 | 2007-11-15 | Computer Associates Think, Inc. | Integrating traffic monitoring data and application runtime data |
US7506047B2 (en) * | 2001-03-30 | 2009-03-17 | Bmc Software, Inc. | Synthetic transaction monitor with replay capability |
CN101551836A (zh) * | 2008-04-03 | 2009-10-07 | 西门子(中国)有限公司 | 一种代码审计的方法及装置 |
CN101553769A (zh) * | 2005-10-11 | 2009-10-07 | 努雅公司 | 用于跟踪并监控计算机应用的系统和方法 |
US20100287541A1 (en) * | 2009-05-08 | 2010-11-11 | Computer Associates Think, Inc. | Instrumenting An Application With Flexible Tracers To Provide Correlation Data And Metrics |
US20100332473A1 (en) * | 2009-06-30 | 2010-12-30 | International Business Machines Corporation | Correlating queries issued by applications with their source lines and analyzing applications for problem determination and where used analysis |
US20110161395A1 (en) * | 2009-12-24 | 2011-06-30 | International Business Machines Corporation | Synthetic transaction monitoring and management of scripts |
CN102306120A (zh) * | 2010-07-21 | 2012-01-04 | 微软公司 | 测量web应用程序的实际最终用户性能和可用性 |
US20120174120A1 (en) * | 2010-12-30 | 2012-07-05 | Qwest Communications International Inc. | End-to-End Application Tracking Framework |
US20120222014A1 (en) * | 2011-02-28 | 2012-08-30 | Typemock Ltd. | Method and apparatus for detecting software bugs |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6907546B1 (en) | 2000-03-27 | 2005-06-14 | Accenture Llp | Language-driven interface for an automated testing framework |
-
2013
- 2013-09-30 EP EP13894855.9A patent/EP3053042A4/en not_active Withdrawn
- 2013-09-30 CN CN201380079620.2A patent/CN105637488A/zh active Pending
- 2013-09-30 US US14/905,313 patent/US10073755B2/en active Active
- 2013-09-30 WO PCT/US2013/062695 patent/WO2015047409A1/en active Application Filing
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7506047B2 (en) * | 2001-03-30 | 2009-03-17 | Bmc Software, Inc. | Synthetic transaction monitor with replay capability |
US20050223366A1 (en) * | 2004-03-30 | 2005-10-06 | Tonic Solutions, Inc. | System and methods for transaction tracing |
CN1760830A (zh) * | 2004-10-14 | 2006-04-19 | 国际商业机器公司 | 编程生成合成事务以监视web应用的性能和可用性的方法和系统 |
US20060277439A1 (en) * | 2005-06-01 | 2006-12-07 | Microsoft Corporation | Code coverage test selection |
CN101553769A (zh) * | 2005-10-11 | 2009-10-07 | 努雅公司 | 用于跟踪并监控计算机应用的系统和方法 |
US20070266149A1 (en) * | 2006-05-11 | 2007-11-15 | Computer Associates Think, Inc. | Integrating traffic monitoring data and application runtime data |
CN101551836A (zh) * | 2008-04-03 | 2009-10-07 | 西门子(中国)有限公司 | 一种代码审计的方法及装置 |
US20100287541A1 (en) * | 2009-05-08 | 2010-11-11 | Computer Associates Think, Inc. | Instrumenting An Application With Flexible Tracers To Provide Correlation Data And Metrics |
US20100332473A1 (en) * | 2009-06-30 | 2010-12-30 | International Business Machines Corporation | Correlating queries issued by applications with their source lines and analyzing applications for problem determination and where used analysis |
US20110161395A1 (en) * | 2009-12-24 | 2011-06-30 | International Business Machines Corporation | Synthetic transaction monitoring and management of scripts |
CN102306120A (zh) * | 2010-07-21 | 2012-01-04 | 微软公司 | 测量web应用程序的实际最终用户性能和可用性 |
US20120174120A1 (en) * | 2010-12-30 | 2012-07-05 | Qwest Communications International Inc. | End-to-End Application Tracking Framework |
US20120222014A1 (en) * | 2011-02-28 | 2012-08-30 | Typemock Ltd. | Method and apparatus for detecting software bugs |
Also Published As
Publication number | Publication date |
---|---|
EP3053042A1 (en) | 2016-08-10 |
WO2015047409A1 (en) | 2015-04-02 |
EP3053042A4 (en) | 2017-09-27 |
US20160210215A1 (en) | 2016-07-21 |
US10073755B2 (en) | 2018-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105637488A (zh) | 追踪源代码用于末端用户监控 | |
AU2014240239B2 (en) | Contextual graph matching based anomaly detection | |
US10135936B1 (en) | Systems and methods for web analytics testing and web development | |
CN109344170B (zh) | 流数据处理方法、系统、电子设备及可读存储介质 | |
US11258814B2 (en) | Methods and systems for using embedding from Natural Language Processing (NLP) for enhanced network analytics | |
CN102436376B (zh) | 用于分布式应用确认的模型检查 | |
US8812434B2 (en) | Data structure for efficiently identifying transactions | |
JP6160064B2 (ja) | 適用判定プログラム、障害検出装置および適用判定方法 | |
CN101088072A (zh) | 用于监视基于交易的系统的方法和系统 | |
Landauer et al. | A framework for cyber threat intelligence extraction from raw log data | |
CN108628748B (zh) | 自动化测试管理方法和自动化测试管理系统 | |
US10528456B2 (en) | Determining idle testing periods | |
CN107003931B (zh) | 将测试验证从测试执行分离 | |
US20200310952A1 (en) | Comparable user interface object identifications | |
CN114528457A (zh) | Web指纹检测方法及相关设备 | |
Yu et al. | TraceRank: Abnormal service localization with dis‐aggregated end‐to‐end tracing data in cloud native systems | |
US8554908B2 (en) | Device, method, and storage medium for detecting multiplexed relation of applications | |
US20210303435A1 (en) | Method, device, and computer program product for obtaining diagnostic information | |
CN115705190A (zh) | 依赖程度的确定方法及装置 | |
CN111125066B (zh) | 检测数据库审计设备功能的方法及装置 | |
US20170109670A1 (en) | Crowd-Based Patterns for Identifying Executions of Business Processes | |
US7653742B1 (en) | Defining and detecting network application business activities | |
CN111338609B (zh) | 信息获取方法、装置、存储介质及终端 | |
CN113934595A (zh) | 数据分析方法及系统、存储介质及电子终端 | |
CN112162954A (zh) | 用户操作日志生成、路径的定位方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20180608 Address after: American California Applicant after: Antite Software Co., Ltd. Address before: American Texas Applicant before: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP |
|
TA01 | Transfer of patent application right | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160601 |
|
WD01 | Invention patent application deemed withdrawn after publication |