Project

General

Profile

Feature #44851

mgr/dashboard: report bugs/improvements/feedback

Added by Ernesto Puerta over 2 years ago. Updated 8 days ago.

Status:
Pending Backport
Priority:
Normal
Assignee:
Category:
General
Target version:
% Done:

100%

Source:
Community (dev)
Tags:
backport_processed
Backport:
pacific
Reviewed:
Affected Versions:
Pull request ID:

Description

Add UI support in dashboard for users to report bugs, improvements and general feedback:
  1. Cluster admin may get their Ceph Tracker API key and configure it in the dashboard (CLI, UI -> Cluster -> Mgr Modules -> Dashboard).
    • A Ceph Tracker account is needed (see open points).
  2. Help menu could include a "Report/Send feedback..." entry.
    • If no API key has been configured, a modal should point users to the Ceph Tracker account creation and explain the API key (or points to the Ceph Docs section describing this procedure).
  3. "Report/Send feedback..." modal should expose the minimal set of fields required to fill up a Ceph-Dashboard Tracker Issue (e.g.: summary, description, severity).
    • Everything else should be auto-filled: tracker type (issue -> bug, suggestion -> feature, ...), affected Ceph version, category (mapping current Dashboard page to existing Tracker categories).
    • Recent pop-up error notifications could/should? be attached to the report.
    • Optionally a screenshot can be taken or attachments can be added.
Open points:
  • Ceph Tracker accounts require (for the time being) to be individually approved to avoid past spamming episodes. By forcing Ceph-dashboard users to wait for their accounts to be manually approved could be tiresome. Is there any effective Captcha to allow automated creation?
  • Contextual "report issue/feedback"? (on mouse-over? right-click?)
  • Add Web Analytics support (would it require explicit approval?). Apart from the Google Analytics , there exist different 'Open Source' analytic frameworks (e.g.: http://www.openwebanalytics.com/, https://matomo.org/, ...).

Subtasks

Subtask #51153: mgr/dashboard: report issues demoClosed


Related issues

Copied to Dashboard - Backport #53920: pacific: mgr/dashboard: report bugs/improvements/feedback New

History

#1 Updated by Ernesto Puerta over 1 year ago

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

#2 Updated by Ernesto Puerta about 1 year ago

Fields display (5):
  • Bug or Feature (dropdown)
  • Project -> Component (Ernesto to provide a shortlist of components to display)
  • Severity: Critical, major, minor. (dropdown)
  • Subject (free-form text)
  • Description (free-form text)
  • Affected version (auto-guess from Ceph? Retrieve from Redmine API. Discard old versions: v0.*) (drop-down with an auto-guessed pre-selection)
  • Source [Internal]: "Dashboard Report" (ask DavidG)
First time a user wants to report an issue ("Welcome to Ceph", wizard-like):
  • Clicks on the report issue
  • If not API Key is registered, "please enter your Ceph Tracker API Key" (with a link to https://tracker.ceph.com/my/api_key).
  • "If not registered, please sign up in Ceph Tracker <url>"
  • API key will be validated before moving on
Key becomes invalid/obsolete/etc:
  • Detect API Key validity on Form loading
  • If not valid, redirect to the Wizard (informing "Registered API Key is no longer valid")
User wants to change API key for whatever reason (new username, etc):
  • Provide CLI command (e.g.: ceph dashboard set-ceph-tracker-api-key <new_key>)
Where to store the API Key:

Python Redmine: https://www.redmine.org/projects/redmine/wiki/Rest_api_with_python

#3 Updated by Ernesto Puerta about 1 year ago

Shreya, this is the feedback collected from your demo:

  • Josh: release shared public key to allow any user anonymously report issues.
    • Check with David about spamkillers.
  • Sage: extend the description field and, after creating the issue, display a link to the trackers.
  • Yaarit: Source to indentify users (CLI, Dashboard).
  • Sage: fill up 'Affected versions'.
  • Prepopulate description field with: 'expected behavior', 'actual behavior', 'steps to reproduce'
  • Nizam: "dashboard feedback create" vs. "create issue"
  • Ernesto: create new standalone mgr module (for users not running the Dashboard)?

#4 Updated by Ernesto Puerta about 1 year ago

  • Status changed from New to In Progress
  • Assignee set to Shreya Sharma

#5 Updated by Pere Díaz Bou about 1 year ago

Hey one more suggestion :P. What about when creating the issue from the cli you could have the option to open a template file, with your default editor, so you don't have to go the tracker url to complete the description. Basically, simulate something like the command `git commit` that opens `vim`, `nano` or whatever.

#6 Updated by Ernesto Puerta about 1 year ago

Top:
#. Docs
#. Blog post

#. Sage: extend the description field and, after creating the issue, display a link to the trackers.
#. Prepopulate description field with: 'expected behavior', 'actual behavior', 'steps to reproduce'
#. Nizam: "dashboard feedback create" vs. "create issue"
#. Ernesto: create new standalone mgr module (for users not running the Dashboard)?

Nice-to-have:
#. Pere: open a CLI editor for filling up the description (maybe with a template too).
#. Yaarit: Source to indentify users (CLI, Dashboard).
#. Sage: fill up 'Affected versions'.

#7 Updated by Alfonso Martínez 12 months ago

  • Pull request ID set to 42090

#8 Updated by Alfonso Martínez 12 months ago

  • Status changed from In Progress to Fix Under Review

#9 Updated by Yaarit Hatuka 8 months ago

If crash info is included - please fill the crash signature V1 field

#10 Updated by Ernesto Puerta 7 months ago

  • Status changed from Fix Under Review to Pending Backport
  • Backport set to pacific

We might tentatively try a backport to Pacific

#11 Updated by Backport Bot 7 months ago

  • Copied to Backport #53920: pacific: mgr/dashboard: report bugs/improvements/feedback added

#12 Updated by Backport Bot 8 days ago

  • Tags set to backport_processed

Also available in: Atom PDF