Dynamic instrumentation of WSGI applications
AssigneeCisco Technology, Inc.
InventorsSanjay Nagaraj, Dan Koepke
Life of this patent
Estimating the term…
Abstract
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.
Claims18
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.
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.
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.
Dependencies are inferred from the claim text.