IP Library Patent Application 16384683
Patent Application
App. No. 16/384,683

SOFTWARE APPLICATION PERFORMANCE ANALYZER

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
16/384,683
Abstract

Embodiments of the present disclosure relate to software application performance analysis. Other embodiments may be described and/or claimed.

Claims (45)

1 . A system comprising:

a processor; and

memory coupled to the processor and storing instructions that, when executed by the processor, cause the system to perform operations comprising:

monitoring values of a performance metric for a software application, the performance metric including a processor metric for measuring central processing unit (CPU) usage;

identifying a value of the performance metric that is beyond a predetermined threshold;

in response to identifying the value of the performance metric that is beyond the predetermined threshold:

identifying a process of the software application associated with the value of the performance metric that is beyond the predetermined threshold;

identifying source code for the identified process;

generating a report comprising information regarding: the performance metric, the identified process, and the identified source code;

identifying a software developer of the source code based on meta data associated with the software application; and

transmitting the report to the software developer.

2 . The system of claim 1 , wherein the system monitors a respective plurality of values for each respective performance metric of a plurality of performance metrics.

3 . The system of claim 2 , wherein the plurality of performance metrics are monitored across threads of the software application executing in parallel.

4 . The system of claim 2 , wherein the plurality of values for each performance metric are buffered for a predetermined buffering time period.

5 . The system of claim 4 , wherein the buffered values are flushed after the predetermined buffering time period.

6 . The system of claim 1 , wherein monitoring the values of the performance metric is performed at a predetermined interval.

7 . The system of claim 1 , wherein monitoring the values of the performance metric is performed in response to an event.

8 . The system of claim 1 , wherein the memory further stores instructions for causing the system to perform operations comprising: determining configuration settings at a predetermined interval.

9 . The system of claim 1 , wherein the configuration settings include one or more of: a duty cycle time, an event buffer flush interval, a configuration poll interval, and a task associated with the monitored performance metric.

10 . The system of claim 1 , wherein the performance metric further includes one or more of: a memory metric, a networking metric, a hardware metric, or a software metric.

11 - 12 . (canceled)

13 . The system of claim 1 , wherein the information regarding the identified source code includes information on one or more process threads associated with the software application.

14 . The system of claim 1 , wherein the memory further stores instructions for causing the system to perform operations comprising: publishing the report to a software service.

15 . The system of claim 1 , wherein the software service is: an issue tracking service, a code ownership service, a runtime profiling store, or an incident response platform.

16 . The system of claim 15 , wherein the software service is an issue tracking service that generates an entry in an issue tracking system in response to receiving the report.

17 . A tangible, non-transitory computer-readable medium storing instructions that, when executed by a computer system, cause the computer system to perform operations comprising:

monitoring values of a performance metric for a software application, the performance metric including a processor metric for measuring central processing unit (CPU) usage;

identifying a value of the performance metric that is beyond a predetermined threshold;

in response to identifying the value of the performance metric that is beyond the predetermined threshold:

identifying a process of the software application associated with the value of the performance metric that is beyond the predetermined threshold;

identifying source code for the identified process;

generating a report comprising information regarding: the performance metric, the identified process, and the identified source code;

identifying a software developer of the source code based on meta data associated with the software application; and

transmitting the report to the software developer.

18 . The tangible, non-transitory computer-readable medium of claim 17 , wherein the computer system monitors a respective plurality of values for each respective performance metric of a plurality of performance metrics.

19 . A method comprising:

monitoring, by a computer system, values of a performance metric for a software application, the performance metric including a processor metric for measuring central processing unit (CPU) usage;

identifying, by the computer system, a value of the performance metric that is beyond a predetermined threshold;

in response to identifying the value of the performance metric that is beyond the predetermined threshold:

identifying, by the computer system, a process of the software application associated with the value of the performance metric that is beyond the predetermined threshold;

identifying, by the computer system, source code for the identified process;

generating, by the computer system, a report comprising information regarding: the performance metric, the identified process, and the identified source code;

identifying a software developer of the source code based on meta data associated with the software application; and

transmitting the report to the software developer.

20 . The method claim 19 , wherein the computer system monitors a respective plurality of values for each respective performance metric of a plurality of performance metrics.

Assignments (2)
CHANGE OF NAME Recorded Oct 30, 2023
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 065394/0169 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 14, 2019
From: TOAL, BRIAN; VENKA, LAKSH; TEYER, PAYMON; HOWDEN, PAUL; TUPPER, DEAN
To: SALESFORCE.COM, INC.
Reel/Frame 049177/0934 →