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

[Lens] Add tour component to time filter when there is no data #58276

Closed
rayafratkina opened this issue Feb 21, 2020 · 10 comments · Fixed by #69147
Closed

[Lens] Add tour component to time filter when there is no data #58276

rayafratkina opened this issue Feb 21, 2020 · 10 comments · Fixed by #69147
Assignees
Labels
Feature:Lens Team:Visualizations Visualization editors, elastic-charts and infrastructure

Comments

@rayafratkina
Copy link
Contributor

rayafratkina commented Feb 21, 2020

Describe a specific use case for the feature:
When a new user tries Lens and there is no data in their index in the last 15 min (which is the default time filter), the empty state they see is very confusing.
They do not know that you can change the time filter, so it appears that Lens is broken.

Proposed solution:
Add an EuiTour component that tells the user that the time range should be expanded, as shown in this mock

Time range EuiTour

Other solutions that are not being proposed

  • Automatically expand time range to include some data
  • Sample more than 500 documents
@rayafratkina rayafratkina added discuss Team:Visualizations Visualization editors, elastic-charts and infrastructure Feature:Lens labels Feb 21, 2020
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-app (Team:KibanaApp)

@cchaos cchaos changed the title Lens: empty state is confusing to the user when all data is excluded by the time filter Lens: Field list empty state is confusing to the user when all data is excluded by the time filter Feb 21, 2020
@wylieconlon wylieconlon changed the title Lens: Field list empty state is confusing to the user when all data is excluded by the time filter Lens: Empty state is confusing to the user when all data is excluded by the time filter Feb 24, 2020
@rayafratkina
Copy link
Contributor Author

Not the same issue, but related: #58330

@AlonaNadler
Copy link

AlonaNadler commented Feb 25, 2020

Ideally, we should do find a way to automatically expand time range to include some data but I know it might be a complex thing to solve.

To me, it seems that creating a dedicated no data empty state leveraging design (@cchaos ). We can make sure users are not stuck in the empty screen and know what they should do. It should be a quick win that can solve this to most users.

@cchaos
Copy link
Contributor

cchaos commented Feb 27, 2020

@AlonaNadler And I have come up with an idea that I will mock up and should be able to initiate the implementation of. Part if it will also be changing the callout text #58737 which I should be able to handle as well.

@wylieconlon
Copy link
Contributor

This issue describes the problem well, but I don't think we decided on the solution. I've started a new issue proposing a specific solution: #67203

@cchaos
Copy link
Contributor

cchaos commented May 26, 2020

As mentioned in #67203 (comment)

I finally got around to creating a mock as to how we can accomplish pushing them towards the time filter using EuiTour. The implementation part might be a bit tricky being that the time picker is a global component and not specific to Lens.

Time range EuiTour

Figma proto

@wylieconlon
Copy link
Contributor

@cchaos I think this is a good proposal, so I'm going to rename this issue to focus on adding the tour component to the time picker when there is missing data.

@wylieconlon wylieconlon changed the title Lens: Empty state is confusing to the user when all data is excluded by the time filter [Lens] Add tour component to time filter when there is no data May 27, 2020
@timroes
Copy link
Contributor

timroes commented May 28, 2020

As of our planning: this tour popover should be implemented once inside the filter/query/timepicker bar and the app can trigger this, so we can reuse this across different applications (like visualize).

@flash1293
Copy link
Contributor

cc @elastic/kibana-app-arch To let you know as this will need to be implemented in the top nav component which is owned by you. Kibana app can work on this, but there will probably be some discussions around how the functionality should be provided.

@flash1293
Copy link
Contributor

To implement:

  • Use local storage to store "Don't show again" decision of the user
  • The query bar simply takes an additional object as prop which contains the props of the tour component. Lens manages when and hhow the popover will shown
  • Within Lens the datasource controls whether the tour component is shown. Probably introduce callback as part of datasource props which can be called to show the "no data" tour.
  • Look into whether we can improve state management while fixing this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature:Lens Team:Visualizations Visualization editors, elastic-charts and infrastructure
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants