-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
[Infrastructure UI] Hosts: When linking to the individual host detail page, show breadcrumbs/back option #148956
Comments
Pinging @elastic/infra-monitoring-ui (Team:Infra Monitoring UI) |
@roshan-elastic FYI it would be great to add this in order to provide a better UX for the user when linking to the host detail page and back to the Hosts view. |
100% @formgeist . This is one of the pet hates we get in the feedback from users (I'm sure you new this before I did :) ). I'll start looking at the backlog for Hosts and perhaps set up a session to discuss what we'd like to put in there and how to prioritise. |
@roshan-elastic This is probably regarded as the short-term fix to eventually be able to provide the host details in a more contextual way wherever it may be needed. #120425 |
@formgeist - Completely agree with the goal of this ticket. Going to move this out of the backlog to 'no status' for now though as we need to think a bit about how this will work now that we're expanding asset views to be made available in more places in the UI:
For example, if someone accesses a full-screen asset detail view from outside of inventory or the hosts feature - we probably want to allow the user to access the a view of this asset in a place where they can see other assets like this (e.g. for the host detail view - we probably want to allow them to go through to the host feature but filtered by the current host) Note : Everything we develop in the UI is going to ensure the URL returns you to the previous view exactly as it was (so clicking 'back' is now as feasible option for users). Not perfect I know. I'll work with @kkurstak to think about how the new full-screen detail view should handle navigation like this more gracefully. |
Hi team, About navigation - As a way to strengthening the context of the user and providing him with even better navigation, I have also suggested in the new designs to include the change in the view on the left side navigation (this is a screenshot, as Figma is currently down): What do you think about this? It would be a "shortcut" - only the currently visible host would be shown (instead of all hosts which would be the most "proper" way to present this - but of course with sometimes thousands of hosts, we cannot be listing them all in the nav.). It is connected to this issue, thus posting the comment here. |
@kkurstak We have previously explored adding the selected asset (service, alert, etc.) in other places, but it never seemed to make sense since it's temporary. To elaborate on your suggestion; does the shortcut persist if the user clicks on e.g. Services in APM in side navigation? Is it replaced if the user selected any other host or visits another host from a link in APM? Does the temporal nature of hosts make sense that they're selected in this way, or should we look to "select" an alert or similar that is the starting point of the investigation and keep context for the user on this? Perhaps some new concepts to be explored. This proposal was mainly a low-effort way of introducing the same concept as in APM where the user can quickly navigate back to the list of hosts (with the previous query), as you might do in many other cases. Perhaps there are some other more integrated long-term solutions we can look at later on. Thoughts? |
How about a big 'back' button in Kibana? haha! |
I've learnt yesterday that we're not able to nest items in the current navigation anyway, so it won't work in any case :) Thank you @formgeist for elaborating - I've never intended here to overwrite the original idea, just to add to the discussion. I thought this would persist only while the user is active on the given host page. There's no way to show all hosts on the navigation, but this could be an additional indication of where am I, as a user, on the interface. The downside to it is that this information would be temporary and indeed it would make things more confusing - as you've kind of hinted. A history of "last visited" hosts would help, but that would require extra design work and probably an extra feature. Let's stick to the original plan. |
@formgeist / @kkurstak - love this. Prioritised this now as it nicely aligns with the below epic: Note for engineer, if we can do this before we update the host detail page as per the above epic - go ahead and pick it up. If it makes sense to wait, feel free to wait. |
We've replaced the old view. I've updated the ticket description to reflect the work that needs to be done for the new view. |
The current Node Details page breadcrumbs are fundamentally wrong The page's route is not a child route from And it help a lot if we think about adding the return button, because the breadcrumb won't reference neither node_details_return.movWe could even explore breadcrumbs like this: `Observability > Infrastructure > ${assetType} > ${assetId}` @roshan-elastic @formgeist @kkurstak @neptunian , wdyt?
I'd vote for either 2 or 3. |
@crespocarlos - this is brilliant. Clear options and obviously easy to understand with your video! I think the 'back' button really solves a lot of issues that the user is going to experience around navigation...assuming the user accesses an asset via either 'inventory' or 'hosts' it will easily get them back to where they went. The one question I have is around how this might work if they are linked directly to a host from somewhere else? Examples: a. the APM Infrastructure Tab (example) For (a), if the user is sent back to the previous page - I think that works really well. For (b), for some use cases perhaps the URL will know the previous page (based on whoever grabbed the URL and shared it)? What do I think?Long term, I'm thinking that (3) is the best option for the following reasons:
Short-term, I'm thinking that (3) would still work well (for sure for 'hosts' if we could link back to 'hosts' if you clicked on the 'hosts' in the breadcrumb) but when we start upgrading other asset types (e.g. containers) - I'm wondering whether it still makes sense to show 'containers' in the breadcrumb (even if it's un-clickable). The risk I think here is that if someone ends up on a 'container' page from the APM Infrastructure tab and they want to see all containers...they won't have any easy way to get to 'inventory' to see them all. @neptunian / @smith / @kkurstak what do you think? I feel like there's a trade-off in the short-term and I'd lean towards (3)... |
@roshan-elastic cool!
The user will return to the previous page, in your example, APM.
Tested that too. In this case, I won't show the return button, because there will be nothing in the History stack to return the user to. Basically, I first check whether there are items in the history, if there is, there return button will appear, otherwise, it will be hidden. The return button, therefore, only appear if user is navigating from and to the Host Detail page. The problem with returning to |
Ah I see @crespocarlos... OK, I've pulled some telemetry on this and it looks like 22% of users use the 'inventory' breadcrumb on the host detail page: last 30 days - 8.9 version data However, I'm willing to bet my house on that users are just trying to get back to where they just were and that the 'back' button would actually be fine (I'm trying to figure this out in FullStory but I don't think the pathing is powerful enough to answer this question). If I had to choose now, I'd go for #3 but I'll wait for Sandra/Nathan/Karolina to share their thoughts... |
@crespocarlos Are you saying that we would lose the Hosts state if we go from Hosts > Detail View > Click on Hosts breadcrumb link > Hosts? If coming from another app I would not expect state to be persisted but from within our own app, I would think we should be able to persist it. @roshan-elastic If, from a product perspective, we want to commit to every asset type having a breadcrumb to its asset listing type no matter how they got to this asset detail view, then 3 would make sense. But since it sounds like we might not have a host listing in the future and just an inventory listing (https://github.com/elastic/obs-infraobs-team/issues/989), perhaps it makes sense to just leave as is (1) with every asset type returning to the inventory, ideally persisting state. |
@neptunian it's possible through a new context provider. Given the alternative of using the back button, it removes a lot of complexity and keeps basically the same functionality. Just thinking of how we can achieve the same, without adding too much complexity. To do something like Alternative 1 means that now the breadcrumbs would look like When everything points to Inventory, then we would still have the case where the user could come from the Hosts View, unless we're planning to drop it at some point. Inventory state I think it's already stored in a context provider, returning to it wouldn't be a problem. |
I am starting to lean toward 2. Right now we have more than one way within our own app to navigate to a detail view. We currently have a Hosts view which may not exist in the future and will just be an Asset inventory. Since having "asset type" as part of the breadcrumb won't really reflect navigation, it's probably best to leave it off. We can rethink it later. |
Thanks for the thought process and input here @neptunian - let's go with your suggestion of (2) here! FYI @crespocarlos |
closes: #148956 ## Summary This PR adds a return button to the Node Details page, both old and new versions. When returning to the previous page, the page has to load with its previous state. **This doesn't work for the Inventory and Metrics UI.** The Return button will not show when: the URL is copied from the address bar and opened in a new tab/browser. Clicking on the a link to open the page in a new tab will show the return button. **Return to Host View** https://github.com/elastic/kibana/assets/2767137/06e218fc-5f35-4e67-a4f9-3f04b3f79dee **Return to Inventory UI** https://github.com/elastic/kibana/assets/2767137/906012ce-e5ca-49dd-a19b-2b3d16e9e4f6 _Returning state in Inventory UI doesn't work. There are 2 main problems: The hierarchy of the WaffleOptionContext in the page and the Saved View load, which overrides the URL state._ **Return to Metrics UI** https://github.com/elastic/kibana/assets/2767137/de2b19f4-c5e2-4368-8e00-b50ae9ba357b _Returning state in Metrics UI doesn't work because the Saved View overrides the URL state._ **Return to APM** https://github.com/elastic/kibana/assets/2767137/704ce2f0-17eb-4fa9-a791-f0cf9b29c43a **Return button remains after page refresh** https://github.com/elastic/kibana/assets/2767137/58600504-1863-4254-83ea-a2d488e2b38a **Here it's possible to see that the Inventory UI doesn't return to its previous state** ### How to test this PR. - Setup a new Kibana instance - Follow the steps from the video above --------- Co-authored-by: Kibana Machine <[email protected]>
Summary
Since we're utilizing the Inventory > Host detail page for showing the detail metrics breakdown for an individual host when clicked within the Hosts table, it would be good to have an option to go back to the Hosts view (that the user was previously on).
We need to implement the breadcrumb for the new Host Detail page. The old version looks like this:
Note that it always contains
Inventory
, even if the page was accessed from the Hosts View. Ideally, the breadcrumb should contain the actual page history.Solution
If we don't manage to get the breadcrumb reflecting the previous pages and have the direct previous page fixed as
Inventory
, theEuiPageHeader
supports a link option above the main page title as part of the page template. Link to docs. We can use this to provide an option back to Host for the user. We can also utilize this for any other links to the host detail page even from the Inventory, as it provides a clear option back. The link back will have to preserve the original URL and all its filter params.Note: if the Host Details Page is accessed directly via link sharing, the breadcrumb will have a fixed
Inventory
.✔️ Acceptance criteria
1. Must Have
Must be delivered in this issue in order for the release to be valuable
2. Should Have
3. Could Have
Would be nice to have but not critical
| Name | Description | Notes |
4. Will Not Have (for now)
Explicitly will not be looked at within this issue
The text was updated successfully, but these errors were encountered: