Dynamic instrumentation of WSGI applications

US9959195B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9959195-B2
Application numberUS-201514699784-A
CountryUS
Kind codeB2
Filing dateApr 29, 2015
Priority dateApr 29, 2015
Publication dateMay 1, 2018
Grant dateMay 1, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

An agent installed on application server having a WSGI web application dynamically instruments that web application. The agent may modify the application via instrumentation such that it can be monitored without specific details of the WSGI application framework. A configuration file may be modified upon detecting a call to the application configuration file through a gateway interface that receives the call. After modifying the configuration file, the modified configuration file is executed in response to the call. Additionally, for subsequent calls to that particular web application, the WSGI gateway will call the modified WSGI configuration file for execution instead of the original WSGI file.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for monitoring an application, comprising: detecting, by an agent on a server, a first call to a web service gateway interface (WSGI) application file from a gateway interface that receives the first call; accessing, by the agent, a configuration file associated with the WSGI application file; modifying, by the agent, the configuration file to include WSGI script for intercepting calls for the WSGI application file, wherein modifying the configuration file includes: generating a new application file, and the new application file includes an existing application file and additional code for monitoring execution of the WSGI application file; detecting, by the agent, a second call to the WSGI application file; and in response to detecting the second call, directing the second call to the modified configuration file and executing the modified configuration file. 2. The method of claim 1 , wherein modifying the configuration file includes instrumenting the configuration file. 3. The method of claim 1 , further comprising configuring the gateway interface to call the modified configuration file in response to detecting the second call. 4. The method of claim 1 , wherein the first call originates from a remote machine and is first received by the gateway interface. 5. The method of claim 1 , wherein the gateway interface is a web server gateway interface. 6. The method of claim 1 , wherein the WSGI script is created by the agent. 7. A non-transitory computer readable storage medium having embodied thereon a program, the program being executable by a processor to perform a method for monitoring an application, the method comprising: detecting a first call to a web service gateway interface (WSGI) application file from a gateway interface that receives the first call; accessing a configuration file associated with the WSGI application file; modifying the configuration file to include WSGI script for intercepting calls for the WSGI application file, wherein modifying the configuration file includes: generating a new application file, and the new application file includes an existing application file and additional code for monitoring execution of the WSGI application file; detecting a second call to the WSGI application file; and in response to detecting the second call, directing the second call to the modified configuration file and executing the modified configuration file. 8. The non-transitory computer readable storage medium of claim 7 , wherein modifying the configuration file includes instrumenting the configuration file. 9. The non-transitory computer readable storage medium of claim 7 , further comprising configuring the gateway interface to call the modified configuration file in response to detecting the second call. 10. The non-transitory computer readable storage medium of claim 7 , wherein the first call originates from a remote machine and is first received by the gateway interface. 11. The non-transitory computer readable storage medium of claim 7 , wherein the gateway interface is a web server gateway interface. 12. The non-transitory computer readable storage medium of claim 7 , wherein the WSGI script is created by the agent. 13. A system for monitoring applications, comprising: an application server including one or more processors and memory; and one or more modules stored in memory and executable by at least one of the one or more processors to detect a first call to a web service gateway interface (WSGI) application file from a gateway interface that receives the first call; access a configuration file associated with the WSGI application file; modify the configuration file to include WSGI script for intercepting calls for the WSGI application file, wherein modifying the configuration file includes: generating a new application file, and the new application file includes an existing application file and additional code for monitoring execution of the WSGI application file; detect a second call to the WSGI application file; and in response to detecting the second call, direct the second call to the modified configuration file and execute the modified configuration file. 14. The system of claim 13 , wherein modifying the configuration file includes instrumenting the configuration file. 15. The system of claim 13 , the one or more modules further executable to configure the gateway interface to call the modified configuration file in response to detecting the second call. 16. The system of claim 13 , wherein the first call originates from a remote machine and is first received by the gateway interface. 17. The system of claim 13 , wherein the gateway interface is a web server gateway interface. 18. The system of claim 13 , wherein the WSGI script is created by the agent.

Assignees

Inventors

Classifications

  • by instrumenting at runtime · CPC title

  • specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability · CPC title

  • Electricity · mapped topic

  • Electricity · mapped topic

  • in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9959195B2 cover?
An agent installed on application server having a WSGI web application dynamically instruments that web application. The agent may modify the application via instrumentation such that it can be monitored without specific details of the WSGI application framework. A configuration file may be modified upon detecting a call to the application configuration file through a gateway interface that rec…
Who is the assignee on this patent?
Appdynamics Llc, Cisco Tech Inc
What technology area does this patent fall under?
Primary CPC classification G06F11/3644. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 01 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).