Deep learning based problem advisor

US10915435B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10915435-B2
Application numberUS-201816202877-A
CountryUS
Kind codeB2
Filing dateNov 28, 2018
Priority dateNov 28, 2018
Publication dateFeb 9, 2021
Grant dateFeb 9, 2021

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.

Methods and systems for a deep learning based problem advisor are disclosed. A method includes: obtaining, by a computing device, a log file including events generated during execution of a software application; determining, by the computing device, at least one possible cause for a problem in the software application using the obtained log file and a knowledge base including calling paths for each of a plurality of methods in source code of the software application; for each of the at least one possible cause for the problem, the computing device simulating user actions in the software application; and determining, by the computing device, a root cause based on the simulating user actions in the software application.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: obtaining, by a computing device, a log file including events generated during execution of a software application; determining, by the computing device, at least one possible cause for a problem in the software application using the obtained log file and a knowledge base including calling paths for each of a plurality of methods in source code of the software application; for each of the at least one possible cause for the problem, the computing device simulating user actions in the software application on different environments; determining, by the computing device, a root cause based on the simulating user actions in the software application; and in response to determining the root cause, the computing device automatically updating the source code of the software application using a verified source code fix for the problem, wherein the verified source code fix is included in the knowledge base and comprises updated source code. 2. The method according to claim 1 , wherein the root cause is one of the at least one possible cause and comprises a running path with a source code calling stack. 3. The method according to claim 1 , further comprising determining, by the computing device, a user scenario to reproduce the problem in the software application. 4. The method according to claim 3 , further comprising: outputting, by the computing device, the root cause and the user scenario to reproduce the problem in the software application; and receiving, by the computing device, feedback from a user on the root cause and the user scenario to reproduce the problem in the software application. 5. The method according to claim 4 , further comprising updating, by the computing device, the knowledge base using the received feedback from the user. 6. The method according to claim 1 , further comprising: receiving, by the computing device from a user, a log focus; and sorting, by the computing device, the obtained log file based on the log focus. 7. The method according to claim 1 , wherein the determining the at least one possible cause for the problem in the software application comprises performing static analysis on the obtained log file. 8. The method according to claim 1 , wherein dynamic analysis is performed in the simulating user actions in the software application. 9. The method according to claim 1 , further comprising: receiving, by the computing device, feedback comprising the updated source code; and determining, by the computing device, that the updated source code is the verified source code fix by re-running a problem path in the software application. 10. A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a computing device to cause the computing device to: create a directed graph including calling paths for each of a plurality of methods in source code of a software application; obtain a log file including events generated during execution of the software application; generate calling path ratings by performing static analysis on each of the calling paths for each of the plurality of methods in the source code of the software application; generate a knowledge base using the calling paths for each of the plurality of methods in the source code of the software application and the calling path ratings, obtain an updated log file; determine a root cause for a problem in the software application using the updated log file and the knowledge base; and in response to determining the root cause, automatically update the source code of the software application using a verified source code fix for the problem, wherein the verified source code fix is included in the knowledge base and comprises updated source code. 11. The computer program product according to claim 10 , the program instructions further being executable by the computing device to cause the computing device to: adjust the calling path ratings by performing dynamic analysis including simulating user actions in the software application; and update the knowledge base using the adjusted calling path ratings. 12. The computer program product according to claim 10 , the program instructions further being executable by the computing device to cause the computing device to: for each of at least one possible cause for the problem, simulate user actions in the software application; and determine the root cause from each of the at least one possible cause based on the simulated user actions in the software application. 13. The computer program product according to claim 12 , wherein the root cause is one of the at least one possible cause and comprises a running path with a source code calling stack. 14. The computer program product according to claim 12 , the program instructions further being executable by the computing device to cause the computing device to determine a user scenario to reproduce the problem in the software application. 15. The computer program product according to claim 14 , the program instructions further being executable by the computing device to cause the computing device to: output the root cause and the user scenario to reproduce the problem in the software application; and receive feedback from a user on the root cause and the user scenario to reproduce the problem in the software application. 16. The computer program product according to claim 15 , the program instructions further being executable by the computing device to cause the computing device to update the knowledge base using the received feedback from the user. 17. A system comprising: a hardware processor, a computer readable memory, and a computer readable storage medium associated with a computing device; program instructions to obtain a log file including events generated during execution of a software application; program instructions to determine at least one possible cause for a problem in the software application using the obtained log file and a knowledge base including calling paths for each of a plurality of methods in source code of the software application; program instructions to, for each of the at least one possible cause for the problem, simulate user actions in the software application on different environments; program instructions to determine a root cause from each of the at least one possible cause based on the simulating user actions in the software application; and in response to determining the root cause, automatically update the source code of the software application using a verified source code fix for the problem, wherein: the verified source code fix is included in the knowledge base and comprises updated source code, and the program instructions are stored on the computer readable storage medium for execution by the hardware processor via the computer readable memory. 18. The system according to claim 17 , wherein the root cause is one of the at least one possible cause and comprises a running path with a source code calling stack. 19. The system according to claim 17 , further comprising program instructions to determine a user scenario to reproduce the problem in the software application. 20. The system according to claim 19 , further comprising: program instructions to output the root cause and the user scenario to reproduce the problem in the software application; program instructions to receive feedback from a user on the root cause and th

Assignees

Inventors

Classifications

  • Environments for analysis, debugging or testing of software · CPC title

  • Dependency analysis; Data or control flow analysis · CPC title

  • for test execution, e.g. scheduling of test suites · CPC title

  • Knowledge engineering; Knowledge acquisition · CPC title

  • for test results analysis · 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 US10915435B2 cover?
Methods and systems for a deep learning based problem advisor are disclosed. A method includes: obtaining, by a computing device, a log file including events generated during execution of a software application; determining, by the computing device, at least one possible cause for a problem in the software application using the obtained log file and a knowledge base including calling paths for …
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F11/3688. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 09 2021 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 5 related publications on this page (citations in our corpus or others sharing the same primary CPC).