Registros de funciones perimetrales - Amazon CloudFront

Registros de funciones perimetrales

Puede utilizar registros de Amazon CloudWatch para obtener registros de las funciones perimetrales de Lambda@Edge y de CloudFront Functions. Acceda 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 ejecutan las funciones. El nombre del grupo de registro tiene el formato /aws/lambda/us-east-1.function-name, donde function-name es el nombre que asignó a la función cuando la creó y us-east-1 es el código de región para la Región de AWS en la que se creó la función. El nombre del grupo de registro siempre contiene us-east-1, incluso para los grupos de registro de otras regiones en las que se ejecuta la función.

nota

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

Debes revisar los archivos de registro de CloudWatch en la Región de AWS correcta para ver los 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 AWS. 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 lo siguiente:

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, utilización 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. Los roles vinculados a servicios están predefinidos por el servicio e incluyen todos los permisos que el servicio requiere para llamar a otros servicios de AWS en su nombre. CloudFront Functions utiliza un rol vinculado a servicios llamado 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 de CloudFront. La información sobre el error se registra en los campos x-edge-result-type, x-edge-response-result-type y x-edge-detailed-result-type.