kibana/docs/apm/lambda.asciidoc
Kibana Machine 63faa6723e
[8.9] [APM] Documentation updates (#160568) (#161031)
# Backport

This will backport the following commits from `main` to `8.9`:
- [[APM] Documentation updates
(#160568)](https://github.com/elastic/kibana/pull/160568)

<!--- Backport version: 8.9.7 -->

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

<!--BACKPORT [{"author":{"name":"Brandon
Morelli","email":"brandon.morelli@elastic.co"},"sourceCommit":{"committedDate":"2023-06-30T18:02:58Z","message":"[APM]
Documentation updates (#160568)\n\n### Summary\r\n\r\nThis PR makes a
handful of updates to the APM app documentation:\r\n\r\n- [x] **Alerts
tab, workflow, and grouping**\r\n- Rewrote most of our
[alerting\r\ndocumentation](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/apm-alerts.html#apm-alert-view-active)\r\nto
explain the new granularity level of alerts, address new alert
names,\r\nand explain the different ways to view active alerts.\r\n-
Updated
the\r\n[Services](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/services.html)\r\ndocumentation
to describe the alert badge and link to alerting docs.\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2887_\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2888_\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2878_\r\n- [x]
**Infrastructure tab**\r\n- Added a new
[top-level\r\npage](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/infrastructure.html)\r\nexplaining
what this page is useful for.\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2892_\r\n- [x]
**Log views and correlation**\r\n- Added a new [top-level
page\r\n](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/logs.html)that\r\nlinks
to our log correlation docs.\r\n- Updated our
[transaction\r\ndocumentation](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/transactions.html#transaction-trace-sample)\r\nwith
new information and a link to our log correlation docs.\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2891_\r\n- [x]
**New AWS Lambda metrics**\r\n- Most of the new charts have tooltips
explaining what the charts do. I\r\nupdated the screenshot and added
some additional information to
the\r\n[overview](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/apm-lambda.html)\r\nto
highlight some of the new features of this page.\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2890_\r\n- [x]
**New screenshots**\r\n- I updated any screenshots I noticed were
outdated while working on the\r\nabove content. Screenshot updates are
not necessarily related to the\r\nchanges described
above.","sha":"4ed60697e97b7120eec7d0130da28ca900ca90e9","branchLabelMapping":{"^v8.10.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","v8.8.0","v8.9.0","v8.10.0"],"number":160568,"url":"https://github.com/elastic/kibana/pull/160568","mergeCommit":{"message":"[APM]
Documentation updates (#160568)\n\n### Summary\r\n\r\nThis PR makes a
handful of updates to the APM app documentation:\r\n\r\n- [x] **Alerts
tab, workflow, and grouping**\r\n- Rewrote most of our
[alerting\r\ndocumentation](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/apm-alerts.html#apm-alert-view-active)\r\nto
explain the new granularity level of alerts, address new alert
names,\r\nand explain the different ways to view active alerts.\r\n-
Updated
the\r\n[Services](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/services.html)\r\ndocumentation
to describe the alert badge and link to alerting docs.\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2887_\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2888_\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2878_\r\n- [x]
**Infrastructure tab**\r\n- Added a new
[top-level\r\npage](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/infrastructure.html)\r\nexplaining
what this page is useful for.\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2892_\r\n- [x]
**Log views and correlation**\r\n- Added a new [top-level
page\r\n](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/logs.html)that\r\nlinks
to our log correlation docs.\r\n- Updated our
[transaction\r\ndocumentation](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/transactions.html#transaction-trace-sample)\r\nwith
new information and a link to our log correlation docs.\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2891_\r\n- [x]
**New AWS Lambda metrics**\r\n- Most of the new charts have tooltips
explaining what the charts do. I\r\nupdated the screenshot and added
some additional information to
the\r\n[overview](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/apm-lambda.html)\r\nto
highlight some of the new features of this page.\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2890_\r\n- [x]
**New screenshots**\r\n- I updated any screenshots I noticed were
outdated while working on the\r\nabove content. Screenshot updates are
not necessarily related to the\r\nchanges described
above.","sha":"4ed60697e97b7120eec7d0130da28ca900ca90e9"}},"sourceBranch":"main","suggestedTargetBranches":["8.8","8.9"],"targetPullRequestStates":[{"branch":"8.8","label":"v8.8.0","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"8.9","label":"v8.9.0","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v8.10.0","labelRegex":"^v8.10.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/160568","number":160568,"mergeCommit":{"message":"[APM]
Documentation updates (#160568)\n\n### Summary\r\n\r\nThis PR makes a
handful of updates to the APM app documentation:\r\n\r\n- [x] **Alerts
tab, workflow, and grouping**\r\n- Rewrote most of our
[alerting\r\ndocumentation](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/apm-alerts.html#apm-alert-view-active)\r\nto
explain the new granularity level of alerts, address new alert
names,\r\nand explain the different ways to view active alerts.\r\n-
Updated
the\r\n[Services](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/services.html)\r\ndocumentation
to describe the alert badge and link to alerting docs.\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2887_\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2888_\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2878_\r\n- [x]
**Infrastructure tab**\r\n- Added a new
[top-level\r\npage](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/infrastructure.html)\r\nexplaining
what this page is useful for.\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2892_\r\n- [x]
**Log views and correlation**\r\n- Added a new [top-level
page\r\n](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/logs.html)that\r\nlinks
to our log correlation docs.\r\n- Updated our
[transaction\r\ndocumentation](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/transactions.html#transaction-trace-sample)\r\nwith
new information and a link to our log correlation docs.\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2891_\r\n- [x]
**New AWS Lambda metrics**\r\n- Most of the new charts have tooltips
explaining what the charts do. I\r\nupdated the screenshot and added
some additional information to
the\r\n[overview](https://kibana_160568.docs-preview.app.elstc.co/guide/en/kibana/master/apm-lambda.html)\r\nto
highlight some of the new features of this page.\r\n - _Closes
https://github.com/elastic/observability-docs/issues/2890_\r\n- [x]
**New screenshots**\r\n- I updated any screenshots I noticed were
outdated while working on the\r\nabove content. Screenshot updates are
not necessarily related to the\r\nchanges described
above.","sha":"4ed60697e97b7120eec7d0130da28ca900ca90e9"}}]}]
BACKPORT-->

Co-authored-by: Brandon Morelli <brandon.morelli@elastic.co>
2023-06-30 14:28:05 -04:00

52 lines
2.3 KiB
Text

[role="xpack"]
[[apm-lambda]]
=== Observe Lambda functions
Elastic APM provides performance and error monitoring for AWS Lambda functions.
See how your Lambda functions relate to and depend on other services, and
get insight into function execution and runtime behavior, like lambda duration, cold start rate, cold start duration, compute usage, memory usage, and more.
To set up Lambda monitoring, see the relevant
{apm-guide-ref}/monitoring-aws-lambda.html[quick start guide].
[role="screenshot"]
image::apm/images/lambda-overview.png[lambda overview]
[float]
[[apm-lambda-cold-start-info]]
==== Cold starts
A cold start occurs when a Lambda function has not been used for a certain period of time. A lambda worker receives a request to run the function and prepares an execution environment.
Cold starts are an unavoidable byproduct of the serverless world, but visibility into how they impact your services can help you make better decisions about factors like how much memory to allocate to a function, whether to enable provisioned concurrency, or if it's time to consider removing a large dependency.
[float]
[[apm-lambda-cold-start-rate]]
===== Cold start rate
The cold start rate (i.e. proportion of requests that experience a cold start) is displayed per service and per transaction.
Cold start is also displayed in the trace waterfall, where you can drill-down into individual traces and see trace metadata like AWS request ID, trigger type, and trigger request ID.
[role="screenshot"]
image::apm/images/lambda-cold-start-trace.png[lambda cold start trace]
[float]
[[apm-lambda-cold-start-latency]]
===== Latency distribution correlation
The <<correlations-latency,latency correlations>> feature can be used to visualize the impact of Lambda cold starts on latency--just select the `faas.coldstart` field.
[role="screenshot"]
image::apm/images/lambda-correlations.png[lambda correlations example]
[float]
[[apm-lambda-service-config]]
==== AWS Lambda function grouping
The default APM agent configuration results in one APM service per AWS Lambda function,
where the Lambda function name is the service name.
In some use cases, it makes more sense to logically group multiple lambda functions under a single
APM service. You can achieve this by setting the `ELASTIC_APM_SERVICE_NAME` environment variable
on related Lambda functions to the same value.