[ML] Change point detection: support for multiple metric and split fields#154237
[ML] Change point detection: support for multiple metric and split fields#154237darnautov merged 30 commits intoelastic:mainfrom
Conversation
|
@elasticmachine merge upstream |
…nts' into ml-151592-change-point-enhancements
|
Pinging @elastic/ml-ui (:ml) |
x-pack/plugins/aiops/public/components/change_point_detection/change_points_table.tsx
Show resolved
Hide resolved
|
@elasticmachine merge upstream |
|
|
||
| const onChange = useCallback( | ||
| (update: FieldConfig, index: number) => { | ||
| fieldConfigs.splice(index, 1, update); |
There was a problem hiding this comment.
Did we want to mutate fieldConfigs in place here? Considering we didn't for onAdd.
|
Latest code changes LGTM 🎉 |
walterra
left a comment
There was a problem hiding this comment.
Really like that update!
In the latest version I tested, the annotations didn't show up unfortunately. There's also this strange hovering effect where hovering in the dropdowns triggers hovering in non-related items:
One other thing I noticed is the loading behaviour: When changing the split field and there's some loading time, the empty prompt let's me think there are no results, just the very top left global loading indicator is running. After a while though the table with results appears. It would be great if we could show a loading skeleton or similar instead of the empty prompt.
| const defaultSorting = { | ||
| sort: { | ||
| field: 'p_value', | ||
| // Lower p_value indicates a bigger change point, hence the acs sorting |
| <EuiFlexGrid columns={resultPerPage.length >= 2 ? 2 : 1} responsive gutterSize={'m'}> | ||
| {resultPerPage.map((v) => { | ||
| return ( | ||
| <EuiFlexItem key={v.group?.value ?? 'single_metric'}> |
There was a problem hiding this comment.
With the update in this PR to be able to select items from different groups, I was able to hit a Warning: Encountered two children with the same key for this. For example, with the cloudwatch dataset I create this setup (NetworkIn/NetworkOut by region):
Then from both metrics I selected the same field/value (region:ap-northwest-1) which will trigger the error in the flyout
|
@walterra thanks for checking it!
Indeed, with my latest refactoring I accidentally changed the wrong property, fixed in a2da9d2
This behaviour comes from the
Updated: enhancements for the loading behaviour were added here |
|
@elasticmachine merge upstream |
💛 Build succeeded, but was flaky
Failed CI StepsTest Failures
Metrics [docs]Module Count
Async chunks
Unknown metric groupsESLint disabled line counts
Total ESLint disabled count
History
To update your PR or re-run it, just comment with: cc @darnautov |
peteharverson
left a comment
There was a problem hiding this comment.
LGTM. Great addition, and I like the new loading indicator!




Summary
Part of #151592
Checklist
There is one issue about the
aria-expandedattribute not being allowed for theEuiAccordionbutton element used as div, but it has to be fixed on the EUI side. See elastic/eui#6689.