kibana/docs/apm/dependencies.asciidoc
Brandon Morelli 9efbd2243c
[APM] Documentation updates (#160951)
### Summary

This PR makes a handful of updates to the APM app documentation:

- [x] **Agent explorer**
- New page
[here](https://kibana_160951.docs-preview.app.elstc.co/guide/en/kibana/master/agent-explorer.html).
  - _Closes https://github.com/elastic/observability-docs/issues/2886_
- [x] **Trace explorer**
- New section
[here](https://kibana_160951.docs-preview.app.elstc.co/guide/en/kibana/master/traces.html#trace-explorer).
  - _Closes https://github.com/elastic/observability-docs/issues/2885_
- [x] **Dependency operations**
- New section
[here](https://kibana_160951.docs-preview.app.elstc.co/guide/en/kibana/master/dependencies.html#dependencies-operations).
  - _Closes https://github.com/elastic/observability-docs/issues/2889_
- [x] **Adds missing settings and APM Labs info**
- We didn't have documentation on how to enable APM Labs. We [do
now](https://kibana_160951.docs-preview.app.elstc.co/guide/en/kibana/master/apm-settings-in-kibana.html#apm-labs).
- I noticed Labs settings were missing from the documentation. Those
have now been added to the [Kibana advanced
settings](https://kibana_160951.docs-preview.app.elstc.co/guide/en/kibana/master/advanced-options.html#observability-advanced-settings).
2023-06-30 11:49:43 -07:00

48 lines
2.3 KiB
Text

[role="xpack"]
[[dependencies]]
=== Dependencies
APM agents collect details about external calls made from instrumented services.
Sometimes, these external calls resolve into a downstream service that's instrumented -- in these cases,
you can utilize <<distributed-tracing,distributed tracing>> to drill down into problematic downstream services.
Other times, though, it's not possible to instrument a downstream dependency --
like with a database or third-party service.
**Dependencies** gives you a window into these uninstrumented, downstream dependencies.
[role="screenshot"]
image::apm/images/dependencies.png[Dependencies view in the APM app in Kibana]
Many application issues are caused by slow or unresponsive downstream dependencies.
And because a single, slow dependency can significantly impact the end-user experience,
it's important to be able to quickly identify these problems and determine the root cause.
Select a dependency to see detailed latency, throughput, and failed transaction rate metrics.
[role="screenshot"]
image::apm/images/dependencies-drilldown.png[Dependencies drilldown view in the APM app in Kibana]
When viewing a dependency, consider your pattern of usage with that dependency.
If your usage pattern _hasn't_ increased or decreased,
but the experience has been negatively effected -- either with an increase in latency or errors,
there's likely a problem with the dependency that needs to be addressed.
If your usage pattern _has_ changed, the dependency view can quickly show you whether
that pattern change exists in all upstream services, or just a subset of your services.
You might then start digging into traces coming from
impacted services to determine why that pattern change has occurred.
[float]
[[dependencies-operations]]
==== Operations
beta::[]
**Dependency operations** provides a granular breakdown of the operations/queries a dependency is executing.
[role="screenshot"]
image::apm/images/operations.png[operations view in the APM app in Kibana]
Selecting an operation displays the operation's impact and performance trends over time, via key metrics like latency, throughput, and failed transaction rate. In addition, the <<spans,**Trace sample timeline**>> provides a visual drill-down into an end-to-end trace sample.
[role="screenshot"]
image::apm/images/operations-detail.png[operations detail view in the APM app in Kibana]