Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[APM] Service map UI implementation (Part 1 - without interactions) #44853

Closed
5 tasks
katrin-freihofner opened this issue Sep 5, 2019 · 4 comments · Fixed by #46497
Closed
5 tasks

[APM] Service map UI implementation (Part 1 - without interactions) #44853

katrin-freihofner opened this issue Sep 5, 2019 · 4 comments · Fixed by #46497
Assignees
Labels
design discuss roadmap Team:APM All issues that need APM UI Team support

Comments

@katrin-freihofner
Copy link
Contributor

katrin-freihofner commented Sep 5, 2019

There are two main use cases:

  1. As a user, I want to see which services are calling which other services.
  2. I want to find bottlenecks and discover their effects on other services.

We will only address the first use case in our initial implementation.

There are two kinds of service maps:

  • a global one, showing all services and their connections.
  • A service map from a specific selected service, showing it's connected services (one level up, max. 5? levels down)

Todos

  • Navigation: There are two entry points to the service map:
    • An additional tab on the service overview - next to Services, Traces...that is called Service Map which will show a service map with all services
    • An additional tab on the service detail page - next to Transactions, Errors...that is also called Service Map which will show a service map with only services connected to the currently selected one.
  • Bubbles indicating a Services (without any interaction for now). The services should be aligned in columns. Arrows are connecting the services and show calls (no interaction).
    To indicate the selected service the Bubble is colored turquoise.
  • Each service agent name is displayed as initials inside the bubble as shown in the screens. Here's the proposed initials list of our Elastic agent names;
    • RUM JS = Js
    • NodeJS = No
    • Go = Go
    • Java = Jv
    • .Net = .n
    • Python = Py
    • Ruby = Rb

Global Service Map
https://www.figma.com/file/0GMsSjBSDnilV8FrGZ9mBz/44853-Service-Map
Service map

Service-specific map

Selected service is top-level (not called by another service).
selected service level1

Selected service is on the second level (we show one level up, X levels down)
selected service level2

Selected service is on second to last level (we show one level up, and one level down)
selected service levelN

Selected service does not have any connections
selected service no connections

Related issue (zoom functionality): #44890
Meta issue: elastic/apm#137
POC: #42120

@katrin-freihofner katrin-freihofner changed the title [APM] Service map UI [APM] Service map UI implementation Sep 5, 2019
@katrin-freihofner katrin-freihofner added the Team:APM All issues that need APM UI Team support label Sep 5, 2019
@elasticmachine
Copy link
Contributor

Pinging @elastic/apm-ui

@katrin-freihofner
Copy link
Contributor Author

katrin-freihofner commented Sep 5, 2019

Open question:
How can services be differentiated (logos/icons for different types...)?
Could we use the avatar for the first iteration? https://elastic.github.io/eui/#/display/avatar
Screenshot 2019-09-05 at 15 55 43

@katrin-freihofner
Copy link
Contributor Author

katrin-freihofner commented Sep 5, 2019

The zoom functionality seems to belong to a separate issue - I will move it.
#44890

@katrin-freihofner katrin-freihofner changed the title [APM] Service map UI implementation [APM] Service map UI implementation (Part 1 - without interactions) Sep 6, 2019
@katrin-freihofner
Copy link
Contributor Author

In yesterday's design weekly we (@alvarolobato @roncohen @hbharding ) discussed the letters within the service bubbles and decided to use the technology instead of the service name. Therefore, I updated the prototype and the screenshots.

@smith smith self-assigned this Sep 23, 2019
smith added a commit to smith/kibana that referenced this issue Oct 7, 2019
Add service map tabs on the main APM screen and for individual services.

This is not yet hooked up to work with back-end data, so it always shows the same hard-coded graph.

This is experimental, so you must have x-pack.apm.serviceMapEnabled: true in your Kibana config for it to show up.

Also add "PSF" to the list of allowed licenses since a new dependency added uses this license (it's on the [green list](https://github.com/elastic/open-source/blob/master/elastic-product-policy.md#green-list).)

Fixes elastic#44890
Fixes elastic#44853
smith added a commit that referenced this issue Oct 8, 2019
Add service map tabs on the main APM screen and for individual services.

This is not yet hooked up to work with back-end data, so it always shows the same hard-coded graph.

This is experimental, so you must have x-pack.apm.serviceMapEnabled: true in your Kibana config for it to show up.

Also add "PSF" to the list of allowed licenses since a new dependency added uses this license (it's on the [green list](https://github.com/elastic/open-source/blob/master/elastic-product-policy.md#green-list).)

Fixes #44890
Fixes #44853
smith added a commit to smith/kibana that referenced this issue Oct 10, 2019
Add service map tabs on the main APM screen and for individual services.

This is not yet hooked up to work with back-end data, so it always shows the same hard-coded graph.

This is experimental, so you must have x-pack.apm.serviceMapEnabled: true in your Kibana config for it to show up.

Also add "PSF" to the list of allowed licenses since a new dependency added uses this license (it's on the [green list](https://github.com/elastic/open-source/blob/master/elastic-product-policy.md#green-list).)

Fixes elastic#44890
Fixes elastic#44853
smith added a commit that referenced this issue Oct 10, 2019
Add service map tabs on the main APM screen and for individual services.

This is not yet hooked up to work with back-end data, so it always shows the same hard-coded graph.

This is experimental, so you must have x-pack.apm.serviceMapEnabled: true in your Kibana config for it to show up.

Also add "PSF" to the list of allowed licenses since a new dependency added uses this license (it's on the [green list](https://github.com/elastic/open-source/blob/master/elastic-product-policy.md#green-list).)

Fixes #44890
Fixes #44853
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
design discuss roadmap Team:APM All issues that need APM UI Team support
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants