Skip to content

[ILM] New copy for rollover and small refactor for timeline#89422

Merged
jloleysens merged 11 commits intoelastic:masterfrom
jloleysens:ilm/rollover-updates-and-timeline-cleanup
Feb 1, 2021
Merged

[ILM] New copy for rollover and small refactor for timeline#89422
jloleysens merged 11 commits intoelastic:masterfrom
jloleysens:ilm/rollover-updates-and-timeline-cleanup

Conversation

@jloleysens
Copy link
Copy Markdown
Contributor

@jloleysens jloleysens commented Jan 27, 2021

Summary

  • Added copy to explain that rollover adds variation in how long data will be in the hot phase
  • Refactored Timeline component to be memoized
  • Factored out a small component in the Timeline component's file to it's own file (timeline_phase_text.tsx)
  • Refactored (renaming) functions in the absolute -> relative timing lib files - no logic changes and all test coverage still intact
  • Updated comments

Please note: copy in screenshots may be out-of-date.

Review

ES UI

  1. Start Kibana on basic license (yarn start)
  2. Go to ILM
  3. Open or create a new policy (assuming that rollover is on for the given policy, should be on for new policies)
  4. Expand the hot phase settings and check that the new rollover copy is visible
  5. Check that the timeline has an icon in the hot phase
  6. Check that the tooltip renders on hover
  7. Turn rollover off, the copy in settings should still be visible, the tooltip in the timeline should not be visible

Copy/Docs

New copy was added, specifically in

  • x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/i18n_texts.ts
  • x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/timeline/timeline.tsx

Design

@mdefazio I'd like to hear your thoughts on the approach of adding the tooltip in the timeline. Do you think this could work?

Screenshots

Added copy regarding rollover to settings

Screenshot 2021-01-29 at 13 52 41

Calling out rollover on timeline (only when it is active), tooltip closed

Screenshot 2021-01-27 at 15 23 59

Calling out rollover on timeline (only when it is active), tooltip open

Screenshot 2021-01-29 at 13 52 36

Checklist

@jloleysens jloleysens requested a review from a team as a code owner January 27, 2021 14:30
@jloleysens jloleysens added Feature:ILM release_note:skip Skip the PR/issue when compiling release notes Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more t// v7.12.0 v8.0.0 labels Jan 27, 2021
@elasticmachine
Copy link
Copy Markdown
Contributor

Pinging @elastic/es-ui (Team:Elasticsearch UI)

…updates-and-timeline-cleanup

* 'master' of github.com:elastic/kibana: (44 commits)
  [Discover] Add grid flyout jest test (elastic#89088)
  [Search Sessions] Improve session restoration back button (elastic#87635)
  [TSVB] Remove vis_type_timeseries_enhanced plugin (elastic#89274)
  [Security Solution] Init Osquery plugin (elastic#87109)
  [Fleet] Do not defined aliases inside datastream template (elastic#89512)
  skip flaky suite (elastic#86950)
  chore(NA): bazel machinery installation on kbn bootstrap (elastic#89469)
  [build/docker] Add support for centos ARM builds (elastic#84831)
  Convert default_watch.json to a JS object in order to avoid TS complaints (elastic#89488)
  [CI] Decrease number of Jest workers (elastic#89504)
  [Maps] remove maps_oss TS project (elastic#89502)
  Adds migration settings to Docker (elastic#89501)
  [Lens] Fix crash in transition from unique count to last value (elastic#88916)
  [kbn-es] Always use bundled JDK when starting Elasticsearch (elastic#89437)
  unskip getting_started/shakespeare test elasticsearch 64016 (elastic#89346)
  [Maps] migrate maps, maps_file_upload, and maps_legacy_licensing to TS projects (elastic#89439)
  skip flaky suite (elastic#89478)
  skip flaky suite (elastic#89476)
  skip flaky suite (elastic#89477)
  skip flaky suite (elastic#89475)
  ...

# Conflicts:
#	x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/components/phases/hot_phase/hot_phase.tsx
#	x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/lib/absolute_timing_to_relative_timing.ts
Copy link
Copy Markdown
Contributor

@mdefazio mdefazio left a comment

Choose a reason for hiding this comment

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

LGTM!

Copy link
Copy Markdown
Contributor

@yuliacech yuliacech left a comment

Choose a reason for hiding this comment

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

Hi @jloleysens , tested locally and everything looks good, thanks for adding this rollover warning!

Copy link
Copy Markdown
Contributor

@debadair debadair left a comment

Choose a reason for hiding this comment

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

Provided a couple suggestions to get around the awkwardness of "data age" and "variation to time".

'xpack.indexLifecycleMgmt.timeline.hotPhaseRolloverToolTipContent',
{
defaultMessage:
'Data age is only considered after rollover has occurred which adds variation to time in hot phase. See hot phase settings.',
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I think this could be clearer. It seems like you're trying to make two different points:

  1. The min_age for moving to the next phase is based on the elapsed time since rollover, not the absolute age of the data.
  2. The total time spent in the hot phase can vary depending on what triggers the rollover.

That's a lot to pack into a tooltip. :-) Maybe:

Suggested change
'Data age is only considered after rollover has occurred which adds variation to time in hot phase. See hot phase settings.',
'How long it takes to reach the rollover criteria in the hot phase can vary. Data moves to the next phase when the time since rollover reaches the minimum age.',

Comment on lines +18 to +19
'When rollover is active, data age is only considered after rollover has occurred which adds variation to time in hot phase.',
}
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I think I'd just re-use the previous suggestion, the qualifier isn't necessary.

Suggested change
'When rollover is active, data age is only considered after rollover has occurred which adds variation to time in hot phase.',
}
'How long it takes to reach the rollover criteria in the hot phase can vary.
Data moves to the next phase when the time since rollover reaches the minimum age.',
}

@jloleysens
Copy link
Copy Markdown
Contributor Author

@elasticmachine merge upstream

@jloleysens jloleysens mentioned this pull request Jan 29, 2021
4 tasks
@jloleysens jloleysens requested a review from a team as a code owner January 29, 2021 13:08
@jloleysens
Copy link
Copy Markdown
Contributor Author

Thanks for the reviews all!

@debadair I've implemented your suggestions, would you mind taking another look?

Copy link
Copy Markdown
Contributor

@debadair debadair left a comment

Choose a reason for hiding this comment

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

LGTM!

@jloleysens
Copy link
Copy Markdown
Contributor Author

@elasticmachine merge upstream

@kibanamachine
Copy link
Copy Markdown
Contributor

💚 Build Succeeded

Metrics [docs]

Module Count

Fewer modules leads to a faster build time

id before after diff
indexLifecycleManagement 170 173 +3

Async chunks

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

id before after diff
indexLifecycleManagement 225.5KB 228.1KB +2.7KB

History

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

@jloleysens jloleysens merged commit 61a51b5 into elastic:master Feb 1, 2021
@jloleysens jloleysens deleted the ilm/rollover-updates-and-timeline-cleanup branch February 1, 2021 10:14
jloleysens added a commit to jloleysens/kibana that referenced this pull request Feb 1, 2021
…89422)

* refactor timeline and relative ms calculation logic for easier use outside of edit_policy section

* further refactor, move child component to own file in timeline, and clean up public API for relative timing calculation

* added copy to call out variation in timing (slop) introduced by rollover

* use separate copy for timeline

* remove unused import

* fix unresolved merge

* implement copy feedback

* added component integration for showing/hiding hot phase icon on timeline

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
jloleysens added a commit that referenced this pull request Feb 1, 2021
…89840)

* refactor timeline and relative ms calculation logic for easier use outside of edit_policy section

* further refactor, move child component to own file in timeline, and clean up public API for relative timing calculation

* added copy to call out variation in timing (slop) introduced by rollover

* use separate copy for timeline

* remove unused import

* fix unresolved merge

* implement copy feedback

* added component integration for showing/hiding hot phase icon on timeline

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Feature:ILM release_note:skip Skip the PR/issue when compiling release notes Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more t// v7.12.0 v8.0.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants