Skip to content

[Telemetry] Update notice message#158669

Merged
afharo merged 9 commits intoelastic:mainfrom
afharo:telemetry/update-notice-message
Jun 1, 2023
Merged

[Telemetry] Update notice message#158669
afharo merged 9 commits intoelastic:mainfrom
afharo:telemetry/update-notice-message

Conversation

@afharo
Copy link
Member

@afharo afharo commented May 30, 2023

Summary

This PR revisits the message shown in the opt-in/out status notices/disclaimers/banners in Kibana.

  1. It uses, when possible, the same component so we can hold the same message to be reused in the Welcome page and the notice banner.
  2. It merges the notice banners (we had 2 to mostly show the same info)
  3. It changes the text used in the Advanced Settings section to align with a similar narrative, as reviewed by @cdanderson98.
  4. It adds translated terms to the Advanced Settings search (related to [Telemetry] Telemetry Advanced settings section should use the regular UI registration API #56498)
  5. It removes usages of Usage data in favor of Usage collection (related to @gchaps' comment [DOCS] Telemetry settings: improve phrasing #158396 (comment))

How does it look?

Welcome page

When enabled (default):
image

When disabled:
image

Notice banner

When enabled (default):
image

When disabled:
image

Advanced settings

When enabled (default):
image

When disabled:
image

Before the first review

Welcome page

When enabled (default):
image

When disabled:
image

Notice banner

When enabled (default):
image

When disabled:
image

Advanced settings

When enabled (default):
image

When disabled:
image

Checklist

For maintainers

@afharo afharo added Team:Core Platform Core services: plugins, logging, config, saved objects, http, ES client, i18n, etc t// Feature:Telemetry release_note:skip Skip the PR/issue when compiling release notes backport:skip This PR does not require backporting labels May 30, 2023
@afharo afharo requested a review from cdanderson98 May 30, 2023 16:18
@afharo afharo self-assigned this May 30, 2023
@github-actions
Copy link
Contributor

Documentation preview:

@afharo afharo marked this pull request as ready for review May 30, 2023 21:42
@afharo afharo requested a review from a team as a code owner May 30, 2023 21:42
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-core (Team:Core)

@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-docs (Team:Docs)

@afharo afharo requested a review from a team May 30, 2023 21:43
@afharo
Copy link
Member Author

afharo commented Jun 1, 2023

@gchaps, thank you for your comments. I'll address them today and update the screenshots with the new content.

@afharo afharo requested a review from gchaps June 1, 2023 09:49
Copy link
Contributor

@jloleysens jloleysens left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work @afharo ! Did not test locally, but the test coverage looks great.


Thanks for adding the screenshots. WDYT about making the status of usage collection bold or italicised?

Screenshot 2023-06-01 at 11 44 12

optIn: null,
},
});
expect(telemetryService.config.userCanChangeSettings).toBe(true);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unrelated to this PR and non-blocker: is there a reason config is exposed on the telemetryService? Seems that the useCanChangeSettings is the same value just synced from config?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah... there is/was a bit of a nightmare config vs. satinized config (especially for the optIn value, where we differentiate the actual value and the expected behaviour, and both are used in different places)...

We def need to revisit this. I bet we can remove many of the public APIs in this service 😇.

telemetryService.getUserShouldSeeOptInNotice = getUserShouldSeeOptInNotice;
const telemetryNotifications = mockTelemetryNotifications({ telemetryService });
expect(telemetryNotifications.shouldShowOptedInNoticeBanner()).toBe(false);
telemetryNotifications['optInStatusNoticeBannerId'] = 'bruce-banner';
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

😄

jloleysens

This comment was marked as duplicate.

afharo and others added 3 commits June 1, 2023 12:08
…saved_objects_repository.ts

Co-authored-by: Jean-Louis Leysens <jloleysens@gmail.com>
…telemetry_notifications.test.ts

Co-authored-by: Jean-Louis Leysens <jloleysens@gmail.com>
@afharo
Copy link
Member Author

afharo commented Jun 1, 2023

Thanks for adding the screenshots. WDYT about making the status of usage collection bold or italicised?

@jloleysens, I went with italics because it serves the purpose of catching the eye when reading the message.
image
image

Bold felt like bringing attention from any place on the page (interrupting other onboarding flows).
image
image

Please, let me know if you prefer it bold.

@jloleysens
Copy link
Contributor

@afharo thanks for sharing that. It's a question that invites deep philosophical reflection and product thinking 😄

To help answer the question I would ask: how much attention do we want to draw to this? For me I'd want users to be maximally aware and so lean toward bold as this is a good way to draw attention to softer grey text that is already de-emphasised.

OTOH, we might also choose to leave it as is (regular weight, not italicised). But that is the product part of the question. Bolding that status might lead to more users opting-out.

@afharo
Copy link
Member Author

afharo commented Jun 1, 2023

@jloleysens I pinged @cdanderson98 (from legal) to let us know his thoughts. Also pinging @arisonl (PM) and @gchaps (docs) to complete the different POVs 😇

@afharo
Copy link
Member Author

afharo commented Jun 1, 2023

Probably, @elastic/kibana-design also has something to say here. WRT the discussion of highlighting the current status of telemetry (enabled/disabled) in bold, or italics, or none.

@kibana-ci
Copy link

💛 Build succeeded, but was flaky

Failed CI Steps

Test Failures

  • [job] [logs] FTR Configs #17 / spaces api without security _disable_legacy_url_aliases "before all" hook for "should return 204 for alias 'default:sharedtype:space_1_only'"

Metrics [docs]

Module Count

Fewer modules leads to a faster build time

id before after diff
telemetry 32 30 -2

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
telemetry 4.9KB 4.0KB -941.0B
telemetryManagementSection 10.3KB 10.6KB +322.0B
total -619.0B

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff
telemetry 19.7KB 18.9KB -795.0B
Unknown metric groups

async chunk count

id before after diff
telemetry 3 2 -1

ESLint disabled line counts

id before after diff
enterpriseSearch 19 21 +2
securitySolution 415 419 +4
telemetry 1 3 +2
total +8

Total ESLint disabled count

id before after diff
enterpriseSearch 20 22 +2
securitySolution 499 503 +4
telemetry 6 8 +2
total +8

History

To update your PR or re-run it, just comment with:
@elasticmachine merge upstream

cc @afharo

@afharo
Copy link
Member Author

afharo commented Jun 1, 2023

I don't want to delay the important update that PR brings in terms of the text we show to our users, so I created the follow-up issue #158841 to discuss whether we prefer bold or italics 😇

@afharo afharo merged commit 312ba3a into elastic:main Jun 1, 2023
@afharo afharo deleted the telemetry/update-notice-message branch June 1, 2023 15:53
kibanamachine added a commit to kibanamachine/kibana that referenced this pull request Jun 1, 2023
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Jean-Louis Leysens <jloleysens@gmail.com>
(cherry picked from commit 312ba3a)
@kibanamachine
Copy link
Contributor

💚 All backports created successfully

Status Branch Result
8.8

Note: Successful backport PRs will be merged automatically after passing CI.

Questions ?

Please refer to the Backport tool documentation

kibanamachine added a commit that referenced this pull request Jun 1, 2023
# Backport

This will backport the following commits from `main` to `8.8`:
- [[Telemetry] Update notice message
(#158669)](#158669)

<!--- Backport version: 8.9.7 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)

<!--BACKPORT [{"author":{"name":"Alejandro Fernández
Haro","email":"alejandro.haro@elastic.co"},"sourceCommit":{"committedDate":"2023-06-01T15:53:02Z","message":"[Telemetry]
Update notice message (#158669)\n\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>\r\nCo-authored-by:
Jean-Louis Leysens
<jloleysens@gmail.com>","sha":"312ba3a758a05cea2d490a5174838cd84ac2cc8d","branchLabelMapping":{"^v8.9.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Docs","Team:Core","Feature:Telemetry","release_note:skip","backport:prev-minor","v8.9.0"],"number":158669,"url":"https://github.com/elastic/kibana/pull/158669","mergeCommit":{"message":"[Telemetry]
Update notice message (#158669)\n\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>\r\nCo-authored-by:
Jean-Louis Leysens
<jloleysens@gmail.com>","sha":"312ba3a758a05cea2d490a5174838cd84ac2cc8d"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v8.9.0","labelRegex":"^v8.9.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/158669","number":158669,"mergeCommit":{"message":"[Telemetry]
Update notice message (#158669)\n\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>\r\nCo-authored-by:
Jean-Louis Leysens
<jloleysens@gmail.com>","sha":"312ba3a758a05cea2d490a5174838cd84ac2cc8d"}}]}]
BACKPORT-->

Co-authored-by: Alejandro Fernández Haro <alejandro.haro@elastic.co>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Feature:Telemetry release_note:skip Skip the PR/issue when compiling release notes Team:Core Platform Core services: plugins, logging, config, saved objects, http, ES client, i18n, etc t// Team:Docs v8.8.1 v8.9.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants