会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 1. 发明授权
    • Two pass automated application instrumentation
    • 双程自动化应用仪器
    • US08938729B2
    • 2015-01-20
    • US12903102
    • 2010-10-12
    • David Brooke MartinMarco GagliardiMark Jacob Addleman
    • David Brooke MartinMarco GagliardiMark Jacob Addleman
    • G06F11/36G06F11/34
    • G06F11/3612G06F11/3466G06F11/3644
    • A two-pass technique for instrumenting an application is disclosed. One pass may be performed statically by analyzing the application and inserting probes while the application is not running. Another pass may be performed dynamically by analyzing data collected by the probes while the application runs to derive metrics for the probes. One or more metrics for each probe may be analyzed to determine whether to dynamically modify the probe. By dynamically modifying the probe, the application does not need to be shut down. Dynamically modifying the probe could include removing the probe from the application or moving the probe to another component (e.g., method) in the application, as examples. For example, the probe might be moved to a component that is either up or down the call graph from the component that the probe is presently in.
    • 公开了一种用于仪器应用的双程技术。 可以通过在应用程序未运行时分析应用程序和插入探针来静态执行一遍。 可以通过在应用程序运行时分析由探针收集的数据来导出探针的度量来动态执行另一遍。 可以分析每个探针的一个或多个度量以确定是否动态修改探针。 通过动态修改探测器,应用程序不需要关闭。 作为示例,动态修改探针可以包括从应用中去除探针或将探针移动到应用中的另一个组件(例如,方法)。 例如,探针可能被移动到从探头当前所在组件的调用图中向上或向下的组件。
    • 2. 发明申请
    • Classloader/Instrumentation Approach For Invoking Non-Bound Libraries
    • 用于调用非绑定库的类加载器/仪器方法
    • US20130152064A1
    • 2013-06-13
    • US13315917
    • 2011-12-09
    • Marco Gagliardi
    • Marco Gagliardi
    • G06F9/44
    • G06F9/44521
    • An agent object can invoke one or more methods of an application object using a helper object. The application object passes a reference to itself to the agent object. The agent object identifies a class loader of the application from the reference. The agent object obtains byte code of a helper class and uses the byte code of the helper class to creating a helper class loader. A parent of the helper class loader is set as the class loader of the application. The helper class loader is used to load the helper class and define an instance of the helper object. Using the helper object, the one or more methods of the application object are invoked by the agent using casting, without having a direct class loader connection with the class loader of the application.
    • 代理对象可以使用辅助对象调用应用程序对象的一个​​或多个方法。 应用程序对象将对自身的引用传递给代理对象。 代理对象从引用中标识应用程序的类加载器。 代理对象获得助手类的字节代码,并使用助手类的字节代码来创建一个助手类加载器。 辅助类加载器的父级设置为应用程序的类加载器。 辅助类加载器用于加载帮助器类并定义辅助对象的实例。 使用帮助对象,应用程序对象的一个​​或多个方法由代理使用转换调用,而不需要与应用程序的类加载器建立直接的类加载器连接。
    • 3. 发明申请
    • TWO PASS AUTOMATED APPLICATION INSTRUMENTATION
    • 两通自动应用仪表
    • US20120089966A1
    • 2012-04-12
    • US12903102
    • 2010-10-12
    • David Brooke MartinMarco GagliardiMark Jacob Addleman
    • David Brooke MartinMarco GagliardiMark Jacob Addleman
    • G06F9/44
    • G06F11/3612G06F11/3466G06F11/3644
    • A two-pass technique for instrumenting an application is disclosed. One pass may be performed statically by analyzing the application and inserting probes while the application is not running. Another pass may be performed dynamically by analyzing data collected by the probes while the application runs to derive metrics for the probes. One or more metrics for each probe may be analyzed to determine whether to dynamically modify the probe. By dynamically modifying the probe, the application does not need to be shut down. Dynamically modifying the probe could include removing the probe from the application or moving the probe to another component (e.g., method) in the application, as examples. For example, the probe might be moved to a component that is either up or down the call graph from the component that the probe is presently in.
    • 公开了一种用于仪器应用的双程技术。 可以通过在应用程序未运行时分析应用程序和插入探针来静态执行一遍。 可以通过在应用程序运行时分析由探针收集的数据来导出探针的度量来动态执行另一遍。 可以分析每个探针的一个或多个度量以确定是否动态修改探针。 通过动态修改探测器,应用程序不需要关闭。 作为示例,动态修改探针可以包括从应用中去除探针或将探针移动到应用中的另一个组件(例如,方法)。 例如,探针可能被移动到从探头当前所在组件的调用图中向上或向下的组件。
    • 4. 发明授权
    • Efficiently collecting transaction-separated metrics in a distributed enviroment
    • 在分布式环境中有效地收集交易分离指标
    • US08688729B2
    • 2014-04-01
    • US13211143
    • 2011-08-16
    • Marco GagliardiVladimir Umansky
    • Marco GagliardiVladimir Umansky
    • G06F17/30
    • G06F11/3612G06F11/3419G06F11/3495G06F2201/81G06F2201/865G06F2201/87G06F2201/875
    • Transaction-segregated metrics are obtained for component invocations of different transactions of an application. Corresponding tree data structures are maintained by an agent and a manager which describe sequences of invoked components of the different transactions. The start and end of each component are each represented by a node in each branch of the tree data structure. Each transaction is identified by matching a branch to a transaction trace. Gatherers are linked to one or more nodes to collect the transaction-segregated metrics. For example, metrics can be gathered separately for component invocations in different transactions. Metrics can also be gathered together for instances of different components in one or more transactions. A user interface includes a directed graph having vertices connected by edges. Edge portions are visually distinguished from one another based on the metrics of the gatherers. Each edge portion can be associated with one or more of the gatherers.
    • 获取用于应用程序的不同事务的组件调用的事务隔离度量。 相应的树数据结构由描述不同事务的被调用组件的序列的代理和管理器来维护。 每个组件的开始和结束都由树数据结构的每个分支中的一个节点表示。 通过将分支与事务跟踪进行匹配来标识每个事务。 收集者链接到一个或多个节点以收集交易分离的指标。 例如,可以针对不同事务中的组件调用单独收集度量。 也可以在一个或多个事务中收集不同组件的实例的度量标准。 用户界面包括具有通过边缘连接的顶点的有向图。 基于收集器的度量,边缘部分在视觉上彼此区分开。 每个边缘部分可以与一个或多个采集器相关联。
    • 5. 发明授权
    • Conditional dynamic instrumentation of software in a specified transaction context
    • 在指定的事务环境中对软件进行条件动态检测
    • US08473925B2
    • 2013-06-25
    • US12777490
    • 2010-05-11
    • Marco GagliardiYitao Sun
    • Marco GagliardiYitao Sun
    • G06F9/44G06F11/00
    • G06F11/3612G06F11/3644
    • Techniques for analyzing software in which un-instrumented components can be discovered and conditionally instrumented during a runtime of the software. Initially, software such as an application can be configured with a baseline set of instrumented components such as methods. As the application runs, performance data gathered from the instrumentation may indicate that the performance of some methods is below expectations. To analyze this, any methods which are callable from a method at issue are discovered, such as by inspecting the byte code of loaded classes in a JAVA Virtual Machine (JVM). To limit and focus the diagnosis, the instrumentation which is added to the discovered components can be conditional, so that the instrumentation is executed only in a specified context. The context can involve, e.g., a specified sequence of components in which a discovered component is called, and/or transaction data in which a discovered component is called.
    • 用于分析软件的技术,其中可以在软件的运行期间发现和有条件地检测未检测的组件。 最初,诸如应用程序的软件可以用诸如方法的仪表化组件的基准集来配置。 随着应用程序的运行,从仪器收集的性能数据可能表明某些方法的性能低于预期。 为了分析这一点,可以发现可以从所讨论的方法调用的任何方法,例如通过检查JAVA虚拟机(JVM)中加载的类的字节码。 为了限制和集中诊断,添加到发现的组件的仪器可以是有条件的,因此仪器仅在指定的上下文中执行。 上下文可以涉及例如其中调用发现的组件的指定的组件序列和/或其中发现的组件被调用的事务数据。
    • 6. 发明申请
    • CONDITIONAL DYNAMIC INSTRUMENTATION OF SOFTWARE IN A SPECIFIED TRANSACTION CONTEXT
    • 软件在规定的交易条件下的条件动态仪表
    • US20110283263A1
    • 2011-11-17
    • US12777490
    • 2010-05-11
    • Marco GagliardiYitao Sun
    • Marco GagliardiYitao Sun
    • G06F9/44
    • G06F11/3612G06F11/3644
    • Techniques for analyzing software in which un-instrumented components can be discovered and conditionally instrumented during a runtime of the software. Initially, software such as an application can be configured with a baseline set of instrumented components such as methods. As the application runs, performance data gathered from the instrumentation may indicate that the performance of some methods is below expectations. To analyze this, any methods which are callable from a method at issue are discovered, such as by inspecting the byte code of loaded classes in a JAVA Virtual Machine (JVM). To limit and focus the diagnosis, the instrumentation which is added to the discovered components can be conditional, so that the instrumentation is executed only in a specified context. The context can involve, e.g., a specified sequence of components in which a discovered component is called, and/or transaction data in which a discovered component is called.
    • 用于分析软件的技术,其中可以在软件的运行期间发现和有条件地检测未检测的组件。 最初,诸如应用程序的软件可以用诸如方法的仪表化组件的基准集来配置。 随着应用程序的运行,从仪器收集的性能数据可能表明某些方法的性能低于预期。 为了分析这一点,可以发现可以从所讨论的方法调用的任何方法,例如通过检查JAVA虚拟机(JVM)中加载的类的字节码。 为了限制和集中诊断,添加到发现的组件的仪器可以是有条件的,因此仪器仅在指定的上下文中执行。 上下文可以涉及例如其中调用发现的组件的指定的组件序列和/或其中发现的组件被调用的事务数据。
    • 9. 发明申请
    • RULE ORGANIZATION FOR EFFICIENT TRANSACTION PATTERN MATCHING
    • 有效交易模式匹配的规则组织
    • US20110258209A1
    • 2011-10-20
    • US12761148
    • 2010-04-15
    • Marco GagliardiNeil Desai
    • Marco GagliardiNeil Desai
    • G06F15/173G06F17/30
    • H04L67/22G06F11/3006G06F11/3072G06F17/30327G06F17/30377H04L41/0213H04L41/0816
    • Efficiently identifying transactions processed by a software application, such as a server application is disclosed. In one embodiment, transactions are identified by applying a set of rules to communications between a client and server to determine whether certain patterns are in the communications. For example, the rules may look for some combination of parameters in the transactions. As a particular example, the rules may be used to look for parameters in HTTP requests. The rules are organized in a way that allows efficient processing. For example, the rules may be organized based on the frequency with which the parameters are expected to occur in the transactions and the frequency with which each transaction is expected to occur. The rules may be updated if the expected frequencies deviate from actual frequencies, such that the rules can be organized for more efficient processing.
    • 公开了由诸如服务器应用程序的软件应用程序处理的有效识别交易。 在一个实施例中,通过将一组规则应用于客户端和服务器之间的通信来确定某些模式是否在通信中来识别事务。 例如,规则可以在事务中查找参数的一些组合。 作为特定示例,可以使用规则来查找HTTP请求中的参数。 规则的组织方式允许高效的处理。 例如,可以基于预期在事务中发生参数的频率以及期望每个事务发生的频率来组织规则。 如果预期频率偏离实际频率,则可以更新规则,使得可以组织规则以进行更有效的处理。