New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Exploratory View] Multi Series View #103855
Conversation
16a573f
to
e6fef07
Compare
Pinging @elastic/uptime (Team:uptime) |
Pinging @elastic/apm-ui (Team:apm) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work!
...k/plugins/observability/public/components/shared/exploratory_view/components/action_menu.tsx
Outdated
Show resolved
Hide resolved
...s/observability/public/components/shared/exploratory_view/components/series_color_picker.tsx
Outdated
Show resolved
Hide resolved
...s/observability/public/components/shared/exploratory_view/components/series_color_picker.tsx
Outdated
Show resolved
Hide resolved
...ns/observability/public/components/shared/exploratory_view/configurations/lens_attributes.ts
Outdated
Show resolved
Hide resolved
x-pack/plugins/observability/public/components/shared/exploratory_view/exploratory_view.tsx
Outdated
Show resolved
Hide resolved
...ervability/public/components/shared/exploratory_view/series_editor/columns/series_footer.tsx
Outdated
Show resolved
Hide resolved
...bservability/public/components/shared/exploratory_view/series_viewer/columns/series_info.tsx
Outdated
Show resolved
Hide resolved
...bservability/public/components/shared/exploratory_view/series_viewer/columns/series_info.tsx
Outdated
Show resolved
Hide resolved
* | ||
* This function accepts two strings start and end time. I the start value is now then it uses the end value to parse. | ||
*/ | ||
export function parseTimeParts(start: string, end: string): QuickSelect | null { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are there tests for these utils?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
these are actually copied from EUI, i have asked in EUI channel, if these can be reused
https://github.com/elastic/eui/blob/master/src/components/date_picker/super_date_picker/relative_utils.ts
|
||
return ( | ||
<div ref={seriesBuilderRef}> | ||
<EuiTabs size="s">{renderTabs()}</EuiTabs> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could use EuiTabbedContent
for this instead of managing which content appears yourself.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
EuiTabbedContent
doesn't allow managing state from outside, which is required here. this is why i had to opt out of it,
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
getUrl()
changes in @kbn/test
LGTM
time: { from: rangeFrom, to: rangeTo }, | ||
reportDefinitions: { | ||
[SERVICE_NAME]: [serviceName], | ||
...(environment ? getEnvironmentDefinition(environment) : {}), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems like this was simpler when all of the conditional logic was in the function. Now it's split between here and the body of the function.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i agree. But typescript wasn't happy with that. Apparently switch/case isn't friendly with ts.
Case undefined: return {} wasn't resolving with ts.
it was logging warning that service.enivornment can't be assigned environemnt undefined.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i also removed as SeriesUrl
@elasticmachine merge upstream |
@justinkambic @dominiqueclarke I have a list of issues/bugs in terms of usability that I found, I'm attaching them here.
|
@elasticmachine merge upstream |
merge conflict between base and head |
@elasticmachine merge upstream |
💚 Build SucceededMetrics [docs]Module Count
Public APIs missing comments
Async chunks
Public APIs missing exports
Page load bundle
History
To update your PR or re-run it, just comment with: cc @shahzad31 |
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Dominique Clarke <dominique.clarke@elastic.co>
💚 Backport successful
This backport PR will be merged automatically after passing CI. |
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Dominique Clarke <dominique.clarke@elastic.co> Co-authored-by: Shahzad <shahzad.muhammad@elastic.co> Co-authored-by: Dominique Clarke <dominique.clarke@elastic.co>
Summary
Some notes regarding implementation decisions
Chart/Series Resize panels:
User can hide chart in configure mode and can hide series list in preview mode.
User can resize both panels in both mode using an anchor.
Date time picker/comparison
In case of KPI over time, user can select any range in the main series in Subsequent series user can only select the interval defined in main series, like if user select 24 hours period, user can only select any time period in subsequent series, but it's length should always remain 24 hours.
In case of distribution there are no constraints, user can select any time period/length in any series
E2e/Functional tests:
I have added few basic functional tests, but we may need to expand coverage
Known issues: