Información general de los registros de bases de datos de Aurora MySQL - Amazon Aurora

Información general de los registros de bases de datos de Aurora MySQL

Puede supervisar los siguientes tipos de archivos de registro de Aurora MySQL:

  • Registro de errores

  • Registro de consultas lentas

  • Registro general

  • Registro de auditoría

El registro de errores de Aurora MySQL se genera de forma predeterminada. Puede generar la consulta lenta y los registros generales estableciendo parámetros en su grupo de parámetros de base de datos.

Registros de errores de Aurora MySQL

Aurora MySQL escribe los errores en el archivo mysql-error.log. Cada archivo de registro tiene la hora a la que se generó (en UTC) agregada a su nombre. Los archivos de registro también tienen una marca temporal que ayuda a determinar cuándo se escribieron las entradas del registro.

Aurora MySQL solo escribe en el registro de errores durante el inicio, el cierre y cuando encuentra errores. Una instancia de base de datos puede pasar horas o días sin que se escriban nuevas entradas en el registro de errores. Si no hay entradas recientes, se debe a que el servidor no ha encontrado ningún error que genere una entrada en el registro.

Por diseño, los registros de errores se filtran para que solo se muestren los eventos inesperados, por ejemplo, los errores. No obstante, los registros de errores también contienen información adicional sobre la base de datos, por ejemplo, el progreso de la consulta, que no se muestra. Por lo tanto, incluso sin ningún error real, el tamaño de los registros de errores podría aumentar debido a las actividades continuas de la base de datos. Y, aunque puede que vea un tamaño determinado en bytes o kilobytes en los registros de error de la AWS Management Console, es posible que tengan 0 bytes al descargarlos.

Aurora MySQL escribe mysql-error.log en disco cada 5 minutos. Adjunta el contenido del registro a mysql-error-running.log.

Aurora MySQL rota el archivo mysql-error-running.log cada hora.

nota

Tenga en cuenta que el periodo de retención es diferente entre Amazon RDS y Aurora.

Registros generales y de consultas lentas de Aurora MySQL

Puede escribir el registro de consultas lentas de Aurora MySQLRDS para MySQL y el registro general en un archivo o en una tabla de la base de datos. Para hacerlo, establezca los parámetros en el grupo de parámetros de la base de datos. Para obtener información acerca de cómo crear y modificar un grupo de parámetros de base de datos, consulte Working with parameter groups (Trabajar con grupos de parámetros). Debe definir estos parámetros para poder ver el registro de consultas lentas o el registro general en la consola de Amazon RDS o a través de la API de Amazon RDS, la CLI de Amazon RDS o los SDK de AWS.

Puede controlar lo que registra Aurora MySQL con los parámetros de esta lista:

  • slow_query_log: para crear el registro de consultas lentas, use el valor 1. El valor predeterminado es 0.

  • general_log: para crear el registro general, use el valor 1. El valor predeterminado es 0.

  • long_query_time: para evitar que se registren consultas rápidas en el registro de consultas lentas, especifique el valor del tiempo de ejecución mínimo de una consulta, en segundos, para que se registre. El valor predeterminado es 10 segundos y el mínimo es 0. Si log_output = FILE, puede especificar un valor de punto flotante que llega a una resolución de microsegundos. Si log_output = TABLE, debe especificar un valor entero con resolución de segundos. Solo se registran las consultas cuyo tiempo de ejecución exceda el valor de long_query_time. Por ejemplo, si configura long_query_time como 0,1, evitará que se registren las consultas que tarden menos de 100 milisegundos en ejecutarse.

  • log_queries_not_using_indexes: para incluir en el registro de consultas lentas todas las consultas que no usen un índice, use el valor 1. Las consultas que no usen un índice se registran incluso si su tiempo de ejecución es inferior al valor del parámetro long_query_time. El valor predeterminado es 0.

  • log_output option: puede especificar una de las opciones siguientes para el parámetro log_output.

    • TABLE : las consultas generales se escriben en la tabla mysql.general_log y las consultas lentas en la tabla mysql.slow_log.

    • FILE: tanto los registros de las consultas generales como los de las consultas lentas se escriben en el sistema de archivos.

    • NONE: deshabilitar registro.

    En la versión 2 de Aurora MySQL, el valor predeterminado de log_output es FILE.

Para obtener más información sobre la el registro de consultas lentas y el registro general, consulte los siguientes temas de la documentación de MySQL:

Registro de auditoría de Aurora MySQL

El registro de auditoría para Aurora MySQL se llama auditoría avanzada. Para activar la auditoría avanzada, hay que establecer ciertos parámetros del clúster de base de datos. Para obtener más información, consulte Uso de auditorías avanzadas con un clúster de base de datos de Amazon Aurora MySQL.

Rotación y retención de registros en Aurora MySQL

Cuando el registro está habilitado, Amazon Aurora rota o elimina los archivos de registro a intervalos regulares. Esta medida es una precaución para reducir el riesgo de que un archivo de registro grande bloquee el uso de la base de datos o afecte al desempeño. Aurora MySQL gestiona la rotación y la eliminación de la siguiente manera:

  • El tamaño de los archivos de registro de errores de Aurora MySQL está limitado al 15 % del almacenamiento local de una instancia de base de datos. Para mantener este umbral, los registros se rotan automáticamente cada hora. Aurora MySQL elimina los registros después de 30 días o cuando se alcanza el 15 % del espacio en disco. Si el tamaño combinado de los archivos de registro sobrepasa el umbral después de eliminar los archivos de registro antiguos, los archivos de registro más grandes se eliminan hasta que el tamaño del archivo de registro deje de sobrepasar el umbral.

  • Aurora MySQL elimina los registros de auditoría, generales y de consultas lentas después de 24 horas o cuando se ha consumido el 15 % del almacenamiento.

  • Cuando el registro FILE está activado, los archivos de registro general y de consulta lenta se examinan cada hora y se eliminan los archivos de registro con más de 24 horas de antigüedad. En algunos casos, el tamaño restante del archivo de registro combinado después de la eliminación puede superar el umbral del 15 % del espacio local de una instancia de base de datos. En estos casos, los archivos de registro más antiguos se eliminan hasta que el tamaño del archivo de registro no sobrepase el umbral.

  • Cuando el registro TABLE está activado, las tablas de registro no se rotan ni se eliminan. Las tablas de registro se truncan cuando el tamaño de todos los registros combinados es demasiado grande. Puede suscribirse al evento low_free_storage para recibir una notificación cuando las tablas de registro se deban rotar o eliminar manualmente para liberar espacio. Para obtener más información, consulte Uso de notificaciones de eventos de Amazon RDS.

    Puede rotar la tabla mysql.general_log manualmente si llama al procedimiento mysql.rds_rotate_general_log. Para rotar la tabla mysql.slow_log puede ejecutar el procedimiento mysql.rds_rotate_slow_log.

    Cuando rota las tablas de registro manualmente, la tabla de registro actual se copia en una tabla de registro de copia de seguridad y se eliminan las entradas de la tabla de registro actual. Si la tabla de registro de copia de seguridad ya existe, se elimina antes de copiar la tabla del registro actual en la copia de seguridad. Puede consultar la tabla de registro de copia de seguridad si es necesaria. La tabla de registro de copia de seguridad para la tabla mysql.general_log se llama mysql.general_log_backup. La tabla de registro de copia de seguridad de la tabla mysql.slow_log se llama mysql.slow_log_backup.

  • Los registros de auditoría de Aurora MySQL se rotan cuando el tamaño de archivo alcanza los 100 MB y se eliminan después de 24 horas.

Para trabajar con los registros desde la consola de Amazon RDS, la API de Amazon RDS, la CLI de Amazon RDS o los SDK de AWS, configure el parámetro log_output en FILE. Al igual que el registro de errores de Aurora MySQL, estos archivos de registro rotan cada hora. Se conservan los archivos de registro que se generaron durante las 24 horas anteriores. Tenga en cuenta que el periodo de retención es diferente entre Amazon RDS y Aurora.