The data that gives high quality insights into finding defects
Dynamic Call Graphs
The call graphs that have hidden meaning but recording is expensive
Dynamic Call Graphs are recorded at runtime per invocation and have abundant insights to find result of the transaction. The screen grab with 3 dynamic call graphs on a 2 dimensional plane with stack depth on vertical axis represents 3 invocations of an endpoint. Graphs 1 and 2 represent successful invocations and have followed similar execution flow. Graph 3 is a failed invocation which executed like successful invocations until the highlighted point and then started deviating suggesting that something went wrong, probably due to an exception. This clearly gives quality insights into finding defects but the only problem is dynamic call graphs are expensive to record.
High quality data with efficient recording for machine learning
Seagence records ExecutionPath for every invocation. An ExecutionPath is a skeleton representation of a dynamic call graph and is recorded very efficiently using Seagence’s advanced technology without loosing hidden meaning. The screen grab represents 3 ExecutionPaths of 3 invocations of an endpoint. The deviation in the failed invocation is clearly visible. With availability of high quality data in ExecutionPaths, Seagence then applies ML to find defects and their root cause in realtime. It is a known fact that high quality data provides high quality results using machine learning.
Complete visibility into exceptions and errors
Seagence records every exception and error (including caught, uncaught and swallowed) thrown by the application code, JDK libraries, third party libraries, and indexes. In case further investigation becomes necessary, you can easily find the problematic invocation or transaction on SeagenceWeb and find all exceptions and errors including context you need.