Parámetros de registro en RDS para PostgreSQL
Puede personalizar el comportamiento de registro de su instancia de base de datos de RDS para 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 base de datos personalizado para su Instancia de base de datos RDS para PostgreSQL. Para obtener más información, consulte Grupos de parámetros de base de datos para instancias de Amazon RDS. 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 |
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. De forma predeterminada, este parámetro no se usa porque los registros rotan en función del parámetro |
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 Amazon RDS 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 instancia de base de datos de RDS para 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 instancia de base de datos de RDS para 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 instancia de base de datos de RDS para 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 . Instancia de base de datos RDS para PostgreSQL. Para obtener más información, consulte Publicación de registros de PostgreSQL en Amazon CloudWatch Logs.
Configuración de la rotación del archivo de registro
Amazon RDS 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). Para una instancia de base de datos de RDS para PostgreSQL, log_rotation_size
no está establecido, es decir, no se ha especificado ningún valor. Sin embargo, puede establecer el parámetro entre 0 y 2 097 151 kB (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.
Para obtener más información, consulte log_rotation_age
log_rotation_size
Configuración del destino del registro (stderr
, csvlog
)
De forma predeterminada, Amazon RDS 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.
RDS para 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. Para obtener información sobre cómo usar log_fdw
con csvlog
, consulte Uso de la extensión log_fdw para acceder al registro de base de datos mediante SQL.
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 de la 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.