Skip to content

AWS Lambda Extension


Version-1.34.0 · Experimental

The AWS Lambda collector collects AWS Lambda metrics and logs through the Lambda extension.

Installation

Installing DataKit 1.x: The extension package links in this section point to the DataKit 2.x /datakit-v2/ path by default. To use the extension package for DataKit 1.x, replace /datakit-v2/ with /datakit/ in the URLs. The static resource domain in each URL is rendered for the current documentation brand.

Adding a DataKit Layer

  • Create a Layer via Zip

    • Zip download links:

    • Open the Lambda console Layers page.

    • Select Create layer.
    • Under Layer configuration, enter the layer name in Name.
    • Choose Upload a .zip file. Then, select Upload to choose the local .zip file.
    • Select Create.
  • Add a Layer via ARN

    • Open the Lambda console Functions page.
    • Select the function you want to configure.
    • Under Layers, select Add Layer.
    • Under Select a layer, choose ARN as the layer source.
    • Enter the ARN in the text box, select Verify, and then choose Add.

Configure the Required Environment Variables

  • ENV_DATAWAY=https://openway.guance.com?token=<your-token>

Metrics

awslambda

AWS Lambda metrics produced from Lambda Telemetry API platform events. Duration and memory fields are per-event values, while error, timeout, out-of-memory, and invocation fields are event count increments when emitted.

Tags & Fields Description
aws_account_id
(tag)
AWS Account ID.
aws_lambda_function_memory_size
(tag)
Configured memory size for the Lambda function, in MB.
aws_lambda_function_name
(tag)
Lambda function name.
aws_lambda_function_version
(tag)
Lambda function version.
aws_lambda_initialization_type
(tag)
Initialization type of the Lambda function.
aws_region
(tag)
AWS region where the function is executed.
aws_runtime_version
(tag)
Lambda runtime version reported by Telemetry API init or restore start events when available.
aws_runtime_version_arn
(tag)
Lambda runtime version ARN reported by Telemetry API init or restore start events when available.
billed_duration_ms Billed duration for the invocation, in milliseconds, from the Telemetry API platform.report metrics.billedDurationMs field.
Type: int | (gauge)
Unit: time,ms
Tagged by: aws_account_id, aws_lambda_function_memory_size, aws_lambda_function_name, aws_lambda_function_version, aws_lambda_initialization_type, aws_region, aws_runtime_version, aws_runtime_version_arn
duration_ms Invocation duration, in milliseconds, from the Telemetry API platform.report metrics.durationMs field.
Type: float | (gauge)
Unit: time,ms
Tagged by: aws_account_id, aws_lambda_function_memory_size, aws_lambda_function_name, aws_lambda_function_version, aws_lambda_initialization_type, aws_region, aws_runtime_version, aws_runtime_version_arn
errors Count increment for invocations whose Telemetry API platform.runtimeDone status is not success.
Type: int | (count)
Unit: count
Tagged by: aws_account_id, aws_lambda_function_memory_size, aws_lambda_function_name, aws_lambda_function_version, aws_lambda_initialization_type, aws_region, aws_runtime_version, aws_runtime_version_arn
init_duration_ms Initialization phase duration, in milliseconds, from the Telemetry API platform.initReport metrics.durationMs field.
Type: float | (gauge)
Unit: time,ms
Tagged by: aws_account_id, aws_lambda_function_memory_size, aws_lambda_function_name, aws_lambda_function_version, aws_lambda_initialization_type, aws_region, aws_runtime_version, aws_runtime_version_arn
invocations Count increment for Lambda invocations when emitted.
Type: int | (count)
Unit: count
Tagged by: aws_account_id, aws_lambda_function_memory_size, aws_lambda_function_name, aws_lambda_function_version, aws_lambda_initialization_type, aws_region, aws_runtime_version, aws_runtime_version_arn
max_memory_used_mb Maximum memory used by the invocation, in MB, from the Telemetry API platform.report metrics.maxMemoryUsedMB field.
Type: int | (gauge)
Unit: digital,MB
Tagged by: aws_account_id, aws_lambda_function_memory_size, aws_lambda_function_name, aws_lambda_function_version, aws_lambda_initialization_type, aws_region, aws_runtime_version, aws_runtime_version_arn
memory_size_mb Configured memory size for the Lambda function, in MB, from the Telemetry API platform.report metrics.memorySizeMB field.
Type: int | (gauge)
Unit: digital,MB
Tagged by: aws_account_id, aws_lambda_function_memory_size, aws_lambda_function_name, aws_lambda_function_version, aws_lambda_initialization_type, aws_region, aws_runtime_version, aws_runtime_version_arn
out_of_memory Count increment for Lambda out-of-memory failures when emitted.
Type: int | (count)
Unit: count
Tagged by: aws_account_id, aws_lambda_function_memory_size, aws_lambda_function_name, aws_lambda_function_version, aws_lambda_initialization_type, aws_region, aws_runtime_version, aws_runtime_version_arn
post_runtime_duration Time between runtime completion and the platform report, in milliseconds, calculated from platform.runtimeDone and platform.report durationMs values.
Type: float | (gauge)
Unit: time,ms
Tagged by: aws_account_id, aws_lambda_function_memory_size, aws_lambda_function_name, aws_lambda_function_version, aws_lambda_initialization_type, aws_region, aws_runtime_version, aws_runtime_version_arn
produced_bytes Bytes produced by the invocation response, from the Telemetry API platform.runtimeDone metrics.producedBytes field when present.
Type: int | (gauge)
Unit: digital,B
Tagged by: aws_account_id, aws_lambda_function_memory_size, aws_lambda_function_name, aws_lambda_function_version, aws_lambda_initialization_type, aws_region, aws_runtime_version, aws_runtime_version_arn
response_duration_ms Response duration span, in milliseconds, when a Telemetry API span named responseDuration is emitted.
Type: float | (gauge)
Unit: time,ms
Tagged by: aws_account_id, aws_lambda_function_memory_size, aws_lambda_function_name, aws_lambda_function_version, aws_lambda_initialization_type, aws_region, aws_runtime_version, aws_runtime_version_arn
response_latency Response latency span duration, in milliseconds, when a Telemetry API span named responseLatency is emitted.
Type: float | (gauge)
Unit: time,ms
Tagged by: aws_account_id, aws_lambda_function_memory_size, aws_lambda_function_name, aws_lambda_function_version, aws_lambda_initialization_type, aws_region, aws_runtime_version, aws_runtime_version_arn
runtime_duration_ms Runtime phase duration for the invocation, in milliseconds, from the Telemetry API platform.runtimeDone metrics.durationMs field.
Type: float | (gauge)
Unit: time,ms
Tagged by: aws_account_id, aws_lambda_function_memory_size, aws_lambda_function_name, aws_lambda_function_version, aws_lambda_initialization_type, aws_region, aws_runtime_version, aws_runtime_version_arn
timeouts Count increment for invocations whose Telemetry API platform.runtimeDone status is timeout.
Type: int | (count)
Unit: count
Tagged by: aws_account_id, aws_lambda_function_memory_size, aws_lambda_function_name, aws_lambda_function_version, aws_lambda_initialization_type, aws_region, aws_runtime_version, aws_runtime_version_arn

Logging

awslambda

AWS Lambda log records forwarded from the Lambda Telemetry API.

Tags & Fields Description
aws_account_id
(tag)
AWS Account ID.
aws_lambda_function_memory_size
(tag)
Configured memory size for the Lambda function, in MB.
aws_lambda_function_name
(tag)
Lambda function name.
aws_lambda_function_version
(tag)
Lambda function version.
aws_lambda_initialization_type
(tag)
Initialization type of the Lambda function.
aws_log_from
(tag)
Log source type, currently function or extension.
aws_region
(tag)
AWS region where the function is executed.
aws_runtime_version
(tag)
Lambda runtime version reported by Telemetry API init or restore start events when available.
aws_runtime_version_arn
(tag)
Lambda runtime version ARN reported by Telemetry API init or restore start events when available.
message Log message.
Type: string
Unit: N/A
Tagged by: aws_account_id, aws_lambda_function_memory_size, aws_lambda_function_name, aws_lambda_function_version, aws_lambda_initialization_type, aws_log_from, aws_region, aws_runtime_version, aws_runtime_version_arn

Collector Support

  • OpenTelemetry
  • statsd
  • ddtrace # Currently, only Go is supported. Due to special operations required by ddtrace in the lambda environment, you need to add tracer.WithLambdaMode(false).

Feedback

Is this page helpful? ×