kibana/docs/apm/bottlenecks.asciidoc
Brandon Morelli 93faa5fbc3
[APM][docs][WIP] Update APM UI documentation (#28621)
* docs: initial APM UI updates

* docs: using-the-apm-ui updates

* more docs updates

* quick edits

* docs: apply feedback and fix screenshots

* docs: incorporate feedback, bold page names

* finishing touches and clean up

* docs: incorporate feedback from sarah

* docs: add feedback

* docs: incorporate feedback from gchaps
2019-01-30 09:08:11 -08:00

26 lines
1.8 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

[role="xpack"]
[[apm-bottlenecks]]
== Visualizing Application Bottlenecks
Elastic APM captures different types of information from within instrumented applications:
* {apm-overview-ref-v}/transaction-spans.html[*Spans*] contain information about a specific code path that has been executed.
They measure from the start to end of an activity,
and they can have a parent/child relationship with other spans.
* {apm-overview-ref-v}/transactions.html[*Transactions*] are a special kind of span that have extra metadata associated with them.
You can think of transactions as the highest level of work youre measuring within a service.
As an example, a transaction could be a request to your server, a batch job, or a custom transaction type.
* {apm-overview-ref-v}/errors.html[*Errors*] contain information about the original exception that occurred or about a log created when the exception occurred.
Each of these information types have a specific page associated with them in the APM UI.
These various pages display the captured data in curated charts and tables that allow you to easily compare and debug your applications.
For example, you can see information about response times, requests per minute, and status codes per endpoint.
You can even dive into a specific request sample and get a complete waterfall view of what your application is spending its time on.
You might see that your bottlenecks are in database queries, cache calls, or external requests.
For each incoming request and each application error,
you can also see contextual information such as the request header, user information,
system values, or custom data that you manually attached to the request.
Having access to application-level insights with just a few clicks can drastically decrease the time you spend debugging errors, slow response times, and crashes.