File di log del database RDS per PostgreSQL - Amazon Relational Database Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

File di log del database RDS per PostgreSQL

È possibile monitorare i seguenti tipi di file di log :

  • Log di PostgreSQL

  • Registro di aggiornamento

  • Log degli errori di autenticazione del database IAM

    Nota

    Per abilitare i log degli errori di autenticazione del database IAM, è necessario prima abilitare l’autenticazione del database IAM per l’istanza database RDS per PostgreSQL. Per ulteriori informazioni sull’abilitazione database IAM, consulta Abilitazione e disabilitazione dell’autenticazione database IAM.

RDS per PostgreSQL registra le attività del database nel file di log PostgreSQL predefinito. Per un'istanza database PostgreSQL on-premise, questi messaggi vengono archiviati localmente in log/postgresql.log. Per un'istanza database RDS per PostgreSQL, il file di log è disponibile nell'istanza Amazon RDS. Questi log sono accessibili anche tramite la Console di gestione AWS, in cui è possibile visualizzarli o scaricarli. Il livello di registrazione predefinito rileva gli errori di accesso, gli errori irreversibili del server, i deadlock e gli errori delle query.

Per ulteriori informazioni su come visualizzare, scaricare e guardare i registri di database basati su file, consulta Monitoraggio dei file di log di Amazon RDS. Per ulteriori informazioni sui registri PostgreSQL, consulta Working with Amazon RDS and Aurora PostgreSQL logs: Part 1 (Utilizzo dei registri RDS e Aurora PostgreSQL: parte 1) e Working with Amazon RDS and Aurora PostgreSQL logs: Part 2 (Utilizzo dei registri RDS e Aurora PostgreSQL: parte 2).

Oltre ai log PostgreSQL standard trattati in questo argomento, RDS per PostgreSQL supporta anche l'estensione di audit PostgreSQL (pgAudit). La maggior parte dei settori regolamentati e degli enti governativi deve mantenere un log di audit o un audit trail delle modifiche apportate ai dati per conformità ai requisiti legali. Per informazioni sull'installazione e sull'utilizzo di pgAudit, consulta Utilizzo di pgAudit per registrare l'attività del database.

Pubblicazione di log di PostgreSQL su Amazon CloudWatch Logs

Per archiviare i record di log PostgreSQL in uno storage estremamente durevole, puoi usare Amazon CloudWatch Logs. Con CloudWatch Logs, puoi anche eseguire analisi in tempo reale dei dati di log e usare CloudWatch per visualizzare parametri e creare allarmi. Ad esempio, se imposti log_statement su ddl, puoi impostare un avviso per notificare ogni volta che viene eseguita un'istruzione DDL. Puoi scegliere di caricare i log PostgreSQL in File di log CloudWatch durante il processo di creazione dell'istanza database RDS per PostgreSQL. Se hai scelto di non caricare i registri, puoi successivamente modificare l'istanza per iniziare a caricare i registri da quel momento in poi. In altre parole, i log esistenti non vengono caricati. Solo i nuovi log vengono caricati quando vengono creati sull'istanza database RDS per PostgreSQL modificata.

Tutte le versioni RDS per PostgreSQL attualmente disponibili supportano la pubblicazione di file di registro in File di log CloudWatch. Per informazioni dettagliate, consulta Amazon RDS for PostgreSQL updates (Aggiornamenti di Amazon RDS per PostgreSQL) in Amazon RDS for PostgreSQL Release Notes (Note di rilascio di Amazon RDS per PostgreSQL).

Per utilizzare CloudWatch Logs, configura l'istanza database di RDS per PostgreSQL per pubblicare i dati di log in un gruppo di log.

Puoi pubblicare i seguenti tipi di log in CloudWatch Logs per RDS per PostgreSQL:

  • Log di PostgreSQL

  • Registro di aggiornamento

  • Log degli errori di autenticazione del database IAM

Dopo aver completato la configurazione, Amazon RDS pubblica gli eventi di log sui flussi di log in un gruppo di log CloudWatch. Ad esempio, i dati di log di PostgreSQL sono archiviati in un gruppo di log /aws/rds/instance/my_instance/postgresql. Per visualizzare i log, apri la console CloudWatch all'indirizzo https://console.aws.amazon.com/cloudwatch/.

Per pubblicare i log PostgreSQL su CloudWatch Logs tramite console
  1. Apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel pannello di navigazione, scegliere Databases (Database).

  3. Scegliere l'istanza database che si desidera modificare e selezionare Modify (Modifica).

  4. Nella sezione Log exports (Esportazioni log) scegliere i log che si vuole iniziare a pubblicare in CloudWatch Logs.

    La sezione Log exports (Esportazioni log) è disponibile solo per versioni PostgreSQL che supportano la pubblicazione in CloudWatch Logs.

  5. Scegliere Continue (Continua) e quindi Modify DB Instance (Modifica istanza database) nella pagina di riepilogo.

Puoi pubblicare i log PostgreSQL con AWS CLI. Puoi chiamare il comando modify-db-instance con i parametri seguenti.

  • --db-instance-identifier

  • --cloudwatch-logs-export-configuration

Nota

Viene sempre applicata all'istanza database una modifica all'opzione --cloudwatch-logs-export-configuration immediatamente. Pertanto, le opzioni --apply-immediately e --no-apply-immediately non hanno alcun effetto.

Puoi anche pubblicare i log PostgreSQL chiamando i seguenti comandi CLI:

Esegui uno di questi comandi CLI con le opzioni seguenti:

  • --db-instance-identifier

  • --enable-cloudwatch-logs-exports

  • --db-instance-class

  • --engine

Altre opzioni potrebbero essere richieste a seconda del comando CLI eseguito.

Esempio Modifica di un'istanza per la pubblicazione di log in CloudWatch Logs

L'esempio seguente modifica un'istanza database PostgreSQL esistente per pubblicare file di log su CloudWatch Logs. Il valore --cloudwatch-logs-export-configuration è un oggetto JSON. La chiave per questo oggetto è EnableLogTypes e il suo valore è una matrice di stringhe con qualsiasi combinazione di postgresql e upgrade.

Per Linux, macOS o Unix:

aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["postgresql", "upgrade"]}'

Per Windows:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["postgresql","upgrade"]}'
Esempio Creazione di un'istanza per la pubblicazione di log su CloudWatch Logs

L'esempio seguente crea un'istanza database PostgreSQL e pubblica file di log su CloudWatch Logs. Il valore --enable-cloudwatch-logs-exports è una matrice di stringhe JSON. Le stringhe possono essere una qualsiasi combinazione di postgresql e upgrade.

Per Linux, macOS o Unix:

aws rds create-db-instance \ --db-instance-identifier mydbinstance \ --enable-cloudwatch-logs-exports '["postgresql","upgrade"]' \ --db-instance-class db.m4.large \ --engine postgres

Per Windows:

aws rds create-db-instance ^ --db-instance-identifier mydbinstance ^ --enable-cloudwatch-logs-exports '["postgresql","upgrade"]' ^ --db-instance-class db.m4.large ^ --engine postgres

È possibile pubblicare i log PostgreSQL con RDS API. Puoi chiamare l'operazione ModifyDBInstance con i parametri seguenti:

  • DBInstanceIdentifier

  • CloudwatchLogsExportConfiguration

Nota

Viene sempre applicata all'istanza database una modifica al parametro CloudwatchLogsExportConfiguration immediatamente. Pertanto, il parametro ApplyImmediately non ha alcun effetto.

È possibile anche pubblicare i log PostgreSQL eseguendo una delle seguenti azioni API RDS:

Esegui una di queste azioni API RDS con i seguenti parametri:

  • DBInstanceIdentifier

  • EnableCloudwatchLogsExports

  • Engine

  • DBInstanceClass

Altri parametri potrebbero essere richiesti a seconda dell'operazione eseguita.