Parámetros de registro en Aurora PostgreSQL
Puede personalizar el comportamiento de registro de su clúster de base de datos de Aurora PostgreSQL modificando varios parámetros. En la siguiente tabla, puede encontrar los parámetros que afectan al tiempo que se almacenan los registros, cuándo se debe rotar el registro y si se debe generar el registro en formato CSV (valor separado por comas). También puede encontrar la salida de texto enviada a STDERR, entre otras configuraciones. Para cambiar la configuración de los parámetros que se pueden modificar, use un grupo de parámetros de clúster de base de datos personalizado para su clúster de base de datos de Aurora PostgreSQL. Para obtener más información, consulte Grupos de parámetros para Amazon Aurora. Como se indica en la tabla, log_line_prefix
no se puede cambiar.
Parámetro | Predeterminado | Descripción |
---|---|---|
log_destination | stderr | Establece el formato de salida para el registro. El valor predeterminado es |
log_filename |
postgresql.log.%Y-%m-%d-%H%M |
Especifica el patrón del nombre del archivo de registro. Además del valor predeterminado, este parámetro admite |
log_line_prefix | %t:%r:%u@%d:[%p]: | Define el prefijo de cada línea de registro que se escribe en |
log_rotation_age | 60 | Minutos después de los cuales el archivo de registro rota automáticamente. Puede cambiar este valor dentro del intervalo de 1 a 1440 minutos. Para obtener más información, consulte Configuración de la rotación del archivo de registro. |
log_rotation_size | – | El tamaño (kB) con el que se rota automáticamente el registro. Puede cambiar este valor dentro del intervalo de 50 000 a 1 000 000 kilobytes. Para obtener más información, consulte Configuración de la rotación del archivo de registro. |
rds.log_retention_period | 4320 | Los registros de PostgreSQL que superan el número de minutos especificado se eliminarán. El valor predeterminado de 4320 minutos elimina los archivos de registro transcurridos 3 días. Para obtener más información, consulte Configuración de periodo de retención de registros. |
Para identificar problemas de aplicaciones, puede buscar errores de consulta, errores de inicio de sesión, interbloqueos y errores de servidor graves en el registro. Por ejemplo, suponga que ha convertido una aplicación heredada de Oracle a Aurora PostgreSQL, pero no todas las consultas se han convertido correctamente. Estas consultas con formato incorrecto generan mensajes de error que se pueden encontrar en los registros para ayudar a identificar los problemas. Para más información sobre el registro de consultas, consulte Activación de registro de consultas para su clúster de base de datos de Aurora PostgreSQL.
En los temas siguientes, encontrará información sobre cómo configurar varios parámetros que controlan los detalles básicos de sus registros de PostgreSQL.
Temas
Configuración de periodo de retención de registros
El parámetro rds.log_retention_period
especifica cuánto tiempo su clúster de base de datos de Aurora PostgreSQL mantiene sus archivos de registro. La configuración predeterminada es de 3 días (4320 minutos), pero puede configurarla entre 1 día (1440 minutos) y 7 días (10 080 minutos). Asegúrese de que su clúster de base de datos de Aurora PostgreSQL tenga suficiente almacenamiento para almacenar los archivos de registro durante ese período de tiempo.
Le recomendamos que publique sus registros de forma rutinaria en Registros de Amazon CloudWatch, de modo que pueda ver y analizar los datos del sistema mucho tiempo después de que los registros se hayan eliminado de su clúster de base de datos de Aurora PostgreSQL. Para obtener más información, consulte Publicación de registros de Aurora PostgreSQL en Amazon CloudWatch Logs. Después de configurar la publicación en CloudWatch, Aurora no elimina un registro hasta que se publique en CloudWatch Logs.
Amazon Aurora comprime los registros de PostgreSQL más antiguos cuando el almacenamiento de la instancia de base de datos alcanza un umbral. Aurora comprime los archivos mediante la utilidad de compresión gzip. Para obtener más información, consulte el sitio web de gzip
Cuando el almacenamiento para la instancia de base de datos es bajo y se comprimen todos los registros disponibles, se obtiene una advertencia como la siguiente:
Warning: local storage for PostgreSQL log files is critically low for
this Aurora PostgreSQL instance, and could lead to a database outage.
Si no hay suficiente almacenamiento, Aurora podría eliminar los registros comprimidos de PostgreSQL antes de que finalice el período de retención especificado. Si eso sucede, verá un mensaje parecido al siguiente:
The oldest PostgreSQL log files were deleted due to local storage constraints.
Configuración de la rotación del archivo de registro
Aurora crea los nuevos archivos de registro cada hora de forma predeterminada. El tiempo lo controla el parámetro log_rotation_age
. Este parámetro tiene un valor predeterminado de 60 (minutos), pero puede configurarlo entre 1 minuto y 24 horas (1440 minutos). Cuando llega el momento de la rotación, se crea un nuevo archivo de registro distinto. Al archivo se le asigna un nombre de conformidad con el patrón especificado por el parámetro log_filename
.
Los archivos de registro también se pueden rotar según su tamaño, tal y como se especifica en el parámetro log_rotation_size
. Este parámetro especifica que el registro debe rotarse cuando alcance el tamaño especificado (en kilobytes). El log_rotation_size
predeterminado es de 100 000 kB (kilobytes) para un clúster de base de datos de Aurora PostgreSQL, pero puede establecer en cualquier valor desde 50 000 hasta 1 000 000 de kilobytes.
Los nombres de archivo de registro se basan en el patrón de nombre de archivo especificado en el parámetro log_filename
. La configuración disponible para este parámetro es la siguiente:
postgresql.log.%Y-%m-%d
: formato predeterminado para el nombre del archivo de registro. Incluye el año, el mes y la fecha en el nombre del archivo de registro.postgresql.log.%Y-%m-%d-%H
: incluye la hora en el formato del nombre del archivo de registro.postgresql.log.%Y-%m-%d-%H%M
: incluye la hora:minuto en el formato del nombre del archivo de registro.
Si establece el parámetro log_rotation_age
en menos de 60 minutos, establezca el parámetro log_filename
en el formato de minutos.
Para obtener más información, consulte log_rotation_age
log_rotation_size
Configuración del destino del registro (stderr
, csvlog
)
De forma predeterminada, Aurora PostgreSQL genera registros en formato de error estándar (stderr). Esta es la configuración predeterminada del parámetro log_destination
. Cada mensaje lleva el prefijo según el patrón especificado en el parámetro log_line_prefix
. Para obtener más información, consulte Descripción del parámetro log_line_prefix.
Aurora PostgreSQL también puede generar los registros con el formato csvlog
. csvlog
resulta útil para analizar los datos de registro como valores separados con coma (CSV). Por ejemplo, supongamos que utiliza la extensión log_fdw
para trabajar con los registros como tablas extranjeras. La tabla extranjera creada en los archivos de registro stderr
contienen una sola columna con datos de eventos de registro. Al añadir csvlog
al parámetro log_destination
, se obtiene el archivo de registro en formato CSV con demarcaciones para las múltiples columnas de la tabla externa. Esto le permite ordenar y analizar los registros con mayor facilidad.
Si especifica csvlog
para este parámetro, tenga en cuenta que se generan los archivos stderr
y csvlog
. Asegúrese de supervisar el almacenamiento consumido por los registros, teniendo en cuenta rds.log_retention_period
y otras configuraciones que afectan al almacenamiento de registros y a los análisis. Usar stderr
y csvlog
duplica de sobra el almacenamiento consumido por los registros.
Si añade csvlog
a log_destination
y quiere volver solo a stderr
solo, debe restablecer el parámetro. Para ello, utilice la consola de Amazon RDS y abra el grupo de parámetros del clúster de base de datos personalizado para su instancia. Elija el parámetro log_destination
, elija Edit parameter (Editar parámetro) y, a continuación, seleccione Reset (Restablecer).
Para obtener más información acerca de la configuración de los registros, consulte la entrada del blog sobre trabajar con registros de Amazon RDS y Aurora PostgreSQL: parte 1
Descripción del parámetro log_line_prefix
El formato de registro de stderr
prefija cada mensaje de registro con los detalles especificados por el parámetro log_line_prefix
, de la siguiente manera.
%t:%r:%u@%d:[%p]:t
No se puede cambiar esta configuración. Cada entrada de registro enviada a stderr
incluye la siguiente información.
-
%t
: hora de entrada del registro. -
%r
: dirección del host remoto. -
%u@%d
: nombre de usuario @ nombre de base de datos. -
[%p]
: ID del proceso si está disponible.