Publicación de registros de Amazon Aurora MySQL en Amazon CloudWatch Logs - Amazon Aurora

Publicación de registros de Amazon Aurora MySQL en Amazon CloudWatch Logs

Puede configurar su clúster de base de datos Aurora MySQL para publicar datos de registros generales, lentos, de auditoría y de errores en un grupo de registros en Amazon CloudWatch Logs. Con CloudWatch Logs, puede realizar análisis en tiempo real de los datos de registro y utilizar CloudWatch para crear alarmas y ver métricas. Puede utilizar CloudWatch Logs para almacenar los registros de registros en almacenamiento de larga duración.

Para publicar logs en CloudWatch Logs, se deben habilitar los logs respectivos. Los logs de errores están habilitados de forma predeterminada, pero debe habilitar explícitamente los demás tipos de logs. Para obtener información acerca de habilitar registros en MySQL, consulte Selecting General Query and Slow Query Log Output Destinations en la documentación de MySQL. Para obtener más información acerca de cómo habilitar los registros de auditoría de Aurora MySQL, consulte Habilitar la auditoría avanzada.

nota
  • Si la exportación de datos de log está deshabilitada, Aurora no elimina los grupos de logs o flujos de logs. Si la exportación de datos de log está deshabilitada, los datos de log de existentes seguirán disponibles en CloudWatch Logs, en función de la retención de logs y seguirá incurriendo en gastos por los datos de log de auditoría almacenados. Puede eliminar los flujos y los grupos de registros en la consola de CloudWatch Logs, la AWS CLI o la API de CloudWatch Logs.

  • Una forma alternativa de publicar los registros de auditoría en CloudWatch Logs consiste en habilitar la auditoría avanzada, configurar un grupo de parámetros de clúster de base de datos personalizado y establecer el parámetro server_audit_logs_upload como 1. El valor predeterminado para el parámetro del clúster de base de datos server_audit_logs_upload es 0. Para obtener información sobre cómo habilitar la auditoría avanzada, consulte Uso de auditorías avanzadas con un clúster de base de datos de Amazon Aurora MySQL.

    Si usa este método alternativo, debe tener un rol de IAM para obtener acceso a CloudWatch Logs y establecer el parámetro de nivel de clúster aws_default_logs_role en el ARN para esta función. Para obtener información acerca de la creación del rol de , consulte Configuración de roles de IAM para acceder a servicios de AWS. Sin embargo, si tiene el rol vinculado alservicio AWSServiceRoleForRDS, proporciona acceso a CloudWatch Logs y anula cualquier función definida por el usuario. Para obtener información acerca de los roles vinculados al servicio para Amazon RDS, consulte Uso de roles vinculados a servicios de Amazon Aurora.

  • Si no desea exportar logs de auditoría a CloudWatch Logs, asegúrese de que todos los métodos de exportación de logs de auditoría estén deshabilitados. Estos métodos son la AWS Management Console, la AWS CLI, la API de RDS y el parámetro server_audit_logs_upload.

  • El procedimiento es ligeramente distinto para clústeres de bases de datos de Aurora Serverless v1 que para clústeres de bases de datos con instancias aprovisionadas o instancias de bases de datos de Aurora Serverless v2. Los clústeres de Aurora Serverless v1 cargan automáticamente todos los tipos de registros que habilita a través de los parámetros de configuración.

    Por lo tanto, activa o desactiva la carga de registros para clústeres de bases de datos de Aurora Serverless v1 mediante la activación y desactivación de diferentes tipos de registros en el grupo de parámetros de clústeres de base de datos. No modifique la configuración del propio clúster a través de la AWS Management Console, la AWS CLI o la API de RDS. Para obtener información sobre cómo activar y desactivar los registros de MySQL para clústeres de Aurora Serverless v1, consulte Grupos de parámetros de Aurora Serverless v1.

Puede publicar registros de Aurora MySQL para clústeres aprovisionados en CloudWatch Logs con la consola.

Para publicar logs de Aurora MySQL desde la consola
  1. Abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/.

  2. En el panel de navegación, seleccione Databases (Bases de datos).

  3. Elija el clúster de base de datos de Aurora MySQL para el que desee publicar los datos de registro.

  4. Elija Modify.

  5. En la sección Logs exports (Exportaciones de registros), elija los registros que desea comenzar a publicar en CloudWatch Logs.

  6. Elija Continue (Continuar), seguido de Modify DB Cluster (Modificar clúster de base de datos) en la página de resumen.

Puede publicar registros de Aurora MySQL para clústeres aprovisionados con la CLI de AWS. Para ello, ejecute el comando modify-db-cluster de la AWS CLI con las siguientes opciones:

  • --db-cluster-identifier: identificador de clúster de base de datos.

  • --cloudwatch-logs-export-configuration: el ajuste de configuración para los tipos de registros que habilitar para exportar a CloudWatch Logs para el clúster de base de datos.

También puede publicar registros de Aurora MySQL; para ello, ejecute uno de los siguientes comandos de la AWS CLI:

Ejecute uno de estos comandos de la AWS CLI con las siguientes opciones:

  • --db-cluster-identifier: identificador de clúster de base de datos.

  • --engine: el motor de base de datos.

  • --enable-cloudwatch-logs-exports: el ajuste de configuración para los tipos de registros que habilitar para exportar a CloudWatch Logs para el clúster de base de datos.

Podrían ser necesarias otras opciones en función del comando de la AWS CLI que se ejecute.

El siguiente comando modifica un clúster de base de datos Aurora MySQL existente para publicar archivos de registro en CloudWatch Logs.

Para Linux, macOS o Unix:

aws rds modify-db-cluster \ --db-cluster-identifier mydbcluster \ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["error","general","slowquery","audit"]}'

En Windows:

aws rds modify-db-cluster ^ --db-cluster-identifier mydbcluster ^ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["error","general","slowquery","audit"]}'

El siguiente comando crea un clúster de base de datos Aurora MySQL para publicar archivos de registro en CloudWatch Logs.

Para Linux, macOS o Unix:

aws rds create-db-cluster \ --db-cluster-identifier mydbcluster \ --engine aurora \ --enable-cloudwatch-logs-exports '["error","general","slowquery","audit"]'

En Windows:

aws rds create-db-cluster ^ --db-cluster-identifier mydbcluster ^ --engine aurora ^ --enable-cloudwatch-logs-exports '["error","general","slowquery","audit"]'

Puede publicar registros de Aurora MySQL para clústeres aprovisionados con la API de RDS. Para ello, ejecute la operación ModifyDBCluster con las siguientes opciones:

  • DBClusterIdentifier: identificador de clúster de base de datos.

  • CloudwatchLogsExportConfiguration: el ajuste de configuración para los tipos de registros que habilitar para exportar a CloudWatch Logs para el clúster de base de datos.

También puede publicar logs de Aurora MySQL con la API de RDS ejecutando una de las siguientes operaciones de API de RDS:

Ejecute la operación de la API de RDS con los siguientes parámetros:

  • DBClusterIdentifier: identificador de clúster de base de datos.

  • Engine: el motor de base de datos.

  • EnableCloudwatchLogsExports: el ajuste de configuración para los tipos de registros que habilitar para exportar a CloudWatch Logs para el clúster de base de datos.

Podrían ser necesarios otros parámetros en función del comando de la AWS CLI que ejecute.

Monitoreo de eventos de registro en Amazon CloudWatch

Después de habilitar los eventos de registro de Aurora MySQL, puede monitorizar los eventos en Amazon CloudWatch Logs. Se crea un nuevo grupo de registros automáticamente para el clúster de base de datos Aurora con el siguiente prefijo, donde cluster-name representa el nombre del clúster de base de datos y log_type representa el tipo de registro.

/aws/rds/cluster/cluster-name/log_type

Por ejemplo, si configura la función de exportación para que incluya el log de consultas lentas para un clúster de base de datos denominado mydbcluster, los datos de consultas lentas se almacenan en el grupo de logs /aws/rds/cluster/mydbcluster/slowquery.

Todos los eventos de todas las instancias de base de datos en un clúster de base de datos se envían a un grupo de logs utilizando flujos de registros distintos. El comportamiento depende de cuál de las siguientes condiciones se da:

  • Existe un grupo de registros con el nombre especificado.

    Aurora utiliza el grupo de registros existente para exportar los datos de registros para el clúster. Puede utilizar la configuración automática, como AWS CloudFormation, para crear grupos de logs con periodos de retención de registros predefinidos, filtros de métricas y acceso de cliente.

  • No existe un grupo de registros con el nombre especificado.

    Cuando se detecta una entrada de registro coincidente en el archivo de registros de la instancia, Aurora MySQL crea automáticamente un nuevo grupo de registros en CloudWatch Logs. El grupo de registros utiliza el período de retención de registros predeterminado de Never Expire (Nunca caduca).

    Use la consola de CloudWatch Logs, la AWS CLI o la API de CloudWatch Logs para modificar el periodo de retención de registros. Para obtener más información sobre cómo cambiar los periodos de retención de registro en CloudWatch Logs, consulte Cambiar la retención de datos de registro en CloudWatch Logs.

Use la consola de CloudWatch Logs, la AWS CLI o la API de CloudWatch Logs para buscar información en los eventos de registro para un clúster de base de datos. Para obtener más información sobre la búsqueda y el filtrado de datos de registro, consulte Búsqueda y filtrado de datos de registros.