IP Library Granted Patent US 10,185,611
Granted Patent B2
US 10,185,611 · App. 15/231,738 · Granted Jan 22, 2019

System for monitoring and tracking application crashes occurring on different mobile devices

Inventors: Sean Hermany (Salt Lake City, UT); Paul Lappas (San Francisco, CA); Andrew Levy (San Francisco, CA); Robert Kwok (San Francisco, CA); Andrew Yousef (San Francisco, CA); Kevin Su (San Francisco, CA); Keith Dreibelbis (San Francisco, CA)
Assignee: VMW ARE, INC.
G06F11/0775G06F11/3476
View Patent ↗
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 10,185,611
App. No.
15/231,738
Granted
Jan 22, 2019
Kind
B2
Abstract

Some embodiments provide a system that allows application developers to track and monitor crashes that are occurring with their applications on various mobile devices. In some embodiments, crash logs are received from the mobile devices. Hash codes are generated based on the crash logs. A report to summarize the crash logs is generated based on the hash codes.

Claims (31)

1. A method comprising:

receiving, by a server device, a plurality of crash logs resulting from crashes at a plurality of different mobile devices, a crash log from the plurality of crash logs comprising a stack trace and a reason for a respective crash, the crash log being received from a mobile device transmitting the crash log to the server device in real-time;

generating, by the server device, a plurality of hash codes for the plurality of crash logs, wherein the reason for the respective crash and at least one line of the stack trace are input into a hash function to generate a hash code corresponding to the crash log; and

generating, by the server device, a user interface that reports a real-time summary of the plurality of crash logs based on the plurality of hash codes.

2. The method of claim 1 , wherein a method call resulted in the respective crash, and wherein a particular line of the stack trace refers to the method call.

3. The method of claim 2 , wherein the stack trace includes a predetermined number of lines, the predetermined number of lines comprising the particular line of the stack trace that refers to the method call.

4. The method of claim 1 , wherein the reason for the respective crash and every line of the stack trace are input into the hash function to generate the hash code.

5. The method of claim 1 , wherein the crash log further comprises an exception type, and wherein the reason for the respective crash, at least one line of the stack trace, and the exception type are input into the hash function to generate the hash code.

6. The method of claim 1 , wherein generating the user interface that reports the real-time summary comprises determining a total number of occurrences of a particular crash across the plurality of different mobile devices based on the plurality of hash codes.

7. A non-transitory machine readable medium storing a program comprising sets of instructions that, when executed by a set of processing units of a server device, cause the set of processing units to:

receive a plurality of crash logs resulting from crashes at a plurality of different mobile devices, a crash log from the plurality of crash logs comprising a stack trace and a reason for a respective crash, the crash log being received from a mobile device transmitting the crash log to the server device in real-time;

generate a plurality of hash codes for the plurality of crash logs, wherein the reason for the respective crash and at least one line of the stack trace are input into a hash function to generate a hash code corresponding to the crash log; and

generate a user interface that reports a real-time summary of the plurality of crash logs based on the plurality of hash codes.

8. The non-transitory machine readable medium of claim 7 , wherein a method call resulted in the respective crash, and wherein a particular line of the stack trace refers to the method call.

9. The non-transitory machine readable medium of claim 8 , wherein the stack trace includes a predetermined number of lines, the predetermined number of lines comprising the particular line of the stack trace that refers to the method call.

10. The non-transitory machine readable medium of claim 7 , wherein the crash log further comprises an exception type, and wherein the reason for the respective crash, at least one line of the stack trace, and the exception type are input into the hash function to generate the hash code.

11. The non-transitory machine readable medium of claim 7 , wherein the set of instructions further cause the set of processing units to determine a total number of occurrences of a particular crash across the plurality of different mobile devices based on the plurality of hash codes.

12. The non-transitory machine readable medium of claim 7 , wherein the set of instructions further cause the set of processing units to perform a translation of the crash log, wherein the translation de-obfuscates obfuscated code from at least one line of the stack trace.

13. A system, comprising:

a processing unit of a server device;

a memory comprising instructions executable by the processing unit, wherein the instructions cause the processing unit to:

receive a plurality of crash logs resulting from crashes at a plurality of different mobile devices, a crash log from the plurality of crash logs comprising a stack trace and a reason for a respective crash, the crash log being received from a mobile device transmitting the crash log to the server device in real-time;

generate a plurality of hash codes for the plurality of crash logs, wherein the reason for the respective crash and at least one line of the stack trace are input into a hash function to generate a hash code corresponding to the crash log; and

generate a user interface that reports a real-time summary of the plurality of crash logs based on the plurality of hash codes.

14. The system of claim 13 , wherein a method call resulted in the respective crash, and wherein a particular line of the stack trace refers to the method call.

15. The system of claim 14 , wherein the stack trace includes a predetermined number of lines, the predetermined number of lines comprising the particular line of the stack trace that refers to the method call.

16. The system of claim 13 , wherein the reason for the respective crash and every line of the stack trace are input into the hash function to generate the hash code.

17. The system of claim 13 , wherein the crash log further comprises an exception type, and wherein the reason for the respective crash, at least one line of the stack trace, and the exception type are input into the hash function to generate the hash code.

18. The system of claim 13 , wherein the instructions further cause the processing unit to determine a total number of occurrences of a particular crash across the plurality of different mobile devices based on the plurality of hash codes.

19. The system of claim 18 , wherein the instructions further cause the processing unit to determine a total number of users affected by the particular crash, and wherein the user interface reports the total number of occurrences of the particular crash, the total number of users affected by the particular crash, and a graphical representation of the occurrences of the particular crash.

20. The system of claim 13 , wherein the instructions further cause the processing unit to perform a translation of the crash log, wherein the translation de-obfuscates obfuscated code from at least one line of the stack trace, and wherein the user interface reports a de-obfuscated version of the stack trace.

Assignments (3)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: VMWARE LLC
To: OMNISSA, LLC
Reel/Frame 068327/0365 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2017
From: APTELIGENT, INC.
To: VMWARE, INC.
Reel/Frame 042481/0385 →
Continuity (3)
Continuation 14295283 · Jun 3, 2014
Provisional Application 62005951 · May 30, 2014
Related Publication 20160350170A1 · Dec 1, 2016