Registros de funciones perimetrales - Amazon CloudFront

Registros de funciones perimetrales

Puede utilizar registros de Amazon CloudWatch para obtener registros de las funciones periféricas de Lambda@Edge y CloudFront Functions. Puede acceder a los registros mediante la consola de CloudWatch o la API de CloudWatch Logs.

importante

Recomendamos utilizar los registros de acceso para comprender la naturaleza de las solicitudes hechas a su contenido y no como una relación exhaustiva de todas las solicitudes. CloudFront envía registros de funciones perimetrales en la medida en que sea posible. La entrada de registro de una solicitud determinada puede entregarse mucho después de la solicitud se haya procesado realmente y, en casos contados, es probable que una entrada de registro no se entregue en absoluto. Cuando se omite una entrada de registro de los registros de funciones perimetrales, la cantidad de entradas de los registros de funciones perimetrales no coincidirá con el uso que aparece en los informes de facturación y de uso de AWS.

Registros de Lambda@Edge

Lambda@Edge envía automáticamente registros de funciones a CloudWatch Logs, donde crea flujos de registro en las Regiones de AWS donde se invocan las funciones. Al crear o modificar una función en AWS Lambda, puede utilizar el nombre predeterminado del grupo de registro de CloudWatch o personalizarlo.

  • El nombre predeterminado del grupo de registro es /aws/lambda/<FunctionName> donde <FunctionName> es el nombre que especificó al crear la función. Al enviar registros a CloudWatch, Lambda@Edge agregará automáticamente el prefijo us-east-1 al nombre de la función, de modo que el nombre del grupo de registro sea /aws/lambda/us-east-1.<FunctionName>. Este prefijo corresponde a la Región de AWS donde se creó la función. Este prefijo sigue formando parte del nombre del grupo de registro, incluso en otras regiones en las que se invoque la función.

  • Si especifica un nombre de grupo de registro personalizado, como /MyLogGroup, Lambda@Edge no agregará el prefijo de región. El nombre del grupo de registros permanece igual en todas las demás regiones en las que se invoca la función.

nota

Si crea un grupo de registro personalizado y especifica el mismo nombre que el predeterminado /aws/lambda/<FunctionName>, Lambda@Edge agrega el prefijo us-east-1 al nombre de la función.

Además de personalizar el nombre del grupo de registros, las funciones de Lambda @Edge admiten los formatos de registro JSON y de texto sin formato, y el filtrado a nivel de registro. Para obtener más información, consulte Configuración de controles de registro avanzados para la función de Lambda en la Guía para desarrolladores de AWS Lambda.

nota

Lambda@Edge limita los registros en función del volumen de solicitudes y el tamaño de los registros.

Debe revisar los archivos de registro de CloudWatch en la región correcta de para ver sus archivos de registro de la función Lambda@Edge. Para ver las regiones donde la función de Lambda@Edge se está ejecutando, consulte los gráficos de métricas para la función en la consola de CloudFront. Las métricas se muestran para cada región de . En la misma página, puede elegir una región y, a continuación, consultar los archivos de registro para dicha región para investigar problemas.

Para obtener más información acerca cómo utilizar CloudWatch Logs con las funciones de Lambda@Edge, consulte los temas siguientes:

Registros de CloudFront Functions

Si el código de una función de CloudFront contiene instrucciones console.log(), CloudFront Functions envía automáticamente estas líneas de registro a CloudWatch Logs. Si no hay instrucciones console.log(), no se envía nada a CloudWatch Logs.

CloudFront Functions siempre crea flujos de registro en la región EE. UU. Este (Norte de Virginia) (us-east-1), independientemente de la ubicación de borde que ejecuta la función. El nombre del grupo de registro tiene el formato /aws/cloudfront/function/<FunctionName>, donde <FunctionName> es el nombre que asignó a la función cuando la creó. El nombre del flujo de registro tiene el formato YYYY/M/D/UUID.

A continuación, se muestra un mensaje de registro de ejemplo enviado a CloudWatch Logs. Cada línea comienza con un ID que identifica de forma única una solicitud de CloudFront. El mensaje comienza con una línea START que incluye el ID de distribución de CloudFront y termina con una línea END. Entre las líneas START y END, se encuentran las líneas de registro que las instrucciones console.log() crearon en la función.

U7b4hR_RaxMADupvKAvr8_m9gsGXvioUggLV5Oyq-vmAtH8HADpjhw== START DistributionID: E3E5D42GADAXZZ U7b4hR_RaxMADupvKAvr8_m9gsGXvioUggLV5Oyq-vmAtH8HADpjhw== Example function log output U7b4hR_RaxMADupvKAvr8_m9gsGXvioUggLV5Oyq-vmAtH8HADpjhw== END
nota

CloudFront Functions envía registros a CloudWatch solo para las funciones de la etapa LIVE que se ejecutan en respuesta a solicitudes y respuestas de producción. Al probar una función, CloudFront no envía ningún registro a CloudWatch. La salida de prueba contiene información sobre errores, uso de cómputo y registros de funciones (instrucciones console.log()), pero esta información no se envía a CloudWatch.

CloudFront Functions utiliza un rol vinculado a servicios de AWS Identity and Access Management (IAM) para enviar registros a CloudWatch Logs en su cuenta. Un rol vinculado a servicios es un rol de IAM que está vinculado directamente a un Servicio de AWS. El servicio predefine los roles vinculados a servicios, que incluyen todos los permisos que el servicio requiere para llamar a otros Servicios de AWS para usted. CloudFront Functions usa el rol vinculado a servicios AWSServiceRoleForCloudFrontLogger. Para obtener más información sobre este rol, consulte Roles vinculados a servicios para Lambda@Edge (Lambda@Edge utiliza el mismo rol vinculado a servicios).

Cuando una función produce un error de validación o de ejecución, la información se registra en los registros estándar y en los registros en tiempo real. Para obtener información específica sobre el error, consulte los campos x-edge-result-type, x-edge-response-result-type y x-edge-detailed-result-type.