View a markdown version of this page

Observabilitas dengan Amazon CloudWatch - Batuan Dasar Amazon AgentCore

Observabilitas dengan Amazon CloudWatch

AgentCore pembayaran mendukung pengamatan melalui Amazon CloudWatch, sehingga Anda dapat memantau dan memecahkan masalah integrasi pembayaran Anda.

  • Amazon CloudWatch adalah layanan AWS pemantauan dan observabilitas. Ini mengumpulkan dan melacak metrik, log, dan jejak dari AWS sumber daya Anda, memberi Anda visibilitas ke kinerja aplikasi.

  • Vending logs adalah log yang dipublikasikan AWS layanan atas nama Anda langsung ke grup CloudWatch log Anda. Tidak seperti log aplikasi yang Anda instrumen sendiri, log vended dihasilkan secara otomatis oleh layanan. Anda mengkonfigurasi tempat untuk mengirimkannya.

  • Rentang mewakili unit kerja dalam permintaan (misalnya, panggilan API dan operasi hilirnya). Gunakan rentang untuk melacak aliran permintaan melalui sistem dan mengidentifikasi kemacetan atau kegagalan latensi.

Setelah Anda menyelesaikan prosedur penyiapan berikut, panggilan API bidang data apa pun (misalnya,CreatePaymentInstrument) menghasilkan log dan melacak data dalam grup CloudWatch log yang dikonfigurasi.

Prasyarat

  • Grup CloudWatch log sebagai tujuan pengiriman (misalnya,/bedrock-agentcore/payments/my-logs). Jika Anda tidak memilikinya, buat satu menggunakan konsol atau CLI.

  • Sumber daya ARN Anda. PaymentManager

Buat grup log:

contoh
Console

Buka CloudWatch konsol, buka Log > Grup log, dan pilih Buat grup log. Masukkan nama seperti /bedrock-agentcore/payments/my-logs dan pilih periode retensi pilihan Anda.

AWS CLI
aws logs create-log-group --log-group-name /bedrock-agentcore/payments/my-logs

Izin IAM

Pengguna atau peran IAM Anda harus memiliki izin berikut untuk membuat sumber daya pengiriman log dan rentang:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CloudWatchLogsVendedDelivery", "Effect": "Allow", "Action": [ "logs:CreateDelivery", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DeleteDelivery", "logs:DeleteDeliveryDestination", "logs:DeleteDeliverySource", "logs:DeleteLogGroup", "logs:DeleteResourcePolicy", "logs:DescribeLogGroups", "logs:DescribeResourcePolicies", "logs:GetDelivery", "logs:GetDeliveryDestination", "logs:GetDeliverySource", "logs:PutDeliveryDestination", "logs:PutDeliverySource", "logs:PutLogEvents", "logs:PutResourcePolicy", "logs:PutRetentionPolicy" ], "Resource": "*" }, { "Sid": "XRayApplicationSignalsCloudTrail", "Effect": "Allow", "Action": [ "xray:GetTraceSegmentDestination", "xray:ListResourcePolicies", "xray:PutResourcePolicy", "xray:PutTelemetryRecords", "xray:PutTraceSegments", "xray:UpdateTraceSegmentDestination", "application-signals:StartDiscovery", "cloudtrail:CreateServiceLinkedChannel" ], "Resource": "*" }, { "Sid": "CreateServiceLinkedRoleForAppSignals", "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "arn:*:iam::*:role/aws-service-role/application-signals.cloudwatch.amazonaws.com/AWSServiceRoleForCloudWatchApplicationSignals" }, { "Sid": "BedrockAgentCoreVendedLogDelivery", "Effect": "Allow", "Action": "bedrock-agentcore:AllowVendedLogDeliveryForResource", "Resource": "*" } ] }

Log yang dipasok

Log vended muncul sebagai log aplikasi di grup log Anda yang dikonfigurasi. Ini dihasilkan secara otomatis oleh layanan AgentCore pembayaran untuk setiap panggilan API pesawat data.

Rentang yang dijual

Rentang vended adalah catatan jejak untuk permintaan individu. Gunakan mereka untuk memvisualisasikan alur permintaan di AWS X-Ray. Setiap rentang mewakili unit kerja (misalnya, panggilan API dan operasi hilirnya), memungkinkan Anda mengidentifikasi kemacetan atau kegagalan latensi.

Nama rentang

AgentCore pembayaran memancarkan satu rentang per panggilan API pesawat data. Nama span mengikuti polanyaBedrock.AgentCore.Payments.<Operation>:

Nama Span Deskripsi

Bedrock.AgentCore.Payments.ProcessPayment

Memproses transaksi pembayaran

Bedrock.AgentCore.Payments.CreatePaymentInstrument

Buat instrumen pembayaran

Bedrock.AgentCore.Payments.GetPaymentInstrument

Ambil instrumen pembayaran

Bedrock.AgentCore.Payments.ListPaymentInstruments

Daftar instrumen pembayaran

Bedrock.AgentCore.Payments.DeletePaymentInstrument

Hapus instrumen pembayaran

Bedrock.AgentCore.Payments.GetPaymentInstrumentBalance

Dapatkan saldo instrumen

Bedrock.AgentCore.Payments.CreatePaymentSession

Buat sesi pembayaran

Bedrock.AgentCore.Payments.GetPaymentSession

Mengambil sesi pembayaran

Bedrock.AgentCore.Payments.ListPaymentSessions

Daftar sesi pembayaran

Bedrock.AgentCore.Payments.DeletePaymentSession

Hapus sesi pembayaran

Atribut rentang

Setiap rentang mencakup atribut berikut untuk penyaringan dan analisis di AWS X-Ray:

Atribut Deskripsi

aws.payments.payment_manager_id

ID Manajer Pembayaran untuk permintaan ini

aws.payments.payment_connector_id

ID Konektor Pembayaran (bila berlaku)

aws.payments.payment_instrument_id

ID Instrumen Pembayaran (bila berlaku)

aws.payments.payment_session_id

ID Sesi Pembayaran (bila berlaku)

aws.payments.spend_amount

Jumlah pembayaran (ProcessPayment hanya)

aws.payments.spend_currency

Mata uang pembayaran (ProcessPayment hanya)

aws.payments.session_remaining_budget

Sisa anggaran sesi setelah pembayaran (ProcessPayment hanya)

aws.payments.total_budget_amount

Total anggaran sesi (ProcessPayment hanya)

aws.payments.merchant

Alamat merchant (PayTo) untuk transaksi (ProcessPayment hanya)

aws.payments.payment_agent_name

Nama agen, jika diberikan melalui X-Amzn-Bedrock-AgentCore-Payments-Agent-Name header

aws.payments.token_fetch_latency_ms

Latensi pengambilan token kredenal dari AgentCore Identity (hanya) ProcessPayment

AWS Atribut standar juga disertakan pada setiap rentang:

  • aws.region— AWS Wilayah

  • aws.account.id— ID akun penelepon

  • aws.resource.arn— PaymentManager ARN

  • aws.request_id— ID Permintaan

  • http.response.status_code— Kode status respons HTTP

Metrik yang dijual

AgentCore pembayaran menerbitkan metrik berikut ke namespace Amazon CloudWatch Anda. Gunakan ini untuk membuat dasbor, mengatur alarm, dan memantau kesehatan pembayaran.

Metrik Unit Deskripsi

OperationSuccess

Hitungan

Jumlah panggilan API yang berhasil

OperationFailure

Hitungan

Jumlah panggilan API yang gagal

OperationLatency

Milidetik

End-to-end latensi per panggilan API

SpendAmount

Tidak ada

Jumlah pembayaran diproses (ProcessPayment hanya)

Throttles

Hitungan

Jumlah permintaan yang dibatasi

UserErrors

Hitungan

Jumlah kesalahan validasi sisi klien

ActiveSessions

Hitungan

Jumlah sesi pembayaran aktif

PaymentRequestCount

Hitungan

Total permintaan pembayaran

PaymentSuccessCount

Hitungan

Transaksi pembayaran yang berhasil

PaymentFailureCount

Hitungan

Transaksi pembayaran gagal

PaymentLatency

Milidetik

Latensi pemrosesan pembayaran

Dimensi metrik

Metrik diterbitkan dengan dimensi berikut untuk pemfilteran:

  • Operasi - Nama operasi API (selalu ada)

  • PaymentManagerId— ID Manajer Pembayaran (bila tersedia)

  • PaymentConnectorId— ID Konektor Pembayaran (bila tersedia)

  • AgentName— Nama agen (bila diberikan melalui header)

  • Mata uang — Mata uang pembayaran (untuk SpendAmount metrik)

Aktifkan observabilitas

contoh
Console

Dari halaman detail Manajer Pembayaran di AgentCore konsol Amazon Bedrock:

  1. Arahkan ke bagian Pengiriman dan penelusuran Log.

  2. Konfigurasikan pengiriman log ke grup CloudWatch log Anda.

  3. Aktifkan jejak untuk melihat bentang di AWS X-Ray.

Bagian Observability di halaman detail Payment Manager menyediakan metrik real-time termasuk jumlah sesi, pemanggilan API, tingkat keberhasilan transaksi, dan tingkat kesalahan.

AWS CLI
# Step 1: Allow vended log delivery for your Payment Manager aws bedrock-agentcore allow-vended-log-delivery-for-resource \ --resource-arn "arn:aws:bedrock-agentcore:us-west-2:123456789012:payment-manager/my-manager" # Step 2: Create a delivery source aws logs put-delivery-source \ --name "payments-logs" \ --resource-arn "arn:aws:bedrock-agentcore:us-west-2:123456789012:payment-manager/my-manager" \ --log-type "APPLICATION_LOGS" # Step 3: Create a delivery destination aws logs put-delivery-destination \ --name "payments-log-destination" \ --delivery-destination-configuration '{"destinationResourceArn": "arn:aws:logs:us-west-2:123456789012:log-group:/bedrock-agentcore/payments/my-logs"}' # Step 4: Create the delivery aws logs create-delivery \ --delivery-source-name "payments-logs" \ --delivery-destination-arn "arn:aws:logs:us-west-2:123456789012:delivery-destination:payments-log-destination"
AWS SDK
import boto3 # Allow vended log delivery for your Payment Manager agentcore_client = boto3.client("bedrock-agentcore-control", region_name="us-west-2") agentcore_client.allow_vended_log_delivery_for_resource( resourceArn="arn:aws:bedrock-agentcore:us-west-2:123456789012:payment-manager/my-manager" ) # Configure CloudWatch Logs delivery logs_client = boto3.client("logs", region_name="us-west-2") # Create delivery source logs_client.put_delivery_source( name="payments-logs", resourceArn="arn:aws:bedrock-agentcore:us-west-2:123456789012:payment-manager/my-manager", logType="APPLICATION_LOGS" ) # Create delivery destination logs_client.put_delivery_destination( name="payments-log-destination", deliveryDestinationConfiguration={ "destinationResourceArn": "arn:aws:logs:us-west-2:123456789012:log-group:/bedrock-agentcore/payments/my-logs" } ) # Create the delivery logs_client.create_delivery( deliverySourceName="payments-logs", deliveryDestinationArn="arn:aws:logs:us-west-2:123456789012:delivery-destination:payments-log-destination" )

Untuk informasi lebih lanjut tentang AgentCore observabilitas, lihat AgentCore Observabilitas. Untuk metrik dan rentang khusus gateway, lihat data observabilitas gateway yang dihasilkan. AgentCore