netdata-cloud icon indicating copy to clipboard operation
netdata-cloud copied to clipboard

[Feat]: Pin or star a section to always show it on top

Open shyamvalsan opened this issue 3 years ago • 25 comments

Problem

I am primarily using Netdata to monitor metrics from a particular collector, let's call it X.

Problem is that if I have enough metrics being collected and collectors enabled, I have to scroll down to even see the section I am interested in the TOC.

Out of sight is out of mind - and I don't want to have to extra "scroll" and "click" to see the stuff I consider most important while all of the other generic stuff Netdata collects is always on the screen (TOC) whether I want them there or not.

Description

Allow users to pin or star a section in the TOC so it shows up on top and is easily accessible

NOTE: for our demo space (https://app.netdata.cloud/spaces/netdata-demo) we need to have a predefined definition for the favourites, since we want specific section to be shown on top

  • on https://app.netdata.cloud/spaces/netdata-demo/rooms/postgresql/overview we want to have the fav. chartName=menu_postgres
  • on https://app.netdata.cloud/spaces/netdata-demo/rooms/redis/overview we want to have the fav. chartName=menu_redis

Importance

really want

Value proposition

  1. Allow Netdata to be used for specific use-cases rather than just as a general monitoring tool

Proposed implementation

For example, if I cared most about Postgres monitoring I would be able to click and star Postgres so it showed up on top for me.

image

Debatable if we should show starred sections above "System Overview" or after it.

For now this is FE only dependency, use browser's local storage and the settings are to be stored for the user at Space / War Room level.

shyamvalsan avatar Jul 28 '22 11:07 shyamvalsan

This was also discussed with @hugovalente-pm @ralphm @amalkov and @ktsaou. And we definitely need a way to either pin a section of interest to the top of the TOC or have an option to open it in a dedicated tab.

@christophidesp : Do you have any thoughts on this?

sashwathn avatar Jul 28 '22 11:07 sashwathn

just for cross-referencing, this had been previously discussed as Custom ordering on the table of contents netdata/product/issues/2329

this one had been pushed-back because:

  • we were going to tackle it in a different way by allowing users to easily create custom dashboards with dragging&dropping sections (for example) and they could then pin that custom dashboard as a tab - https://github.com/netdata/product/issues/2555
  • we didn't want to mess-up with the order of the TOC until we had reviewed the construction of it - https://github.com/netdata/netdata-cloud/issues/354

being these two yet unknown when they will be tackled, we can bring this for discussion

hugovalente-pm avatar Jul 28 '22 12:07 hugovalente-pm

Hopefully this one is a quick win.

shyamvalsan avatar Jul 29 '22 19:07 shyamvalsan

after chatting with @amalkov the approach should be, for now:

  • FE only dependency, use browser's local storage
  • Keep the settings stored for the user at Space / War Room level

updating ticket above

hugovalente-pm avatar Aug 01 '22 10:08 hugovalente-pm

@novykh could you take a look at this one to get a sense of the estimate to delivery this?

hugovalente-pm avatar Aug 01 '22 10:08 hugovalente-pm

So what we need is a star functionality:

  • Every starred section will be on top. Does it mean above the gauges (system overview)?
  • What's the order of the starred sections (the default priority of the charts?)
  • Starred sections will be working only for user on the same browser (since we will use localstorage for persistence)
  • What's happening when user stars postgres in overview? Is it starred on single node as well? Is it starred on overview pages of other rooms and spaces for this user?
  • Is this something we need for sections only or also for subsections?

novykh avatar Aug 01 '22 10:08 novykh

I can give my view, but would be interesting to get also @shyamvalsan 's and @sashwathn 's

Every starred section will be on top. Does it mean above the gauges (system overview)?

Would probably put on top of System Overview gauges, if user wanted those to be on top he could pin the System Overview section (this would mean bringing also the charts under that)

What's the order of the starred sections (the default priority of the charts?)

At a start would probably have the pinning sequence, I pin one chart and then another first one pinned is on top. Later user could probably re-arrange them with drag&drop

Starred sections will be working only for user on the same browser (since we will use localstorage for persistence)

Correct

What's happening when user stars postgres in overview? Is it starred on single node as well? Is it starred on overview pages of other rooms and spaces for this user?

If not too much effort added, would consider pin definitions for Overview different from Single Node views, since different Nodes can have different sets of charts/sections

Is this something we need for sections only or also for subsections?

For now would say just Sections

hugovalente-pm avatar Aug 01 '22 10:08 hugovalente-pm

So what we need is a star functionality:

  • Every starred section will be on top. Does it mean above the gauges (system overview)?

Good question. Personally I think the user should be able to see this above system overview if they so wish - the sections will eventually have their own summary dashboard (including gauges etc.) so it shouldn't look too dissimilar. That being said, I am OK if we can show starred sections underneath System Overview.

  • What's the order of the starred sections (the default priority of the charts?)

Did not consider priority ordering, expectation is that user will have some but not too many starred sections. Wonder if we should initially have some sort of limit (5?) for starred sections. But for now maybe persist existing ordering of pinning. Eventually drag drop would be great.

  • Starred sections will be working only for user on the same browser (since we will use localstorage for persistence)

For now, yes.

  • What's happening when user stars postgres in overview? Is it starred on single node as well? Is it starred on overview pages of other rooms and spaces for this user?

I would limit it to Overview page for now. But should work across the space imo. And limit the ability to star to admins.

  • Is this something we need for sections only or also for subsections?

Only sections.

shyamvalsan avatar Aug 01 '22 11:08 shyamvalsan

I would limit it to Overview page for now. But should work across the space imo. And limit the ability to star to admins.

@shyamvalsan why is this? Since it's a user setting and viewed/starred only by the same user is it really necessary to limit the functionality to admins only?

novykh avatar Aug 01 '22 11:08 novykh

Hmm, I think you are right @novykh That brings up the other question that this will need to be done by each user individually and can't be done via a space wide setting by admin.

So options are:

  • User specific, available to all users: across space
  • User specific, available to all users: per room

If they have use-case specific rooms then per room might make sense. For example we have a Postgres specific room in the test space where Ilya is adding metrics at the moment.

Thoughts @hugovalente-pm @sashwathn @cakrit ?

shyamvalsan avatar Aug 01 '22 11:08 shyamvalsan

I had shared this previously https://github.com/netdata/netdata-cloud/issues/527#issuecomment-1200988458 to not overcomplicate, so having this User specific, available to all users: per room

for scenarios were there are use-case specific rooms and we want to have a custom default display on it I think we would need to go a different way, probably once we get back to the https://github.com/netdata/product/issues/2555 and users can define what will be their and/or the Room specific home screen

hugovalente-pm avatar Aug 01 '22 11:08 hugovalente-pm

@novykh / @shyamvalsan : Comments from me below:

  • Every starred section will be on top. Does it mean above the gauges (system overview)?

This is subjective but in my opinion if the user has starred a section specifically, it is the "most important" stuff and can show up above the System Overview section.

  • What's the order of the starred sections (the default priority of the charts?)

I think the order of the starred sections could be kept simple and in the order in which they are starred and we need not order them as per our default priorities.

  • Starred sections will be working only for user on the same browser (since we will use localstorage for persistence)

Yes, indeed this is an interim solution and is a good start.

  • What's happening when user stars postgres in overview? Is it starred on single node as well? Is it starred on overview pages of other rooms and spaces for this user?

In my opinion, the ordering is only valid for the specific room where the user has starred this section. To keep this feature as simple and light as possible we can limit its applicability to the "Overview" section only.

  • Is this something we need for sections only or also for subsections?

This option is only needed for sections. We need not touch the ordering of sub-sections within each section or pin individual subsections to the top of the TOC.

  • I had shared this previously #527 (comment) to not overcomplicate, so having this User specific, available to all users: per room

I agree with @hugovalente-pm and this option should be available for all users and is a user specific setting per room.

sashwathn avatar Aug 01 '22 11:08 sashwathn

@novykh are there any more questions or concerns regarding scope for this one? do you think this is something we could target in this short term?

shyamvalsan avatar Aug 21 '22 19:08 shyamvalsan

Sharing a video prototype showing the interactions for marking a section as favourite

https://user-images.githubusercontent.com/96468003/189076775-767ce715-d22e-49fa-842e-90eb594be783.mov

christophidesp avatar Sep 08 '22 08:09 christophidesp

as discussed with @sashwathn @shyamvalsan and @novykh this work as a special scenario that needs to be handled in a different way, for our demo space (https://app.netdata.cloud/spaces/netdata-demo) we need to have a predefined definition for the favourites, since we want specific section to be shown on top

for example:

  • on https://app.netdata.cloud/spaces/netdata-demo/rooms/postgresql/overview we want to have the fav. chartName=menu_postgres
  • on https://app.netdata.cloud/spaces/netdata-demo/rooms/redis/overview we want to have the fav. chartName=menu_redis

will add this to the ticket

for future iterations we will need to move the storing of these settings/configs from the browser local storage a BE Space/Room/User settings @netdata/cloud-be will open a ticket to start discussing this

hugovalente-pm avatar Sep 19 '22 08:09 hugovalente-pm

an update, an initial iteration of this has been delivered but only for the demo environments.

this ticket will go back to ideation since it was agreed to have the actual release of this when we have storage of the favourites on the BE. the main questions around this are:

  • Will the favourites be maintained at:
    • Space/Room level where all users with access to that will see the same favourites
    • User/Space/Room level each will have his set of favourites per Space/Room
  • Depending on the above, if the option is:
    • Space/Room level - only admins should be allowed to maintain the favourites.
    • User/Space/Room level - should there be a two-level approach, where some admin suggests some favourites and then the user can override and decide his own?

I personally think the favourites should be specific to the user but it would be nice to have "suggested" favourites defined for a Space/Room, this last bit would be a "nice to have" from my perspective

any thoughts @amalkov @novykh @papazach @ralphm @sashwathn @shyamvalsan?

hugovalente-pm avatar Sep 30 '22 14:09 hugovalente-pm

@hugovalente-pm From my perspective the favourites should always be a user specific customisation and may be we can have an additional capability for an admin user to set default favourites for all users - alterable by the users.

Suggestions on favourites per room / space can be a tricky thing especially since we do not have the services concept - but may be worth evaluating.

sashwathn avatar Sep 30 '22 15:09 sashwathn

I agree, in general, user specific only. War room level only for use cases scenario

amalkov avatar Oct 01 '22 15:10 amalkov

Admins should be able to set favorites at room and/or space level imo.

Also, how will we make users aware about this functionality once it exists. Expecting them to discover it on their own may not be the best strategy. Is there a gainsight engagement we could pair this with?

p.s: along the lines of what @hugovalente-pm was suggesting with "suggestions" it might be useful if on enabling a new collector the user is "asked" if they want to favorite it on TOC. But not something we need to worry atm.

shyamvalsan avatar Oct 01 '22 17:10 shyamvalsan

@hugovalente-pm @novykh what was the pending work to get this released to users?

shyamvalsan avatar Mar 01 '23 19:03 shyamvalsan

@shyamvalsan the pending work is the Cloud BE "storage" that needs to be made available so the FE can store this per Space / War Room / User level, I believe there was a recent discussion about this on slack

hugovalente-pm avatar Mar 06 '23 13:03 hugovalente-pm

Sharing an updated design for this one to be aligned with the new ToC https://www.figma.com/design/Du1UtbkU1uMRwEozaYq7b6/Favourite-Section?node-id=0-1&t=JWZxcv8YbptjCso1-1

https://github.com/netdata/netdata-cloud/assets/96468003/f7c628d3-cbbb-4a54-be5c-1df884266059

christophidesp avatar Jul 01 '24 10:07 christophidesp

@shyamvalsan have we decided the way that we want to store the information?

I guess we save per user/room. If we want to allow admins (or anyone else) to save per space, we need to show this option to the UI somehow.

kapantzak avatar Nov 05 '24 13:11 kapantzak

@kapantzak I think per user/room is good enough to start with but ideally we make it just like the chart settings

image

shyamvalsan avatar Nov 05 '24 13:11 shyamvalsan

Cool, let's do it like chart settings from the beginning

kapantzak avatar Nov 05 '24 13:11 kapantzak

This feature has been released

shyamvalsan avatar May 27 '25 19:05 shyamvalsan