Patent ID: 7984129

Claim:
A method for high-performance profiling of application events comprising: registering, on a processor, a profiler as a provider to an event tracer, wherein the profiler executes on a management engine linked to the event tracer and an extensible instrumentation layer; identifying an application executing in a production environment, wherein the extensible instrumentation layer exposes information for profiling the application executing in the production environment; offloading one or more profiler functions associated with instrumenting the application executing in the production environment to the event tracer, wherein offloading the one or more profiler functions includes: capturing information associated with a plurality of events from the application, executing in the production environment using the profiler; adding one or more a function tokens to token with the captured information associated with the plurality of events in response to determining that the captured information satisfies one or more profile criteria; and communicating the captured information associated with the plurality of events and the one or more function tokens added to the captured information to the event tracer, wherein the event tracer stores the captured information and the one or more function tokens added to the captured information in an event tracing log; performing the one or more offloaded profiler functions using the management engine, wherein performing the one or more offloaded profiler functions includes: inserting one or more function names associated with the plurality of events into the event tracing log based on the one or more function tokens added to the captured information associated with the plurality of events; and correlating the captured information associated with the plurality of events in the event tracing log based on the one or more function names; comparing the captured information associated with the plurality of events to the one or more profile criteria; communicating the captured information associated with one or more of the plurality of events to a cache in response to determining that the captured information associated with the one or more events does not satisfy at least one of the profile criteria, wherein the management engine communicates the captured information associated with the one or more events not satisfying the profile criteria to the cache prior to performing the offloaded profile functions; and invoking the event tracer through an event tracer application program interface (API) using the captured information associated with the plurality of events, wherein the event tracer stores the captured information and the one or more added function tokens in the event tracing log in response to the management engine invoking the event tracer through the event tracer API.