littlemanco / the-golden-path.net

A template for writing a new tool or service.
0 stars 0 forks source link

Support #28

Open andrewhowdencom opened 4 years ago

andrewhowdencom commented 4 years ago

Support from within the app itself

This includes bug report.

Bug report should collect whatever relevant information there is; for example, sample of errors and so (maybe in a pool stored in memory in app? Unsure)

Smth like:

./app support contact --with-telemetry path/to/telemetry # Telemetry serialized to disk
./app support contact --with-telemetry                   # Telemetry in memory

./app support report-issue --with-telemetry              # Reporting an issue is a different flow
./app telemetry inspect path/to/telemetry                 # Inspects a telemetry blob

When the app crashes, can serialize telemetry to disk and then recommend users reach out to report bugs (or even allow them to trigger that bug report automatically).

Implies that the application should always have a set of telemetry in memory, ready to push — a pool (for example). Catch all panics, serialize content to disk, exit.

Whenever this is triggered, runs $EDITOR (need to figure out how to do this cross platform — see git) with a particular template, asks users to fill that out, and then sends that to server which returns a link to where the user can see the bug.


$ cr support

You can get in touch with our support teams by:

1. (Preferred) Submitting a request directly from the CLI using the sub-commands below
2. Submitting a request via:

- email: support@cr.de
- web: https://cr.de/support
- phone: +49 123 456 789

Usage:
  cr support [command]

Available Commands:
    contact
    report-issue

Flags:
  -h, --help                        help for cr support
  -t, --telemetry                 include telemetry at path/to/telemetry/file (default: memory) # Should be part of subcommand
  --no-telemetry                skip telemetry                                                            # ""      ""
  --message                      The content to include in the report (default: open editor) # Should be part of subcommand
andrewhowdencom commented 4 years ago

When app is restarted, detect crash dump from previous exit. (Discovered in O2 APP)