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] If no data is displayed, provide a better way to notify a user and get them to what they want #54181

Closed
bradquarry opened this issue Jan 7, 2020 · 12 comments
Labels
Feature:Lens feedback_needed Team:Visualizations Visualization editors, elastic-charts and infrastructure

Comments

@bradquarry
Copy link

Describe the feature:
Provide a more prominent notification around why no data is displayed in a LENS chart. Then, provide a way to visually select a time range within an index that actually has data of interest.

Describe a specific use case for the feature:
It seems like a usability miss that many users (including myself) will try to create their first LENS charts and get "No data" since Kibana defaults to the "last 15 minutes" in time picker. This is especially odd if you're not looking at things from a time-series perspective or initially know to look for a time filter in the UI. Also, even when using time picker how do you know you're looking at 'all the data'? You just end up selecting "last 15 years" as a catch-all.

An example in our UI that tries to address this is the "Use Full Dataset" button in our Single Metric ML UI. This might not be the best option for LENS given how large datasets can be.

One solution might be displaying an error in bold centered in the LENS chart area vs a small yellow box on the left with "Oops! There no data in the time range for the selected fields! Click here to select a time range with data!" And have a link to a pop-up modal that shows, using the currently selected fields, the whole index with counts of matches for the whole index over time. Something like the bar chart we have in discover.

Pointing users to the time picker directly probably isn't a solution because how do you know what range has data of interest if any? How do you know where the 'book ends' are?

@bradquarry bradquarry changed the title [Lens] Try to default to a time picker range that will display data vs. no data in LENS [Lens] If no data is displayed, provide a better way to notify a user and get them to what they want Jan 7, 2020
@bradquarry bradquarry changed the title [Lens] If no data is displayed, provide a better way to notify a user and get them to what they want [LENS] If no data is displayed, provide a better way to notify a user and get them to what they want Jan 7, 2020
@timroes timroes added the Team:Visualizations Visualization editors, elastic-charts and infrastructure label Jan 9, 2020
@elasticmachine
Copy link
Contributor

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

@kjakman
Copy link

kjakman commented Jan 21, 2020

Was about to file same request for Kibana in general (though Lens users can be expected to need more hand holding/know less)

Can't count how many time I've seen users confused about no data due to the last 15m default (including me + other consultants/trainers).

Suggestions:

  1. If >= N docs (lots of data): Make the default last 15m of actual data (15m before last document -> ts of last doc)
  2. If < N docs (less data): Use full dataset
  3. If < N docs, add button for "Use full dataset"
  4. Maybe add button for "last 15 min" (of actual dataset) if more than N docs?
  5. Maybe add a "last/newest" keyword or similar to timepicker:timeDefaults for time of most recent document ?
    {
    "from": "last-15m",
    "to": "last"
    }

@alexfrancoeur
Copy link

cc: @AlonaNadler @VijayDoshi

@AlonaNadler
Copy link

Thanks for the suggestion @kjkman we were discussing at one point a similar suggestion and that might be a good start. I agree to show empty Lens since the default date range is the last 15 minutes is repeating feedback and we should address it.
would be good to think of a solution that supports clusters that might have more than N documents but ingest data every X hours, for example, every 12 hours.

As a short term solution, we did plan on changing the text
#48800
"Looks like you don’t have any data. Try:

  • Extending the time range
  • Using Field filtered ↑ to show fields without data
    "

@wylieconlon the text issue was closed but this item was not checked, any chance we can make this small change in the text until we come up with a better solution

@wylieconlon
Copy link
Contributor

I've just re-read this thread, and I'm confused about whether we have proposed a specific solution. The text change you've suggested @AlonaNadler is now implemented.

If I understand correctly, @bradquarry was asking for a solution involving additional buttons in the chart renderer, screenshot shows multiple charts with empty data. We show this empty state in dashboards and the Lens editor:

Screenshot 2020-05-21 14 27 02

There is a separate issue with the list of fields which we show in the Lens editor, and I have proposed a solution to this problem specifically: #67203

Screenshot 2020-05-21 14 27 35

@AlonaNadler
Copy link

If I recall correctly, we had two things we wanted to do short term. Text changes (done), when there is no data to use the tour componenet to focus on the timepicker and suggest to change the time range. The latter didnt happen since the tour componenet wasn't ready. Perhaps we should do it now that it is ready? @cchaos

Some of the issues we got was also due the the bugs we had in 7.5 where fields with data were not showing up which I remeneber we solved.

@VijayDoshi
Copy link

It feels to me like there is a missing category from the time picker that would be generally useful. In addition to "Last" and "Next" add a "Most recent" or "Latest" and make that the default.

Are we dancing around that missing category?

@AlonaNadler
Copy link

We had a discussion around that. Showing time picker on time range that has data by default. At the time it felt like a bigger initiative so we looked for smaller tasks to solve this problem.
Im not sure we opened an issue for that I will check so we won't lose it

@cchaos
Copy link
Contributor

cchaos commented May 27, 2020

Also, this category does exist in the global time picker.

Screen Shot 2020-05-27 at 11 04 55 AM

@VijayDoshi
Copy link

I think that is a little different than what I'm saying.
Screen Shot 2020-05-27 at 11 48 42 AM

In the above Last 15 days = today - 15 days; whereas, Latest would be data from most recent document's timestamp - 15 days.

@alexfrancoeur
Copy link

alexfrancoeur commented May 27, 2020 via email

@wylieconlon
Copy link
Contributor

I think this discussion is great, but it's not focused on Lens: we are using the standard timepicker that all apps are using.

Instead, I think I am going to close this issue to focus on the solution that we have proposed of using an EuiTour component to indicate that the data is "empty" because of the time range: #58276

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

No branches or pull requests

9 participants