AWS official guide: build a Bedrock invocation observability data lake in five stages

AWS ML Blog · rss · 2026-11-11

The AWS ML Blog published a hands-on guide solving the "see the bill, not the calls" observability problem for large-scale Amazon Bedrock workloads.

Architecture: Native Bedrock invocation logs are forwarded via CloudWatch subscription filters from linked accounts into a central account. A Lambda unwraps batched events, strips noise, and flattens the nested IAM identity field; Amazon Data Firehose converts records to Parquet in S3; a Glue table plus Athena lets you query everything with plain SQL. Per invocation you get: full prompt and response, input/output token counts, model used, stop reason, account/timestamp, and IAM role.

Five deployment stages: deploy the central CloudFormation stack first (capture the destination ARN), deploy the logging stack in each source account, manually enable account-level Bedrock invocation logging (not a CloudFormation resource), verify Parquet objects land in S3, and optionally build a QuickSight dashboard and join with the Cost and Usage Report for true per-prompt spend.

All templates, Lambda code, and SQL queries are open-sourced in the AWS Sample Bedrock Invocation Data Lake GitHub repo.

Original post →

More from coding & agent

coding & agent channel →