Project

General

Profile

Bug #54133

mgr/dashboard: Contact Info should be visible only when Ident channel is checked

Added by Yaarit Hatuka about 2 years ago. Updated about 2 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Component - Telemetry
Target version:
-
% Done:

0%

Source:
Development
Tags:
Backport:
quincy, pacific, octopus
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

Description of problem

The telemetry Ident channel allows users to identify themselves, if they choose to.
The relevant fields for identification are Contact, Description, Organization.
These fields are being reported only if the user has opted-in to telemetry and turned on the Ident channel.

Currently (Step 1 of) the Dashboard wizard displays the Contact Information section, regardless of the Ident channel status, which is confusing to the user. It should be clear to the user that this information is being reported only if the Ident channel is enabled.

Environment

This is relevant to all versions of the Dashboard that have the telemetry wizard.

How reproducible

Steps:

  1. Start a vstart cluster
  2. Browse to the Telemetry Configuration page in the Dashboard
  3. See the Contact Information section

Actual results

Added a screenshot.

Expected results

  1. Contact Information section visibility should correspond to enabling / disabling the Ident channel:
    If the Ident channel box is not checked, this section should not be visible. If it is checked - the section should be visible.
  2. Also, the Organization field is missing (Dashboard displays only Contact and Description).

Additional info

telemetry_dashboard_wizard_contact_information.jpg View (326 KB) Yaarit Hatuka, 02/03/2022 06:47 PM


Related issues

Related to Dashboard - Bug #54120: mgr/dashboard: dashboard turns telemetry off when configuring report Resolved
Copied to Dashboard - Backport #54348: quincy: mgr/dashboard: Contact Info should be visible only when Ident channel is checked Resolved
Copied to Dashboard - Backport #54349: octopus: mgr/dashboard: Contact Info should be visible only when Ident channel is checked Resolved
Copied to Dashboard - Backport #54350: pacific: mgr/dashboard: Contact Info should be visible only when Ident channel is checked Resolved

History

#1 Updated by Laura Flores about 2 years ago

Was able to reproduce the "contact information" problem:
  1. Deploy a vstart cluster and open the Dashboard
  2. Navigate to the "Telemetry configuration" page (either by clicking Activate at the top of the page, or by clicking the gear in the upper right corner)
  3. Check the "Ident" channel checkbox ("contact information" fields should appear-- this is good, expected behavior)
  4. Click "Next"
  5. Click "Back"
  6. Refresh the page. At this point, the "Ident" checkbox should still be checked, but the "contact information" fields are not visible.
  7. Uncheck "Ident". Now, the "contact information" fields are visible, but these should only be visible when the "Ident" box is checked.

I believe this is happening because "showContactInfo" is initialized as "false" here https://github.com/ceph/ceph/blob/75c4960abf3b81ff7c6f36e816e1c6a29ceabc9e/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/telemetry/telemetry.component.ts#L45. This means that the "contact information" fields will be hidden on refresh no matter what the state of the "Ident" checkbox.

The "toggleIdent" function, which invokes hiding/exposing the "contact information" fields, is set to do the opposite of the "showContactInformation" boolean, which is always initialized to "false" upon loading the page or refreshing: https://github.com/ceph/ceph/blob/75c4960abf3b81ff7c6f36e816e1c6a29ceabc9e/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/telemetry/telemetry.component.ts#L196-L198. This should actually correspond with the "Ident" checkbox, because it may be checked upon refreshing the page.


As for the missing Organization field, I don't think there is one currently implemented: https://github.com/ceph/ceph/blob/75c4960abf3b81ff7c6f36e816e1c6a29ceabc9e/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/telemetry/telemetry.component.html#L158-L188

#2 Updated by Yaarit Hatuka about 2 years ago

Laura Flores wrote:

As for the missing Organization field, I don't think there is one currently implemented: https://github.com/ceph/ceph/blob/75c4960abf3b81ff7c6f36e816e1c6a29ceabc9e/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/telemetry/telemetry.component.html#L158-L188

Yes, it needs to be implemented

#3 Updated by Ernesto Puerta about 2 years ago

I have the feeling that the wizard was designed/implemented only for the from-scratch scenario in mind. Hence the displayed status is fixed (it doesn't depend or check what's the actual config). For now there are just 2 API endpoints:
  • One that enables/disables telemetry (no extra args)
  • One the reads the report generated (telemetry get_report_locked all)

The status of the channels should be read from a new API endpoint (and the form should behave accordingly).

#4 Updated by Yaarit Hatuka about 2 years ago

What is the "from-scratch scenario"? A fresh install?

When do you think we will have the new API ready?

It seems like a simple workaround until we have it makes sense, unless the new API implementation is available soon.

#5 Updated by Yaarit Hatuka about 2 years ago

  • Related to Bug #54120: mgr/dashboard: dashboard turns telemetry off when configuring report added

#6 Updated by Sarthak Gupta about 2 years ago

  • Assignee set to Sarthak Gupta

#7 Updated by Sarthak Gupta about 2 years ago

  • Status changed from New to In Progress
  • Pull request ID set to 44985

#8 Updated by Laura Flores about 2 years ago

  • Status changed from In Progress to Fix Under Review

#9 Updated by Laura Flores about 2 years ago

  • Status changed from Fix Under Review to Pending Backport

#10 Updated by Backport Bot about 2 years ago

  • Copied to Backport #54348: quincy: mgr/dashboard: Contact Info should be visible only when Ident channel is checked added

#11 Updated by Backport Bot about 2 years ago

  • Copied to Backport #54349: octopus: mgr/dashboard: Contact Info should be visible only when Ident channel is checked added

#12 Updated by Backport Bot about 2 years ago

  • Copied to Backport #54350: pacific: mgr/dashboard: Contact Info should be visible only when Ident channel is checked added

#13 Updated by Yaarit Hatuka about 2 years ago

  • Status changed from Pending Backport to Resolved

all backports are merged; resolving

Also available in: Atom PDF