-
Notifications
You must be signed in to change notification settings - Fork 8.2k
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
[Observability] New "No Data" screens #107709
Conversation
…iring down custom styles of Enterprise Search cards
with temp `falsy` statement. Needs hook
x-pack/plugins/apm/public/components/routing/templates/apm_main_template.tsx
Outdated
Show resolved
Hide resolved
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.
Observability: cc @jasonrhodes
I've made PR comments where I need help getting/checking the logic. The locations where the new page contents is passed to the template is the best location I have found for each of the Obs solutions as it should prevent the render of any subsequent pages and can be the entire page (with still showing the solution navigation).
The next thing we'd like to tackle is getting the top menu bar's Add Data buttons going to the right places and possibly also displaying the right content when there's no data. But that does not have to be this PR.
x-pack/plugins/apm/public/components/routing/templates/apm_main_template.tsx
Outdated
Show resolved
Hide resolved
x-pack/plugins/apm/public/components/app/RumDashboard/RumHome.tsx
Outdated
Show resolved
Hide resolved
const { metricIndicesExist } = useContext(Source.Context); | ||
const noDataConfig: KibanaPageTemplateProps['noDataConfig'] = metricIndicesExist | ||
? undefined | ||
: { | ||
solution: 'Observability', | ||
pageTitle: 'Set up Metrics for Observability!', |
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.
Metrics
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 think you can use:
const { metricIndicesExist } = useSource();
and just import useSource
instead of Source
from that same file.
But they both seem to be doing the same thing. @simianhacker @neptunian could you just confirm that this will correctly return whether metrics indices exist at this point in the app?
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.
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.
OK ... interesting. I'm not sure how it works the way you're doing it, then, but if it does, great!
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.
Well, that's what I want to confirm. 😆
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.
@weltenwort if you have a minute can you help me confirm whether this context access is expected to work without designating the source ID? I don't want to tell Caroline to "just use 'default' here" because that seems bad, but I wasn't able to figure out how we are supposed to interact with this...
@gchaps We'll need some help for UI text on this one. Specifically the difference between using Integrations with Agent vs. using Beats on their own. The core differences:
The reasons not to go with Integrations with Agent right now are:
From our designs we'll be using cards to show off the choice. The only difference per solution would be the suggested method (which would hinge on whether the related integration is GA). I'd like to distill these two cards into a short sentence. Use beats when... Yell if you need more context. |
@dedemorton, @bmorelli25 Can you please look at the the request for text on the Beats and Elastic Agent cards? I'd prefer we didn't use "Confused on which to use?". I'd rather the text give in the card give enough info and then include just the link "Check our docs for more information". Setup Beats > Set up Beats |
@elasticmachine merge upstream |
@elasticmachine merge upstream |
@elasticmachine merge upstream Jest tests passed locally after a merge. 🎲 |
@elasticmachine merge upstream |
💚 Build SucceededMetrics [docs]Module Count
Async chunks
Page load bundle
History
To update your PR or re-run it, just comment with: |
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.
Reviewed locally. Looks good. Merging this since we've had trouble with tests and now have green. Set the auto-backport flags.
💔 Backport failed
To backport manually run: |
* [Observability] New "No Data" screens (#107709) Adds empty states for all of Obs that lead to their various ingest flows. * merge conflicts * Fix missing DTS addition to template Co-authored-by: Caroline Horn <549577+cchaos@users.noreply.github.com> Co-authored-by: cchaos <caroline.horn@elastic.co>
Observability work for #107682
✅ APM -- Split to new PR #111630
Historical context
hasHistoricalAgentData()
(see details below)learn more
url:core.docLinks.links.observability.guide
Add data
url:/app/home#/tutorial/apm
Originally posted by @cauemarcondes in cchaos#31
✅ Getting Started -- Split to new PR #111803
Historical context
learn more
url:core.docLinks.links.observability.guide
Add data
url:/app/home#/tutorial_directory/logging
✅ Overview -- Split to new PR #111803
Historical context
const { hasAnyData } = useHasData();
learn more
url:core.docLinks.links.observability.guide
Add data
url:/app/home#/tutorial_directory/logging
✅ Logs @afgomez (Closes #111386)
useLogSourceContext().sourceStatus?.logIndexStatus !== "missin"
learn more
url:core.docLinks.links.observability.guide
Add data
url:/app/home#/tutorial_directory/logging
Screenshot
✅ Uptime @shahzad31 / @justinkambic -- Split to a new PR #112403
Historical context
- [x] Logic based on `const { data } = useSelector(indexStatusSelector)` - [x] `learn more` url: [`core.docLinks.links.observability.guide`](https://www.elastic.co/guide/en/kibana/master/observability.html) - [x] `Add data` url: `/app/home#/tutorial/uptimeMonitors`✅ User Experience -- Split to new PR #111866
Historical context
!totalPageViews
learn more
url:core.docLinks.links.observability.guide
Add data
url:/app/home#/tutorial/apm
✅ Observability Metrics @afgomez (closes #111387)
const { metricIndicesExist } = useContext(Source.Context);
which currently doesn't take into account the default metrics indexlearn more
url:core.docLinks.links.observability.guide
Add data
url:/app/home#/tutorial/metrics
Screenshot
Checklist
Delete any items that are not applicable to this PR.