Project

General

Profile

Feature #26872

mgr/dashboard Add refresh interval to the dashboard landing page

Added by Paul Cuzner 7 months ago. Updated 7 days ago.

Status:
Need Review
Priority:
Normal
Assignee:
Category:
dashboard/usability
Target version:
Start date:
08/07/2018
Due date:
% Done:

0%

Source:
Tags:
dashboard, landing-page, low-hanging-fruit
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

The Dashboard landing page has a hard coded refresh interval of 5s. To allow user flexibility and potential reduce load is may be worthwhile to add a pulldown widget on the landing page to offer the admin different refresh cycles ; 5s,10s,15s, 30s for example.

dropdown.png View (2.46 KB) Dan Guo, 01/23/2019 11:16 AM

select.png View (16.2 KB) Dan Guo, 01/23/2019 11:16 AM

new.png View (67.5 KB) Dan Guo, 01/28/2019 10:24 AM


Related issues

Related to mgr - Feature #37622: mgr/dashboard: Tunable refresh interval New 12/12/2018

History

#1 Updated by Dan Guo about 1 month ago

Hi,
I have made two kinds of implementations for this feature.

Dropdown:

Select:

Attach are screenshots of my implementation, and I can't figure out which one is better. Or maybe someone can have a better solution.
I will very happy to hear from anyone.

#2 Updated by Lenz Grimmer 29 days ago

  • Category changed from dashboard/general to dashboard/usability
  • Tags changed from dashboard, landing-page to dashboard, landing-page, low-hanging-fruit

Hi Dan,

thanks a lot for looking into this!

Dan Guo wrote:

I have made two kinds of implementations for this feature.
Attach are screenshots of my implementation, and I can't figure out which one is better. Or maybe someone can have a better solution.
I will very happy to hear from anyone.

If it's just for the landing page, I'd be more in favor of using the selection (second option), as long as it's not increasing the required screen real estate (e.g. the landing page still fits on a HD screen).

#3 Updated by Laura Paduano 29 days ago

Lenz Grimmer wrote:

Hi Dan,

thanks a lot for looking into this!

Dan Guo wrote:

I have made two kinds of implementations for this feature.
Attach are screenshots of my implementation, and I can't figure out which one is better. Or maybe someone can have a better solution.
I will very happy to hear from anyone.

If it's just for the landing page, I'd be more in favor of using the selection (second option), as long as it's not increasing the required screen real estate (e.g. the landing page still fits on a HD screen).

Hi Dan, hi Lenz,
I'm also in favor of using the "refresh interval" dropdown within the landing page (second suggestion).

#4 Updated by Ricardo Marques 29 days ago

Lenz Grimmer wrote:

Hi Dan,

thanks a lot for looking into this!

Dan Guo wrote:

I have made two kinds of implementations for this feature.
Attach are screenshots of my implementation, and I can't figure out which one is better. Or maybe someone can have a better solution.
I will very happy to hear from anyone.

If it's just for the landing page, I'd be more in favor of using the selection (second option), as long as it's not increasing the required screen real estate (e.g. the landing page still fits on a HD screen).

I also prefer the second option, but isn't this the same interval used in the summary service (for instance, to refresh the running tasks list)? If no, +1 for the second option.

Also, note that after PR https://github.com/ceph/ceph/pull/25583 is merged, we have another hard-coded refresh interval for grafana here: https://github.com/ceph/ceph/pull/25583/files#diff-da72f1ab6b28cc09f4c431d96a1ca7b3R212

#5 Updated by Ju Lim 29 days ago

If refresh is only for the landing page, then the +1 on the second option and not the same interval used in the summary service which Ricardo mentioned above. If we go with second option, could we shorten the label to "Refresh" (vs. "Refresh interval").

#6 Updated by Dan Guo 25 days ago

Ricardo Marques wrote:

If it's just for the landing page, I'd be more in favor of using the selection (second option), as long as it's not increasing the required screen real estate (e.g. the landing page still fits on a HD screen).

I also prefer the second option, but isn't this the same interval used in the summary service (for instance, to refresh the running tasks list)? If no, +1 for the second option.

Also, note that after PR https://github.com/ceph/ceph/pull/25583 is merged, we have another hard-coded refresh interval for grafana here: https://github.com/ceph/ceph/pull/25583/files#diff-da72f1ab6b28cc09f4c431d96a1ca7b3R212

Hi,
After I investigated the mechanism of all the components(not only the dashboard landing page, but also some list table pages) that need a refresh interval, I think we should better provide the function of change the refresh interval as a service, and that is what I did. So, My implementation is creating a refresh-selector component that can store the new interval in 'localStorage' object variable, and creating a refresh-interval service with an interface that can return the refresh interval. If there is anyone component need to change interval, it just needs to import the service and use that interface. So, the summary service still has its own refresh interval without import the service.

That is mean, changing interval in the dashboard landing page, all components that use the refresh-interval service to instruct interval will be using new interval.

By the way, About the screen estate of the refresh interval selection, Pls see the new attach that is a whole screenshot of my ceph dashboard page, is it good for the requirements?

#7 Updated by Dan Guo 25 days ago

Ju Lim wrote:

If refresh is only for the landing page, then the +1 on the second option and not the same interval used in the summary service which Ricardo mentioned above. If we go with second option, could we shorten the label to "Refresh" (vs. "Refresh interval").

Thanks for reply,
I also change the 'Refresh interval' to 'Refresh', Pls see new attach.

#8 Updated by Ernesto Puerta 10 days ago

  • Related to Feature #37622: mgr/dashboard: Tunable refresh interval added

#9 Updated by Lenz Grimmer 10 days ago

Sorry for the late reply and thanks for updating your proposal. Looks good to me! What interval times will be selectable? I wonder if we should offer a range between 5s to 5mins? How about the following: 5s, 10s, 30s, 1min, 3min, 5min? Would you mind submitting a PR for this?

#11 Updated by Volker Theile 9 days ago

  • Pull request ID set to 26396

#12 Updated by Lenz Grimmer 7 days ago

  • Status changed from New to Need Review
  • Assignee set to Dan Guo

Also available in: Atom PDF