Graphical user interface (GUI) for representing instrumented and uninstrumented objects in a microservices-based architecture
US-11030068-B1 · Jun 8, 2021 · US
US11755446B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-11755446-B1 |
| Application number | US-202218076206-A |
| Country | US |
| Kind code | B1 |
| Filing date | Dec 6, 2022 |
| Priority date | Jan 24, 2020 |
| Publication date | Sep 12, 2023 |
| Grant date | Sep 12, 2023 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method of rendering a graphical user interface (GUI) comprising an application topology graph for a microservice architecture comprises generating a plurality of traces from a first plurality of spans generated by instrumented services in the architecture and generating generate a second plurality of spans for uninstrumented services using information extracted from the first plurality of spans. The method further comprises grouping the second plurality of spans with the plurality of traces. Subsequently, the method comprises traversing the traces and collecting a plurality of span pairs from the plurality of traces, wherein each pair of the span pairs is associated with a call between two services. The method also comprises aggregating information across the plurality of span pairs to reduce duplicative information associated with multiple occurrences of a same span pair from the plurality of span pairs. Finally, the method comprises rendering the application topology graph using the aggregated information.
Opening claim text (preview).
What is claimed is: 1. A method for rendering a graphical user interface (GUI) comprising an application topology graph for a client application, the method comprising: ingesting a plurality of spans associated with a trace; identifying leaf spans from the plurality of spans; and for each leaf span in the plurality of spans: determining, by applying rules to tags and associated values thereof of a respective leaf span, whether the respective leaf span is associated with a call to a corresponding uninstrumented service; responsive to determining that the respective leaf span is associated with the call to the corresponding uninstrumented service, composing a span for the corresponding uninstrumented service; and rendering, based on the span for the corresponding uninstrumented service, a node for the corresponding uninstrumented service in the application topology graph rendered in the GUI. 2. The method of claim 1 , wherein composing the span for the corresponding uninstrumented service further comprises inheriting one or more tags of the respective leaf span in the span for the corresponding uninstrumented service. 3. The method of claim 1 , wherein responsive to determining that the respective leaf span is associated with the call to the corresponding uninstrumented service further comprises creating a data object to keep track of the corresponding uninstrumented service. 4. The method of claim 1 , wherein the corresponding uninstrumented service is selected from a group consisting of: an originating uninstrumented service initiating the call to an instrumented service, an uninstrumented target service receiving the call from the instrumented service, and an uninstrumented intermediary service occurring between two instrumented services. 5. The method of claim 1 , further comprising: rendering a plurality of instrumented services associated with the client application, wherein each of the plurality of instrumented services is rendered with a different visual attribute as compared to uninstrumented services. 6. The method of claim 1 , further comprising: incorporating the span for the corresponding uninstrumented service in the trace. 7. The method of claim 1 , further comprising: rendering directional edges between nodes in the application topology graph, wherein a directional edge is indicative of a source service that initiated the call and a target service that received the call. 8. The method of claim 7 , wherein a display thickness of the directional edge is determined based on a number of calls made by the source service to the target service. 9. The method of claim 1 , wherein a display size of each node included in the application topology graph is determined by a first number of calls received by a service corresponding to the node and a second number of calls made by the service to other services. 10. A non-transitory computer-readable medium having computer-readable program code embodied therein for causing a computer system to perform a method of rendering a graphical user interface (GUI) comprising an application topology graph for a client application, the method comprising: ingesting a plurality of spans associated with a trace; identifying leaf spans from the plurality of spans; and for each leaf span in the plurality of spans: determining, by applying rules to tags and associated values thereof of a respective leaf span, whether the respective leaf span is associated with a call to a corresponding uninstrumented service; responsive to determining that the respective leaf span is associated with the call to the corresponding uninstrumented service, composing a span for the corresponding uninstrumented service; and rendering, based on the span for the corresponding uninstrumented service, a node for the corresponding uninstrumented service in the application topology graph rendered in the GUI. 11. The non-transitory computer-readable medium of claim 10 , wherein composing the span for the corresponding uninstrumented service further comprises inheriting one or more tags of the respective leaf span in the span for the corresponding uninstrumented service. 12. The non-transitory computer-readable medium of claim 10 , wherein responsive to determining that the respective leaf span is associated with the call to the corresponding uninstrumented service, the method further comprises creating a data object to keep track of the corresponding uninstrumented service. 13. The non-transitory computer-readable medium of claim 10 , wherein the corresponding uninstrumented service is selected from a group consisting of: an originating uninstrumented service initiating the call to an instrumented service, an uninstrumented target service receiving the call from the instrumented service, and an uninstrumented intermediary service occurring between two instrumented services. 14. The non-transitory computer-readable medium of claim 10 , the method further comprising: rendering a plurality of instrumented services associated with the client application, wherein each of the plurality of instrumented services is rendered with a different visual attribute as compared to uninstrumented services. 15. The non-transitory computer-readable medium of claim 10 , the method further comprising: rendering directional edges between nodes in the application topology graph, wherein a directional edge is indicative of a source service that initiated the call and a target service that received the call. 16. The non-transitory computer-readable medium of claim 15 , wherein a display thickness of the directional edge is determined based on a number of calls made by the source service to the target service. 17. The non-transitory computer-readable medium of claim 10 , wherein a display size of each node included in the application topology graph is determined by a first number of calls received by a service corresponding to the node and a second number of calls made by the service to other services. 18. A system for rendering a graphical user interface (GUI) comprising an application topology graph for a client application, the system comprising: a memory; and a processing device communicatively coupled with the memory and configured to: ingest a plurality of spans associated with a trace; identify leaf spans from the plurality of spans; and for each leaf span in the plurality of spans: determine, by applying rules to tags and associated values thereof of a respective leaf span, whether the respective leaf span is associated with a call to a corresponding uninstrumented service; responsive to determining that the respective leaf span is associated with the call to the corresponding uninstrumented service, compose a span for the corresponding uninstrumented service; and render, based on the span for the corresponding uninstrumented service, a node for the corresponding uninstrumented service in the application topology graph rendered in the GUI. 19. The system of claim 18 , wherein the processing device composes the span for the corresponding uninstrumented service by inheriting one or more tags of the respective leaf span in the span for the corresponding uninstrumented service. 20. The system of claim 18 , wherein the corresponding uninstrumented service is selected from a group consisting of: an originating uninstrumented service initiating the call to an instrumented service, an uninstrumented target service receiving the call from the instrumented service, and an uninstrumented intermediary service occu
Visualisation of programs or trace data · CPC title
where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems (multiprogramming arrangements G06F9/46; allocation of resources G06F9/50) · CPC title
Performance evaluation by tracing or monitoring · CPC title
Monitoring of software · CPC title
Alarm or error message display · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.