Automatic and transparent application logging

US9459990B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9459990-B2
Application numberUS-201213431422-A
CountryUS
Kind codeB2
Filing dateMar 27, 2012
Priority dateMar 27, 2012
Publication dateOct 4, 2016
Grant dateOct 4, 2016

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.

Automatic application logging, in one aspect, may receive a directive for logging data associated with an application. One or more runtime objects of an instance of the application running on a processor may be modified according to the directive to collect the data. The data may be collected via the modified one or more runtime objects.

First claim

Opening claim text (preview).

We claim: 1. A method of automatic application logging, comprising: receiving a directive for logging data associated with an application; modifying one or more runtime objects of an instance of the application running on a hardware processor according to the directive to collect the data, wherein individual instances of the same application running on the hardware processor are enabled to switch logging on and off, the modifying further comprising replacing the one or more runtime objects with another one or more runtime objects from a loggable component library that interacts with a runtime control, said another one or more runtime objects operable to behave like the one or more runtime objects and operable to log the data and send log data to a logger at a requested granularity, the modifying further comprising changing runtime method bindings and changing details of the data logged associated with the one or more runtime objects at runtime; and collecting the data via the modified one or more runtime objects, the modified one or more runtime objects modified to log the data for the collecting, wherein a part of the data that are sent to a server over a network are adaptively specified by the server based on a quality of the network, power level and cost of the network, adjusting the one or more runtime objects specified by the server, and adjusting behavior of the instance of the application to improve the application performance, based on analyzing of the one or more runtime objects and the behavior of the instance of the application. 2. The method of claim 1 , wherein the directive includes specific identification of said one or more runtime objects from which to collect the data. 3. The method of claim 1 , wherein the directive includes types of data to collect and granularity level of the data to collect. 4. The method of claim 1 , wherein the directive is received from the server over a network. 5. The method of claim 1 , wherein the directive is received over the network during a runtime of the application. 6. The method of claim 1 , further including sending the collected data to the server. 7. The method of claim 6 , wherein the collected data is sent periodically at a defined interval. 8. The method of claim 7 , wherein the directive includes the defined interval. 9. A system for automatic application logging, comprising: a hardware processor operable to run an application, the hardware processor further operable to receive a directive for logging data associated with the application, the hardware processor further operable to modify one or more runtime objects of an instance of the application running on the hardware processor according to the directive to collect the data, wherein individual instances of the same application running on the hardware processor are enabled to switch logging on and off, the hardware processor operable to modify the one or more runtime objects by replacing the one or more runtime objects with another one or more runtime objects from a loggable component library that interacts with a runtime control, said another one or more runtime objects operable to behave like the one or more runtime objects and operable to log the data and send log data to a logger at a requested granularity, the hardware processor operable to change runtime method bindings and change details of the data logged associated with the one or more runtime objects at runtime, the hardware processor further operable to collect the data via the modified one or more runtime objects, the modified one or more runtime objects modified to log the data for collecting, wherein a part of the data that are sent to a server over a network are adaptively specified by the server based on a quality of the network, power level and cost of the network, adjusting the one or more runtime objects specified by the server, and adjusting behavior of the instance of the application to improve the application performance, based on analyzing of the one or more runtime objects and the behavior of the instance of the application. 10. The system of claim 9 , further including a loggable component library including one or more components implementing an interface and performing respective one or more functionalities of the one or more runtime objects, wherein the processor is operable to modify the one or more runtime objects by replacing the one or more runtime objects with said one or more library components. 11. The system of claim 9 , wherein the directive includes specific identification of said one or more runtime objects from which to collect the data. 12. The system of claim 9 , wherein the directive includes types of data to collect and granularity level of the data to collect. 13. The system of claim 9 , wherein the directive is received from the server over the network. 14. The system of claim 9 , wherein the directive is received over the network during a runtime of the application. 15. The system of claim 9 , further wherein the processor is further operable to send the collected data to the server. 16. The system of claim 15 , wherein the processor is further operable to send the collected data periodically at a defined interval. 17. The system of claim 16 , wherein the directive includes the defined interval. 18. A non-transitory computer readable storage medium storing a program of instructions executable by a machine to perform a method of automatic application logging, comprising: receiving a directive for logging data associated with an application; modifying one or more runtime objects of an instance of the application running on a hardware processor according to the directive to collect the data, wherein individual instances of the same application running on the hardware processor are enabled to switch logging on and off, the modifying further comprising replacing the one or more runtime objects with another one or more runtime objects from a loggable component library that interacts with a runtime control, said another one or more runtime objects operable to behave like the one or more runtime objects and operable to log the data and send log data to a logger at a requested granularity, the modifying further comprising changing runtime method bindings and changing details of the data logged associated with the one or more runtime objects at runtime; and collecting the data via the modified one or more runtime objects, the modified one or more runtime objects modified to log the data for the collecting, wherein a part of the data that are sent to a server over a network are adaptively specified by the server based on a quality of the network, power level and cost of the network, adjusting the one or more runtime objects specified by the server, and adjusting behavior of the instance of the application to improve the application performance, based on analyzing of the one or more runtime objects and the behavior of the instance of the application. 19. The non-transitory computer readable storage medium of claim 18 , wherein the directive includes specific identification of said one or more runtime objects from which to collect the data. 20. The non-transitory computer readable storage medium of claim 18 , wherein the directive includes types of data to collect and granularity level of the data to collect. 21. The non-transitory computer readable storage medium of claim 18 , wherein the directive is received from the server over the network. 22. The non-transitory computer read

Assignees

Inventors

Classifications

  • Monitoring of software · CPC title

  • Performance evaluation by tracing or monitoring · CPC title

  • by instrumenting at runtime · CPC title

  • Data logging (G06F11/14, G06F11/2205 take precedence) · 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 US9459990B2 cover?
Automatic application logging, in one aspect, may receive a directive for logging data associated with an application. One or more runtime objects of an instance of the application running on a processor may be modified according to the directive to collect the data. The data may be collected via the modified one or more runtime objects.
Who is the assignee on this patent?
Ligman Joseph W, Pistoia Marco, Ponzo John J, and 2 more
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 Oct 04 2016 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).