Project

General

Profile

Feature #45464

mgr/dashboard: telemetry module activation notification

Added by Tatjana Dehler almost 4 years ago. Updated almost 3 years ago.

Status:
Resolved
Priority:
Normal
Category:
General
Target version:
% Done:

0%

Source:
Tags:
Backport:
octopus
Reviewed:
Affected Versions:
Pull request ID:

Description

If the telemetry module is not sending data, the admin user should be notified and asked if he wants to enable it.

  1. How to notify?

    My idea would be to show a similar notification to the 'password-expiration' notification:

  2. Who to notify?

    The admin user should be notified only.

  3. When to notify?
    1. The admin user should be notified from his first log-in into the dashboard until
      • He closed the notification by clicking the 'x'.
        The information will be stored in the local storage. If the storage gets cleared or the dashboard is opened on another machine, the user will see the notification again.
      • The module is enabled by the current or another admin user.
    2. After a major Ceph update
      I'm not really sure if/how we can implement this, because of the following questions:
      • How can we determine if the current log-in is the first log-in into the dashboard after a major update
      • If the admin already closed the notification by clicking the 'x' and we do have an entry in the local storage of the browser

Additional questions:

  • How to visualize the notification if there is already an open 'password-expiration' notification? - Maybe:

Screenshot_2020-05-11_12-27-57.png View (47.2 KB) Tatjana Dehler, 05/11/2020 10:31 AM

Screenshot_2020-05-11_13-19-05.png View (47.2 KB) Tatjana Dehler, 05/11/2020 11:20 AM


Related issues

Related to Dashboard - Feature #43956: mgr/dashboard: Provide an better workflow to "opt in" to enabling the telemetry mgr plugin Resolved
Related to Dashboard - Bug #49580: mgr/dashboard: replace 'telemetry_notification_hidden' localStore to 1-year expiring cookie Fix Under Review
Copied to Dashboard - Backport #46205: octopus: mgr/dashboard: telemetry module activation notification Resolved

History

#1 Updated by Tatjana Dehler almost 4 years ago

  • Related to Feature #43956: mgr/dashboard: Provide an better workflow to "opt in" to enabling the telemetry mgr plugin added

#3 Updated by Lenz Grimmer almost 4 years ago

Tatjana Dehler wrote:

If the telemetry module is not sending data, the admin user should be notified and asked if he wants to enable it.

Would a simple "the telemetry module is currently disabled" or "is not submitting telemetry data" be a better description than "is not sending data"?
This sounds confusing to me.

  1. How to notify?

My idea would be to show a similar notification to the 'password-expiration' notification:

Looks good to me! This is non-intrusive, but easy to spot.

  1. Who to notify?

The admin user should be notified only.

So any user with the "admin" role?

  1. When to notify?
  1. The admin user should be notified from his first log-in into the dashboard until
  • He closed the notification by clicking the 'x'.

If they closed it, would it make sense to print a notification that reminds them of where to enable it, should they ever change their mind?

The information will be stored in the local storage. If the storage gets cleared or the dashboard is opened on another machine, the user will see the notification again.

Sounds good. I think it's fine to store this on the user's browser only (instead of the MON datastore).

  • The module is enabled by the current or another admin user.

Enabled or disabled? I would have assumed the latter.

  1. After a major Ceph update
    I'm not really sure if/how we can implement this, because of the following questions:
  • How can we determine if the current log-in is the first log-in into the dashboard after a major update
  • If the admin already closed the notification by clicking the 'x' and we do have an entry in the local storage of the browser

Not sure about what information can be stored in local storage here, but could we preserve the Ceph version that was active when the user closed the notification for comparison purposes?

Also, as far as I understand it, Ceph also disables the telemetry module, if the submitted data changes (to allow the user to opt-in again) - is there a way to query this circumstance, to be able to differentiate between "the user did not enable the module" vs. "Ceph disabled the module due to changes"?

Additional questions:

  • How to visualize the notification if there is already an open 'password-expiration' notification? - Maybe:

Stacking these two permanent notifications on top of each other is fine for me.

#4 Updated by Tatjana Dehler almost 4 years ago

Lenz Grimmer wrote:

Would a simple "the telemetry module is currently disabled" or "is not submitting telemetry data" be a better description than "is not sending data"?
This sounds confusing to me.

Yes, we can display "is not submitting telemetry data".
If I understand it correctly, it's not possible to disable the Telemetry module because it's one of the always-on modules. So there is only the status "is not sending data" left :)

Looks good to me! This is non-intrusive, but easy to spot.

Ack!

So any user with the "admin" role?

Yes, that was my idea.

If they closed it, would it make sense to print a notification that reminds them of where to enable it, should they ever change their mind?

Yes, of course we can add a notification about it. The only thing I'm wondering is how, e.g. a Toasty will disappear after a few seconds as well.

Sounds good. I think it's fine to store this on the user's browser only (instead of the MON datastore).

Ack!

  • The module is enabled by the current or another admin user.

Enabled or disabled? I would have assumed the latter.

No, I mean enabled. The notification should be shown until the module has been enabled for sending data.

Not sure about what information can be stored in local storage here, but could we preserve the Ceph version that was active when the user closed the notification for comparison purposes?

Yes, it should be possible to store the Ceph version in the local storage as well. That's indeed a good idea!

Also, as far as I understand it, Ceph also disables the telemetry module, if the submitted data changes (to allow the user to opt-in again) - is there a way to query this circumstance, to be able to differentiate between "the user did not enable the module" vs. "Ceph disabled the module due to changes"?

I need to investigate this and will get back later.

Stacking these two permanent notifications on top of each other is fine for me.

Ack!

Thanks a lot for your comments, Lenz!

#5 Updated by Tatjana Dehler almost 4 years ago

  • Status changed from New to In Progress
  • Assignee set to Tatjana Dehler

#6 Updated by Tatjana Dehler almost 4 years ago

  • Pull request ID set to 35292

#7 Updated by Lenz Grimmer almost 4 years ago

  • Tags set to usability, telemetry
  • Status changed from In Progress to Pending Backport
  • Target version set to v16.0.0
  • Backport set to octopus

#8 Updated by Tatjana Dehler almost 4 years ago

  • Copied to Backport #46205: octopus: mgr/dashboard: telemetry module activation notification added

#9 Updated by Lenz Grimmer over 3 years ago

  • Status changed from Pending Backport to Resolved

#10 Updated by Alfonso Martínez about 3 years ago

  • Related to Bug #49580: mgr/dashboard: replace 'telemetry_notification_hidden' localStore to 1-year expiring cookie added

#11 Updated by Ernesto Puerta almost 3 years ago

  • Project changed from mgr to Dashboard
  • Category changed from 132 to General

Also available in: Atom PDF