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] Local filters: Add sidebar navigation containing local filters #34922

Closed
6 tasks
formgeist opened this issue Apr 11, 2019 · 7 comments · Fixed by #41588
Closed
6 tasks

[APM] Local filters: Add sidebar navigation containing local filters #34922

formgeist opened this issue Apr 11, 2019 · 7 comments · Fixed by #41588
Assignees
Labels
Team:APM All issues that need APM UI Team support v7.4.0

Comments

@formgeist
Copy link
Contributor

formgeist commented Apr 11, 2019

Summary

Original APM UI Dedicated filters Google Doc

We're introduced a dedicated global filter for service.environment in APM UI in a previous release. A global filter (like time and search) is considered to persist through all the views. Local filters are related to specific sections and/or views (like services, transactions and metrics). These filters can be considered as common ways to narrow down the results the user is looking at.

Motivation

  • The user wants to be able to get a clear overview of the commonly used and available filters to quickly narrow down their data in view.
  • Additionally we introduced a transaction type filter in 6.6 and we want to replace and expand on this type of local filter and add its own dedicated space and one that will be used for all views in the UI.

Solution

Add sidebar component that holds the local filters for all involved views. Each filter can invoke a popover filter which enables the user to search and select/deselect the options they choose for each filter. Some filters only contain single selection options (i.e. transaction type). The design document describes the filters and their selection options for Phase 1.

Technical implications

  • Local filters will not persist between pages. This is contrary to global filters which will be persisted.
  • Selecting a local filter will affect other local filters, and thus filter the values they suggest
  • Applying different filters, eg. host and pod will act as AND so only results containing both will be displayed
  • Selecting multiple values from the same filter will act as OR so will show results that match any of the selected values

Tasks

  • Add sidebar component to the general layout of each views.
  • Populate sidebar filters as per the design document for phase 1.
  • Clicking on a filter, invokes a filter popover with the available filter options for each filter per the dataset displayed.
  • The user can optionally search the available options within the popover.
  • Display the selected options below each filter section as EuiBadge with the option to remove.
  • If any filter option is selected in each of the filters, a global clear filters button will appear at the bottom of the filters block.

Design

Links

👉 Marvel prototype
👉 Codesandbox: Filter component style


Kapture 2019-07-12 at 8 59 40

03b Services - host filter (popover)

03 Transactions overview - Requests

05 Metrics

Responsive layout

01 Services - 575px view (open)

01 Services - 575px view (collapsed)

@formgeist formgeist added Team:APM All issues that need APM UI Team support v7.2.0 labels Apr 11, 2019
@elasticmachine
Copy link
Contributor

Pinging @elastic/apm-ui

@sorenlouv sorenlouv changed the title [APM] Filters (Phase 1): Add sidebar navigation containing local filters [APM] Filters (Phase 2): Add sidebar navigation containing local filters Apr 24, 2019
@formgeist
Copy link
Contributor Author

@elastic/apm-ui I've updated the description to contain the latest updated design proposal with the popover filter and description of its functionality.

@sorenlouv sorenlouv changed the title [APM] Filters (Phase 2): Add sidebar navigation containing local filters [APM] Local filters: Add sidebar navigation containing local filters May 9, 2019
@formgeist formgeist added v7.4.0 and removed v7.3.0 labels Jun 7, 2019
@formgeist
Copy link
Contributor Author

Due to engineering bandwidth, we're postponing this to the next release. I estimate a fairly large amount of implementation and testing needs to happen for this be feature-ready.

@formgeist
Copy link
Contributor Author

@elastic/apm-ui I've updated the description with updated screens, after we've gone through some design revisiting this week. Here's a short list of changes;

  • We've decided to move the sidebar to the right of the content. This was preferred especially on tall screens like the transaction detail view, where we'd otherwise see the content oddly centered because of the reserved space on the left.
  • Minor changes like not showing the already selected values in the popover, since having 4+ selected values would otherwise hide the unselected values.
  • Minor style changes

@formgeist
Copy link
Contributor Author

@dgieselaar I attempted to recreate the component in a Codesandbox, as I wasn't sure it was entirely clear which EUI components that it was made up of. Hopefully that can help at least in the styling.

@dgieselaar
Copy link
Member

Thanks Casper, super helpful 🙌

@formgeist
Copy link
Contributor Author

Also updated the description with the responsive layouts for smaller screens that I prepared. These are not must-haves, but at least shows the intent with how the filters should work on the smallest breakpoint.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Team:APM All issues that need APM UI Team support v7.4.0
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants