View a markdown version of this page

Observabilidad con Amazon CloudWatch - Base amazónica AgentCore

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Observabilidad con Amazon CloudWatch

AgentCore Payments permite la observabilidad a través de Amazon CloudWatch, por lo que puedes supervisar la integración de pagos y solucionar problemas.

  • Amazon CloudWatch es el servicio de AWS monitoreo y observabilidad. Recopila y rastrea las métricas, los registros y los rastros de sus AWS recursos, lo que le brinda visibilidad del rendimiento de las aplicaciones.

  • Los registros vendidos son registros que los AWS servicios publican en su nombre directamente en su grupo de CloudWatch registros. A diferencia de los registros de aplicaciones que usted mismo instrumenta, los registros vendidos los genera automáticamente el servicio. Usted configura dónde entregarlos.

  • Los intervalos representan las unidades de trabajo de una solicitud (por ejemplo, una llamada a la API y sus operaciones posteriores). Usa intervalos para rastrear el flujo de una solicitud a través del sistema e identificar los cuellos de botella o los fallos de latencia.

Tras completar los siguientes procedimientos de configuración, cualquier llamada a la API del plano de datos (por ejemploCreatePaymentInstrument) genera registros y datos de seguimiento en el grupo de registros configurado. CloudWatch

Requisitos previos

  • Un grupo de CloudWatch registros como destino de entrega (por ejemplo,/bedrock-agentcore/payments/my-logs). Si no tiene uno, cree uno mediante la consola o la CLI.

  • El ARN del recurso de su. PaymentManager

Cree un grupo de registros:

ejemplo
Console

Abra la CloudWatch consola, vaya a Registros > Grupos de registros y elija Crear grupo de registros. Introduzca un nombre similar /bedrock-agentcore/payments/my-logs y seleccione el período de retención que prefiera.

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

Permisos de IAM

Tu usuario o rol de IAM debe tener los siguientes permisos para crear, registrar y abarcar los recursos de entrega:

{ "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": "*" } ] }

Registros proporcionados

Los registros vendidos aparecen como registros de aplicaciones en el grupo de registros configurado. El servicio de AgentCore pagos los genera automáticamente para cada llamada a la API del plano de datos.

Espacios vendidos

Los intervalos vendidos son registros de rastreo de solicitudes individuales. Utilízalos para visualizar el flujo de solicitudes de entrada. AWS X-Ray Cada intervalo representa una unidad de trabajo (por ejemplo, una llamada a la API y sus operaciones posteriores), lo que te permite identificar los cuellos de botella o los fallos de latencia.

Nombres de grupos

AgentCore payments emite un intervalo por cada llamada a la API del plano de datos. Los nombres de los intervalos siguen el patrónBedrock.AgentCore.Payments.<Operation>:

Nombre de Span Description (Descripción)

Bedrock.AgentCore.Payments.ProcessPayment

Procesa una transacción de pago

Bedrock.AgentCore.Payments.CreatePaymentInstrument

Crea un instrumento de pago

Bedrock.AgentCore.Payments.GetPaymentInstrument

Recupera un instrumento de pago

Bedrock.AgentCore.Payments.ListPaymentInstruments

Enumere los instrumentos de pago

Bedrock.AgentCore.Payments.DeletePaymentInstrument

Eliminar un instrumento de pago

Bedrock.AgentCore.Payments.GetPaymentInstrumentBalance

Obtenga el saldo del instrumento

Bedrock.AgentCore.Payments.CreatePaymentSession

Crea una sesión de pago

Bedrock.AgentCore.Payments.GetPaymentSession

Recuperar una sesión de pago

Bedrock.AgentCore.Payments.ListPaymentSessions

Enumera las sesiones de pago

Bedrock.AgentCore.Payments.DeletePaymentSession

Eliminar una sesión de pago

Atributos Span

Cada intervalo incluye los siguientes atributos para el filtrado y el análisis en AWS X-Ray:

Atributo Description (Descripción)

aws.payments.payment_manager_id

El identificador del gestor de pagos de esta solicitud

aws.payments.payment_connector_id

El ID del conector de pagos (cuando corresponda)

aws.payments.payment_instrument_id

El identificador del instrumento de pago (cuando proceda)

aws.payments.payment_session_id

El identificador de la sesión de pago (cuando proceda)

aws.payments.spend_amount

El importe del pago (ProcessPayment únicamente)

aws.payments.spend_currency

La moneda de pago (ProcessPayment únicamente)

aws.payments.session_remaining_budget

Presupuesto restante de la sesión después del pago (ProcessPayment únicamente)

aws.payments.total_budget_amount

Presupuesto total de la sesión (ProcessPayment únicamente)

aws.payments.merchant

La dirección del comerciante (PayTo) de la transacción (ProcessPayment únicamente)

aws.payments.payment_agent_name

El nombre del agente, si se proporciona en el encabezado X-Amzn-Bedrock-AgentCore-Payments-Agent-Name

aws.payments.token_fetch_latency_ms

Latencia de la recuperación del token de credenciales desde AgentCore Identity (únicamente) ProcessPayment

También se incluyen AWS atributos estándar en cada intervalo:

  • aws.region— La AWS región

  • aws.account.id— El identificador de la cuenta de la persona que llama

  • aws.resource.arn— El ARN PaymentManager

  • aws.request_id— El ID de la solicitud

  • http.response.status_code— El código de estado de la respuesta HTTP

Métricas vendidas

AgentCore payments publica las siguientes métricas en tu espacio de CloudWatch nombres de Amazon. Utilízalos para crear paneles, configurar alarmas y supervisar el estado de los pagos.

Métrica Unidad Description (Descripción)

OperationSuccess

Recuento

Número de llamadas a la API exitosas

OperationFailure

Recuento

Número de llamadas a la API fallidas

OperationLatency

Milisegundos

End-to-end latencia por llamada a la API

SpendAmount

Ninguno

Importe de pago procesado (ProcessPayment únicamente)

Throttles

Recuento

Número de solicitudes limitadas

UserErrors

Recuento

Número de errores de validación del lado del cliente

ActiveSessions

Recuento

Número de sesiones de pago activas

PaymentRequestCount

Recuento

Total de solicitudes de pago

PaymentSuccessCount

Recuento

Transacciones de pago exitosas

PaymentFailureCount

Recuento

Transacciones de pago fallidas

PaymentLatency

Milisegundos

Latencia en el procesamiento de pagos

Dimensiones de la métrica

Las métricas se publican con las siguientes dimensiones de filtrado:

  • Operación: el nombre de la operación de la API (siempre presente)

  • PaymentManagerId— El ID del administrador de pagos (cuando esté disponible)

  • PaymentConnectorId— El ID del conector de pagos (cuando esté disponible)

  • AgentName— El nombre del agente (cuando se proporciona en el encabezado)

  • Divisa: la moneda de pago (para el SpendAmount sistema métrico)

Habilitar la observabilidad

ejemplo
Console

Desde la página de detalles del gestor de pagos de la consola de Amazon Bedrock AgentCore :

  1. Dirígete a la sección Registrar entregas y rastreo.

  2. Configure la entrega de registros a su grupo de CloudWatch registros.

  3. Habilite los rastros para ver los intervalos en AWS X-Ray.

La sección de observabilidad de la página de detalles del gestor de pagos proporciona métricas en tiempo real, como el recuento de sesiones, las invocaciones a la API, las tasas de éxito de las transacciones y las tasas de error.

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" )

Para obtener más información sobre la AgentCore observabilidad, consulte Observabilidad. AgentCore Para conocer las métricas y los intervalos específicos de las puertas de enlace, consulte los datos de observabilidad generados por las puertas de enlace. AgentCore