Skip to content
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

[ECO][Infra] Add callout for ingesting metrics data in Host and Container views #195378

Conversation

iblancof
Copy link
Contributor

@iblancof iblancof commented Oct 8, 2024

Summary

Closes #193703

This PR introduces a callout designed to prompt users to ingest metrics data in the Host and Container views.
The callout will be displayed on the following tabs:

  • Hosts: Overview, Metrics, Processes
  • Containers: Overview, Metrics

The primary condition for showing the callout is that the asset does not currently have any metrics data available. This enhancement aims to encourage users to take action and improve their monitoring experience.

Additional details include:

  • The callout will be positioned below the date picker for better visibility.
  • Links for "Add Metrics" will guide users to the appropriate onboarding pages based on their asset type.
  • The callout will be dismissible on the Overview tab, and the KPI section will be hidden in favor of the callout for a cleaner interface.
  • Custom telemetry events will be tracked to measure user interactions with the callout.
  • Only Docker and K8 containers will show the callout.

Host

Tab
Overview Screenshot 2024-10-08 at 12 19 22
Metrics Screenshot 2024-10-08 at 12 19 31
Processes Screenshot 2024-10-08 at 12 19 39

Container

Tab
Overview Screenshot 2024-10-08 at 12 24 10
Metrics Screenshot 2024-10-08 at 12 21 22

@crespocarlos
Copy link
Contributor

Hey @crespocarlos,

Should we hide it when the array is empty or only when it has no metrics?

I'm missing some context here, and since we could have only ['logs'] in the array, I want to confirm if you mean no data streams at all or just the absence of metrics.

Good point. It's better to hide if the array doesn't contain ['metrics'] instead of just checking if it's empty. We can only tell when it's a host from APM if it's from Elastic APM.

Copy link
Contributor

@tonyghiani tonyghiani left a comment

Choose a reason for hiding this comment

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

Changes to infra tsconfig.ts LGTM, code review only.


import { EntityDataStreamType } from '@kbn/observability-shared-plugin/common';

export function isMetricsSignal(dataStreamTypes: EntityDataStreamType[] = []) {
Copy link
Contributor

Choose a reason for hiding this comment

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

Do you think naming it hasMetricsSignal would make more sense?

Copy link
Contributor Author

@iblancof iblancof Oct 11, 2024

Choose a reason for hiding this comment

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

I updated it from hasMetrics to isMetricsSignal based on this comment in the PR.

Copy link
Contributor

@crespocarlos crespocarlos 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
Contributor

@cauemarcondes cauemarcondes left a comment

Choose a reason for hiding this comment

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

LGTM.

@elasticmachine
Copy link
Contributor

elasticmachine commented Oct 14, 2024

💚 Build Succeeded

Metrics [docs]

Module Count

Fewer modules leads to a faster build time

id before after diff
apm 1845 1844 -1
infra 1510 1526 +16
observabilityShared 210 214 +4
total +19

Public APIs missing comments

Total count of every public API that lacks a comment. Target amount is 0. Run node scripts/build_api_docs --plugin [yourplugin] --stats comments for more detailed information.

id before after diff
observabilityShared 488 500 +12

Async chunks

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

id before after diff
apm 3.4MB 3.4MB -9.0B
infra 1.6MB 1.7MB +71.8KB
total +71.8KB

Page load bundle

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

id before after diff
infra 52.7KB 54.1KB +1.4KB
observabilityShared 72.3KB 75.0KB +2.7KB
total +4.1KB
Unknown metric groups

API count

id before after diff
observabilityShared 493 505 +12

ESLint disabled in files

id before after diff
observabilityShared 0 1 +1

Total ESLint disabled count

id before after diff
observabilityShared 15 16 +1

History

cc @iblancof

@iblancof iblancof merged commit 96966c5 into elastic:main Oct 14, 2024
26 checks passed
@iblancof iblancof deleted the 193703-infra-eco-show-a-callout-to-prompt-users-to-ingest-metrics-data branch October 14, 2024 14:42
@kibanamachine
Copy link
Contributor

Starting backport for target branches: 8.x

https://github.com/elastic/kibana/actions/runs/11329854789

kibanamachine pushed a commit to kibanamachine/kibana that referenced this pull request Oct 14, 2024
…iner views (elastic#195378)

## Summary

Closes elastic#193703

This PR introduces a callout designed to prompt users to ingest metrics
data in the Host and Container views.
The callout will be displayed on the following tabs:

- **Hosts**: Overview, Metrics, Processes
- **Containers**: Overview, Metrics

The primary condition for showing the callout is that the asset does not
currently have any metrics data available. This enhancement aims to
encourage users to take action and improve their monitoring experience.

Additional details include:

- The callout will be positioned below the date picker for better
visibility.
- Links for "Add Metrics" will guide users to the appropriate onboarding
pages based on their asset type.
- The callout will be dismissible on the Overview tab, and the KPI
section will be hidden in favor of the callout for a cleaner interface.
- Custom telemetry events will be tracked to measure user interactions
with the callout.
- Only Docker and K8 containers will show the callout.

**Host**
|Tab||
|-|-|
|Overview|![Screenshot 2024-10-08 at 12 19
22](https://github.com/user-attachments/assets/e357d6c6-2423-40f9-a513-361c642dc07c)|
|Metrics|![Screenshot 2024-10-08 at 12 19
31](https://github.com/user-attachments/assets/559a6e71-344a-4b4a-9ad6-8d229a1d9bcb)|
|Processes|![Screenshot 2024-10-08 at 12 19
39](https://github.com/user-attachments/assets/070f6fb1-0756-4b21-abce-4b395be943df)|

**Container**
|Tab||
|-|-|
|Overview|![Screenshot 2024-10-08 at 12 24
10](https://github.com/user-attachments/assets/101cfc7b-f445-44e7-9aa3-bec8928c3ed5)|
|Metrics|![Screenshot 2024-10-08 at 12 21
22](https://github.com/user-attachments/assets/d516d449-2af4-441f-9047-39c9362c5a86)|

---------

Co-authored-by: kibanamachine <[email protected]>
Co-authored-by: Caue Marcondes <[email protected]>
(cherry picked from commit 96966c5)
@kibanamachine
Copy link
Contributor

💚 All backports created successfully

Status Branch Result
8.x

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

Questions ?

Please refer to the Backport tool documentation

@kibanamachine kibanamachine added the backport missing Added to PRs automatically when the are determined to be missing a backport. label Oct 15, 2024
@kibanamachine
Copy link
Contributor

Looks like this PR has a backport PR but it still hasn't been merged. Please merge it ASAP to keep the branches relatively in sync.

kibanamachine added a commit that referenced this pull request Oct 16, 2024
… Container views (#195378) (#196158)

# Backport

This will backport the following commits from `main` to `8.x`:
- [[ECO][Infra] Add callout for ingesting metrics data in Host and
Container views
(#195378)](#195378)

<!--- Backport version: 9.4.3 -->

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

<!--BACKPORT [{"author":{"name":"Irene
Blanco","email":"[email protected]"},"sourceCommit":{"committedDate":"2024-10-14T14:42:44Z","message":"[ECO][Infra]
Add callout for ingesting metrics data in Host and Container views
(#195378)\n\n## Summary\r\n\r\nCloses
https://github.com/elastic/kibana/issues/193703\r\n\r\nThis PR
introduces a callout designed to prompt users to ingest metrics\r\ndata
in the Host and Container views.\r\nThe callout will be displayed on the
following tabs:\r\n\r\n- **Hosts**: Overview, Metrics, Processes\r\n-
**Containers**: Overview, Metrics\r\n\r\nThe primary condition for
showing the callout is that the asset does not\r\ncurrently have any
metrics data available. This enhancement aims to\r\nencourage users to
take action and improve their monitoring experience.\r\n\r\nAdditional
details include:\r\n\r\n- The callout will be positioned below the date
picker for better\r\nvisibility.\r\n- Links for \"Add Metrics\" will
guide users to the appropriate onboarding\r\npages based on their asset
type.\r\n- The callout will be dismissible on the Overview tab, and the
KPI\r\nsection will be hidden in favor of the callout for a cleaner
interface.\r\n- Custom telemetry events will be tracked to measure user
interactions\r\nwith the callout.\r\n- Only Docker and K8 containers
will show the
callout.\r\n\r\n**Host**\r\n|Tab||\r\n|-|-|\r\n|Overview|![Screenshot
2024-10-08 at 12
19\r\n22](https://github.com/user-attachments/assets/e357d6c6-2423-40f9-a513-361c642dc07c)|\r\n|Metrics|![Screenshot
2024-10-08 at 12
19\r\n31](https://github.com/user-attachments/assets/559a6e71-344a-4b4a-9ad6-8d229a1d9bcb)|\r\n|Processes|![Screenshot
2024-10-08 at 12
19\r\n39](https://github.com/user-attachments/assets/070f6fb1-0756-4b21-abce-4b395be943df)|\r\n\r\n**Container**\r\n|Tab||\r\n|-|-|\r\n|Overview|![Screenshot
2024-10-08 at 12
24\r\n10](https://github.com/user-attachments/assets/101cfc7b-f445-44e7-9aa3-bec8928c3ed5)|\r\n|Metrics|![Screenshot
2024-10-08 at 12
21\r\n22](https://github.com/user-attachments/assets/d516d449-2af4-441f-9047-39c9362c5a86)|\r\n\r\n---------\r\n\r\nCo-authored-by:
kibanamachine
<[email protected]>\r\nCo-authored-by:
Caue Marcondes
<[email protected]>","sha":"96966c5113678b8840c7a311e7e4ed1e977b4dac","branchLabelMapping":{"^v9.0.0$":"main","^v8.16.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","v9.0.0","backport:prev-minor","ci:project-deploy-observability","Team:obs-ux-logs","Team:obs-ux-infra_services","v8.16.0"],"title":"[ECO][Infra]
Add callout for ingesting metrics data in Host and Container
views","number":195378,"url":"https://github.com/elastic/kibana/pull/195378","mergeCommit":{"message":"[ECO][Infra]
Add callout for ingesting metrics data in Host and Container views
(#195378)\n\n## Summary\r\n\r\nCloses
https://github.com/elastic/kibana/issues/193703\r\n\r\nThis PR
introduces a callout designed to prompt users to ingest metrics\r\ndata
in the Host and Container views.\r\nThe callout will be displayed on the
following tabs:\r\n\r\n- **Hosts**: Overview, Metrics, Processes\r\n-
**Containers**: Overview, Metrics\r\n\r\nThe primary condition for
showing the callout is that the asset does not\r\ncurrently have any
metrics data available. This enhancement aims to\r\nencourage users to
take action and improve their monitoring experience.\r\n\r\nAdditional
details include:\r\n\r\n- The callout will be positioned below the date
picker for better\r\nvisibility.\r\n- Links for \"Add Metrics\" will
guide users to the appropriate onboarding\r\npages based on their asset
type.\r\n- The callout will be dismissible on the Overview tab, and the
KPI\r\nsection will be hidden in favor of the callout for a cleaner
interface.\r\n- Custom telemetry events will be tracked to measure user
interactions\r\nwith the callout.\r\n- Only Docker and K8 containers
will show the
callout.\r\n\r\n**Host**\r\n|Tab||\r\n|-|-|\r\n|Overview|![Screenshot
2024-10-08 at 12
19\r\n22](https://github.com/user-attachments/assets/e357d6c6-2423-40f9-a513-361c642dc07c)|\r\n|Metrics|![Screenshot
2024-10-08 at 12
19\r\n31](https://github.com/user-attachments/assets/559a6e71-344a-4b4a-9ad6-8d229a1d9bcb)|\r\n|Processes|![Screenshot
2024-10-08 at 12
19\r\n39](https://github.com/user-attachments/assets/070f6fb1-0756-4b21-abce-4b395be943df)|\r\n\r\n**Container**\r\n|Tab||\r\n|-|-|\r\n|Overview|![Screenshot
2024-10-08 at 12
24\r\n10](https://github.com/user-attachments/assets/101cfc7b-f445-44e7-9aa3-bec8928c3ed5)|\r\n|Metrics|![Screenshot
2024-10-08 at 12
21\r\n22](https://github.com/user-attachments/assets/d516d449-2af4-441f-9047-39c9362c5a86)|\r\n\r\n---------\r\n\r\nCo-authored-by:
kibanamachine
<[email protected]>\r\nCo-authored-by:
Caue Marcondes
<[email protected]>","sha":"96966c5113678b8840c7a311e7e4ed1e977b4dac"}},"sourceBranch":"main","suggestedTargetBranches":["8.x"],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/195378","number":195378,"mergeCommit":{"message":"[ECO][Infra]
Add callout for ingesting metrics data in Host and Container views
(#195378)\n\n## Summary\r\n\r\nCloses
https://github.com/elastic/kibana/issues/193703\r\n\r\nThis PR
introduces a callout designed to prompt users to ingest metrics\r\ndata
in the Host and Container views.\r\nThe callout will be displayed on the
following tabs:\r\n\r\n- **Hosts**: Overview, Metrics, Processes\r\n-
**Containers**: Overview, Metrics\r\n\r\nThe primary condition for
showing the callout is that the asset does not\r\ncurrently have any
metrics data available. This enhancement aims to\r\nencourage users to
take action and improve their monitoring experience.\r\n\r\nAdditional
details include:\r\n\r\n- The callout will be positioned below the date
picker for better\r\nvisibility.\r\n- Links for \"Add Metrics\" will
guide users to the appropriate onboarding\r\npages based on their asset
type.\r\n- The callout will be dismissible on the Overview tab, and the
KPI\r\nsection will be hidden in favor of the callout for a cleaner
interface.\r\n- Custom telemetry events will be tracked to measure user
interactions\r\nwith the callout.\r\n- Only Docker and K8 containers
will show the
callout.\r\n\r\n**Host**\r\n|Tab||\r\n|-|-|\r\n|Overview|![Screenshot
2024-10-08 at 12
19\r\n22](https://github.com/user-attachments/assets/e357d6c6-2423-40f9-a513-361c642dc07c)|\r\n|Metrics|![Screenshot
2024-10-08 at 12
19\r\n31](https://github.com/user-attachments/assets/559a6e71-344a-4b4a-9ad6-8d229a1d9bcb)|\r\n|Processes|![Screenshot
2024-10-08 at 12
19\r\n39](https://github.com/user-attachments/assets/070f6fb1-0756-4b21-abce-4b395be943df)|\r\n\r\n**Container**\r\n|Tab||\r\n|-|-|\r\n|Overview|![Screenshot
2024-10-08 at 12
24\r\n10](https://github.com/user-attachments/assets/101cfc7b-f445-44e7-9aa3-bec8928c3ed5)|\r\n|Metrics|![Screenshot
2024-10-08 at 12
21\r\n22](https://github.com/user-attachments/assets/d516d449-2af4-441f-9047-39c9362c5a86)|\r\n\r\n---------\r\n\r\nCo-authored-by:
kibanamachine
<[email protected]>\r\nCo-authored-by:
Caue Marcondes
<[email protected]>","sha":"96966c5113678b8840c7a311e7e4ed1e977b4dac"}},{"branch":"8.x","label":"v8.16.0","branchLabelMappingKey":"^v8.16.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Irene Blanco <[email protected]>
@kibanamachine kibanamachine removed the backport missing Added to PRs automatically when the are determined to be missing a backport. label Oct 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport:prev-minor Backport to (8.x) the previous minor version (i.e. one version back from main) ci:project-deploy-observability Create an Observability project release_note:skip Skip the PR/issue when compiling release notes Team:obs-ux-infra_services Observability Infrastructure & Services User Experience Team Team:obs-ux-logs Observability Logs User Experience Team v8.16.0 v9.0.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Infra][ECO] Show a callout to prompt users to ingest metrics data
8 participants