Skip to content

[APM] Service overview: Instances table - #85770

Merged
dgieselaar merged 12 commits into
elastic:masterfrom
dgieselaar:service-overview-instances-table
Dec 15, 2020
Merged

dgieselaar merged 12 commits into
elastic:masterfrom
dgieselaar:service-overview-instances-table

Conversation

@dgieselaar

Copy link
Copy Markdown
Contributor

Closes #81721.

image

@dgieselaar
dgieselaar requested a review from a team December 14, 2020 13:06
@botelastic botelastic Bot added the Team:APM - DEPRECATED Use Team:obs-ux-infra_services. label Dec 14, 2020
@elasticmachine

Copy link
Copy Markdown
Contributor

Pinging @elastic/apm-ui (Team:apm)

@smith smith left a comment

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.

Looks great.

It would be very cool if you also removed the box for the latency distribution chart and made this full-width.

: serviceNodeName;

const link =
agentName === 'java' ? (

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.

We do have an isJavaAgentName function (it does the same thing but returns agentName is 'java' in common/agent_name.ts.

<EuiTitle size="xs">
<h2>
{i18n.translate('xpack.apm.serviceOverview.instancesTableTitle', {
defaultMessage: 'All instances',

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 know this matches the mockup, but why is it not just "Instances"? @formgeist

),
render: (_, item) => {
const { serviceNodeName } = item;
const isMissing = serviceNodeName === SERVICE_NODE_NAME_MISSING;

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.

nit

Suggested change
const isMissing = serviceNodeName === SERVICE_NODE_NAME_MISSING;
const isMissingNodeName = serviceNodeName === SERVICE_NODE_NAME_MISSING;

width: px(unit * 10),
render: (_, { throughput }) => {
return (
<SparkPlotWithValueLabel

@sorenlouv sorenlouv Dec 15, 2020 •

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.

tangential: SparkPlotWithValueLabel seems like it should simply be:

<SparkPlot />

Then, if we want to hide the label value:

<SparkPlot showValueLabel={false} />

or perhaps:

<SparkPlot hideValueLabel={true} />


interface Response {
status: number;
body: APIReturnType<'GET /api/apm/services/{serviceName}/service_overview_instances'>;

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.

Were you not the slightest tempted to write a client when you did this? :p

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I am 😬 but I would like someone else to pick that up.

@sorenlouv sorenlouv left a comment

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.

lgtm

) : (
<MetricOverviewLink
serviceName={serviceName}
mergeQuery={(query) => ({

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.

Instead of mergeQuery can we just update MetricOverviewLink to handle the merge:

    <APMLink
      path={`/services/${serviceName}/metrics`}
      query={{
        ...query,
        ...pickKeys(urlParams as APMQueryParams, ...persistedFilters)
      }}
      {...rest}
    />

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I've added mergeQuery to APMLink so it's reusable. I've also made it a function to leave ordering etc up to the consumer. One might want to set a default value, or override a parameter, or simply remove one.

@dgieselaar
dgieselaar merged commit 8ccad31 into elastic:master Dec 15, 2020
@dgieselaar
dgieselaar deleted the service-overview-instances-table branch December 15, 2020 10:04
dgieselaar added a commit to dgieselaar/kibana that referenced this pull request Dec 15, 2020
gmmorris added a commit to ymao1/kibana that referenced this pull request Dec 15, 2020
* master: (66 commits)
  [Alerting] fixes broken Alerting Example plugin (elastic#85774)
  [APM] Service overview instances table (elastic#85770)
  [Security Solution] Unskip timeline creation Cypress test (elastic#85871)
  properly recognize enterprise licenses (elastic#85849)
  [SecuritySolution][Detections] Adds SavedObject persistence to Signals Migrations (elastic#85690)
  [TSVB] Fix functional tests flakiness and unskip them (elastic#85388)
  [Fleet] Change permissions for Fleet enroll role (elastic#85802)
  Gauge visualization can no longer be clicked to filter on values since Kibana 7.10.0 (elastic#84768)
  [Security Solution][Detections] Add alert source to detection rule action context (elastic#85488)
  [Discover] Don't display hide/show button for histogram when there's no time filter (elastic#85424)
  skip flaky suite (elastic#78553)
  License checks for alerts plugin (elastic#85649)
  skip flaky suite (elastic#84992)
  skip 'query return results valid for scripted field' elastic#78553
  Allow action types to perform their own mustache variable escaping in parameter templates (elastic#83919)
  [ML] More machine learning links in doc_links_service.ts (elastic#85365)
  Removed Alerting & Event Log deprecated fields that should not be using (elastic#85652)
  Closes elastic#79995 by adding new tab in transaction details to show related trace logs. (elastic#85859)
  Fix outdated jest snapshot
  [Maps] Surface on prem EMS (elastic#85729)
  ...
dgieselaar added a commit that referenced this pull request Dec 15, 2020
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
@sorenlouv sorenlouv changed the title [APM] Service overview instances table [APM] Service overview: Instances table Dec 18, 2020
@sorenlouv sorenlouv mentioned this pull request Dec 18, 2020
@kibanamachine

Copy link
Copy Markdown
Contributor

💚 Build Succeeded

Metrics [docs]

Async chunks

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

id before after diff
apm 5.4MB 5.4MB +6.6KB

Distributable file count

id before after diff
default 47130 47893 +763

History

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

patrykkopycinski pushed a commit to patrykkopycinski/kibana that referenced this pull request May 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[APM] Service overview: instances table

5 participants