

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à.

# 
<a name="USER_LogAccess.Concepts.PostgreSQL"></a>

È 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](UsingWithRDS.IAMDBAuth.Enabling.md).

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 Console di gestione AWS, dove è 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](USER_LogAccess.md). Per ulteriori informazioni sui registri PostgreSQL, consulta [Working with Amazon RDS and Aurora PostgreSQL logs: Part 1](https://aws.amazon.com/blogs/database/working-with-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](https://aws.amazon.com/blogs/database/working-with-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](Appendix.PostgreSQL.CommonDBATasks.pgaudit.md).

**Topics**
+ [

# Parametri per la registrazione di log in RDS per PostgreSQL
](USER_LogAccess.Concepts.PostgreSQL.overview.parameter-groups.md)
+ [

# Attivazione della registrazione delle query per l'
](USER_LogAccess.Concepts.PostgreSQL.Query_Logging.md)
+ [

## Pubblicazione dei log PostgreSQL su Amazon Logs CloudWatch
](#USER_LogAccess.Concepts.PostgreSQL.PublishtoCloudWatchLogs)

# Parametri per la registrazione di log in RDS per PostgreSQL
<a name="USER_LogAccess.Concepts.PostgreSQL.overview.parameter-groups"></a>

È possibile personalizzare il comportamento di registrazione per l'istanza database RDS per PostgreSQL modificando vari parametri. Nella tabella seguente sono riportati, tra le altre impostazioni, i parametri che stabiliscono la durata di archiviazione dei log, quando ruotarli e se l'output del log è in formato CSV (valori separati da virgole). Puoi anche trovare l'output di testo inviato a STDERR, tra le altre impostazioni. Per modificare le impostazioni per i parametri modificabili, utilizza un gruppo di parametri del·clusterdatabase personalizzato per L'istanza database RDS per PostgreSQL. Per ulteriori informazioni, consulta [Gruppi di parametri database per istanze database Amazon RDS](USER_WorkingWithDBInstanceParamGroups.md).


| Parametro | Predefinita | Description | 
| --- | --- | --- | 
| log\$1destination | stderr | Imposta il formato di output per il registro. L'impostazione predefinita è `stderr`, ma puoi anche specificare il formato CSV aggiungendo `csvlog` all'impostazione. Per ulteriori informazioni, consulta [Impostazione della destinazione del registro (`stderr`, `csvlog`)](#USER_LogAccess.Concepts.PostgreSQL.Log_Format).  | 
| log\$1filename |  postgresql.log.%Y-%m-%d-%H  | Specifica il modello per il nome del file di log. Oltre al valore predefinito, questo parametro supporta `postgresql.log.%Y-%m-%d` e `postgresql.log.%Y-%m-%d-%H%M` per il modello del nome del file.  | 
| log\$1line\$1prefix | %t:%r:%u@%d:[%p]: | Definisce il prefisso per ogni riga di log che viene scritta in `stderr`, per annotare l'ora (%t), l'host remoto (%r), l'utente (%u), il database (%d) e l'ID del processo (%p). | 
| log\$1rotation\$1age | 60 | I minuti dopo i quali il file di log viene ruotato automaticamente. È possibile modificarli con un valore compreso tra 1 e 1440 minuti. Per ulteriori informazioni, consulta [Impostazione della rotazione dei file di log](#USER_LogAccess.Concepts.PostgreSQL.log_rotation).  | 
| log\$1rotation\$1size | – | La dimensione (KB) che stabilisce la rotazione automatica del log. Per impostazione predefinita, questo parametro non viene utilizzato perché i log vengono ruotati in base al parametro `log_rotation_age`. Per ulteriori informazioni, consulta [Impostazione della rotazione dei file di log](#USER_LogAccess.Concepts.PostgreSQL.log_rotation). | 
| rds.log\$1retention\$1period | 4320 | I registri PostgreSQL più vecchi del numero di minuti specificato vengono eliminati. Il valore di default di 4.320 minuti elimina i file di log dopo 3 giorni. Per ulteriori informazioni, consulta [Impostazione del periodo di retention dei log](#USER_LogAccess.Concepts.PostgreSQL.log_retention_period). | 

Per identificare i problemi dell'applicazione, puoi cercare fallimenti di query, errori di accesso, deadlock ed errori irreversibili del server nel registro. Ad esempio, supponi di convertire un'applicazione legacy da Oracle ad Amazon RDS PostgreSQL, ma non tutte le query sono state convertite correttamente. Queste query formattate in modo errato generano messaggi di errore nei registri che puoi utilizzare per identificare i problemi. Per ulteriori informazioni sulla registrazione delle query, consulta [Attivazione della registrazione delle query per l'](USER_LogAccess.Concepts.PostgreSQL.Query_Logging.md). 

Negli argomenti seguenti sono disponibili informazioni su come impostare vari parametri che controllano i dettagli di base dei log PostgreSQL. 

**Topics**
+ [

## Impostazione del periodo di retention dei log
](#USER_LogAccess.Concepts.PostgreSQL.log_retention_period)
+ [

## Impostazione della rotazione dei file di log
](#USER_LogAccess.Concepts.PostgreSQL.log_rotation)
+ [

## Impostazione della destinazione del registro (`stderr`, `csvlog`)
](#USER_LogAccess.Concepts.PostgreSQL.Log_Format)
+ [

## Informazioni sul parametro log\$1line\$1prefix
](#USER_LogAccess.Concepts.PostgreSQL.Log_Format.log-line-prefix)

## Impostazione del periodo di retention dei log
<a name="USER_LogAccess.Concepts.PostgreSQL.log_retention_period"></a>

Il parametro `rds.log_retention_period` specifica per quanto tempo l'istanza database RDS per PostgreSQL conserva i file di log. L'impostazione predefinita è 3 giorni (4.320 minuti), ma è possibile impostare qualsiasi valore compreso tra 1 giorno (1.440 minuti) e 7 giorni (10.080 minuti). Assicurati che l'istanza database RDS per PostgreSQL abbia spazio di archiviazione sufficiente per contenere i file di log per il periodo di tempo specificato.

 l’istanza database RDS per PostgreSQL. Per ulteriori informazioni, consulta [Pubblicazione dei log PostgreSQL su Amazon Logs CloudWatch](USER_LogAccess.Concepts.PostgreSQL.md#USER_LogAccess.Concepts.PostgreSQL.PublishtoCloudWatchLogs).  Logs. CloudWatch 

## Impostazione della rotazione dei file di log
<a name="USER_LogAccess.Concepts.PostgreSQL.log_rotation"></a>

Per impostazione predefinita, nuovi file di log vengono creati da Amazon RDS ogni ora. La tempistica è controllata dal parametro `log_rotation_age`. Questo parametro ha un valore predefinito di 60 (minuti), ma è possibile impostarlo su qualsiasi valore tra 1 minuto e 24 ore (1.440 minuti). Al momento della rotazione, viene creato un nuovo file di log distinto. Il file è denominato in base al modello specificato dal parametro `log_filename`. 

I file di log possono anche essere ruotati in base alle loro dimensioni, come specificato dal parametro `log_rotation_size`. Questo parametro specifica che il log deve essere ruotato quando raggiunge la dimensione specificata (in kilobyte). Per un'istanza database RDS for PostgreSQL, `log_rotation_size` non è impostato, cioè non è specificato alcun valore. Tuttavia, puoi impostare il parametro su un valore compreso tra 0 e 2.097.151 kB (kilobyte). 

I nomi dei file di registro si basano sul modello di nome di file specificato nel parametro `log_filename`. Le impostazioni disponibili per questo parametro sono le seguenti:
+ `postgresql.log.%Y-%m-%d` : formato predefinito per il nome del file di registro. Include l'anno, il mese e la data nel nome del file di log.
+ `postgresql.log.%Y-%m-%d-%H`: include l'ora nel formato del nome del file di registro.

Per ulteriori informazioni, consulta [https://www.postgresql.org/docs/current/runtime-config-logging.html#GUC-LOG-ROTATION-AGE](https://www.postgresql.org/docs/current/runtime-config-logging.html#GUC-LOG-ROTATION-AGE) e [https://www.postgresql.org/docs/current/runtime-config-logging.html#GUC-LOG-ROTATION-SIZE](https://www.postgresql.org/docs/current/runtime-config-logging.html#GUC-LOG-ROTATION-SIZE) nella documentazione di PostgreSQL.

## Impostazione della destinazione del registro (`stderr`, `csvlog`)
<a name="USER_LogAccess.Concepts.PostgreSQL.Log_Format"></a>

Per impostazione predefinita, PostgreSQL genera i log in formato errore standard (stderr). Questo formato è l'impostazione predefinita per il parametro `log_destination`. Ogni messaggio ha un prefisso che utilizza il modello specificato nel parametro `log_line_prefix`. Per ulteriori informazioni, consulta [Informazioni sul parametro log\$1line\$1prefix](#USER_LogAccess.Concepts.PostgreSQL.Log_Format.log-line-prefix). 

RDS per PostgreSQL può anche generare log in formato `csvlog`. Il formato `csvlog` è utile per analizzare i dati dei registri in formato CSV. Ad esempio, supponi di utilizzare l'estensione `log_fdw` per lavorare con i log come tabelle esterne. La tabella esterna creata sui file di log di `stderr` contiene una singola colonna con i dati degli eventi di log. Aggiungendo `csvlog` al parametro `log_destination`, ottieni il file di log in formato CSV con le demarcazioni per le diverse colonne della tabella esterna. In tal modo puoi ordinare e analizzare i log più facilmente. Per informazioni su come usare `log_fdw` con `csvlog`, consulta [Utilizzo dell'estensione log\$1fdw per accedere al registro di database utilizzando SQL](CHAP_PostgreSQL.Extensions.log_fdw.md).

Se specifichi `csvlog` per questo parametro, tieni presente che vengono generati entrambi i file `stderr` e `csvlog`. Ti consigliamo di monitorare lo spazio di archiviazione consumato dai registri tenendo conto di `rds.log_retention_period` e delle altre impostazioni che influiscono sull'archiviazione e sulla rotazione dei registri. Utilizzando `stderr` e `csvlog` lo spazio di archiviazione consumato dai registri aumenta più del doppio.

Se aggiungi `csvlog` a `log_destination` e vuoi ripristinare solo `stderr`, devi reimpostare il parametro. Per farlo, nella console Amazon RDS apri il gruppo di parametri del·clusterdatabase personalizzato per la tua istanza. Scegli il parametro `log_destination`, seleziona **Edit parameter** (Modifica parametro), quindi **Reset** (Reimposta). 

Per ulteriori informazioni sulla configurazione dei registri, consulta [Utilizzo dei log Amazon RDS e Aurora PostgreSQL: Parte 1](https://aws.amazon.com/blogs/database/working-with-rds-and-aurora-postgresql-logs-part-1/).

## Informazioni sul parametro log\$1line\$1prefix
<a name="USER_LogAccess.Concepts.PostgreSQL.Log_Format.log-line-prefix"></a>

Il formato di log `stderr` applica il prefisso a ogni messaggio di log con i dettagli specificati dal parametro `log_line_prefix`. Il valore predefinito è: 

```
%t:%r:%u@%d:[%p]:t
```

A partire da Aurora PostgreSQL versione 16, è anche possibile scegliere:

```
%m:%r:%u@%d:[%p]:%l:%e:%s:%v:%x:%c:%q%a
```

Ogni voce del log inviata a stderr include le seguenti informazioni in base al valore selezionato:
+ `%t` - Ora della voce di log senza millisecondi
+ `%m` - Ora della voce di log con millisecondi
+  `%r` - Indirizzo dell'host remoto
+  `%u@%d` - Nome utente @ nome del database
+  `[%p]` - ID del processo, se disponibile
+  `%l` - Numero di riga di log per sessione 
+  `%e` - Codice di errore SQL 
+  `%s` - Timestamp di inizio del processo 
+  `%v` - ID della transazione virtuale 
+  `%x` - ID della transazione 
+  `%c` - ID della sessione 
+  `%q` - Terminatore non di sessione 
+  `%a` - Nome dell’applicazione 

# Attivazione della registrazione delle query per l'
<a name="USER_LogAccess.Concepts.PostgreSQL.Query_Logging"></a>

È possibile raccogliere informazioni più approfondite sulle attività dei database, tra cui query, query in attesa di blocchi, checkpoint e molti altri dettagli impostando alcuni parametri elencati nella tabella seguente. Questo argomento illustra la registrazione delle query.


| Parametro | Predefinita | Description | 
| --- | --- | --- | 
| log\$1connections | – | Registra ogni connessione riuscita.  | 
| log\$1disconnections | – | Registra il momento in cui termina ciascuna sessione e la relativa durata.  | 
| log\$1checkpoints | 1 | Registra nei log ogni checkpoint.  | 
| log\$1lock\$1waits | – | Registra lunghe attese di lock. Per impostazione predefinita, questo parametro non è impostato. | 
| log\$1min\$1duration\$1sample | – | Imposta il tempo (ms) minimo di esecuzione oltre il quale viene registrato un campione di istruzioni. La dimensione del campione viene impostata utilizzando il parametro log\$1statement\$1sample\$1rate. | 
| log\$1min\$1duration\$1statement | – | Viene registrata qualsiasi istruzione SQL che viene eseguita per il periodo specificato o per più tempo. Per impostazione predefinita, questo parametro non è impostato. L'attivazione di questo parametro può aiutarti a trovare query non ottimizzate. | 
| log\$1statement | – | Imposta il tipo di istruzioni registrate. Per impostazione predefinita, questo parametro non è impostato, ma puoi modificarlo in `all`, `ddl` o `mod` per specificare i tipi di istruzioni SQL che vuoi registrare. Se specifichi un valore diverso da `none` per questo parametro, dovrai adottare ulteriori misure per evitare l'esposizione delle password nei file di log. Per ulteriori informazioni, consulta [Riduzione del rischio di esposizione delle password quando si utilizza la registrazione delle queryRiduzione del rischio di esposizione delle password](#USER_LogAccess.Concepts.PostgreSQL.Query_Logging.mitigate-risk).  | 
| log\$1statement\$1sample\$1rate | – | La percentuale di istruzioni che superano il tempo specificato in `log_min_duration_sample` da registrare, espressa come valore in virgola mobile compreso tra 0,0 e 1,0.  | 
| log\$1statement\$1stats | – | Scrive le statistiche cumulative sulla prestazione nel registro del server. | 

## Utilizzo della registrazione per trovare query lente
<a name="USER_LogAccess.Concepts.PostgreSQL.Query_Logging.using"></a>

È possibile registrare istruzioni e query SQL per trovare le query con prestazioni lente. Puoi attivare questa funzionalità modificando le impostazioni nei parametri `log_statement` e `log_min_duration` come descritto in questa sezione. Prima di attivare la registrazione delle query per l'istanza database RDS per PostgreSQL, è necessario essere consapevoli della possibile esposizione delle password nei registri e di come mitigare i rischi. Per ulteriori informazioni, consulta [Riduzione del rischio di esposizione delle password quando si utilizza la registrazione delle queryRiduzione del rischio di esposizione delle password](#USER_LogAccess.Concepts.PostgreSQL.Query_Logging.mitigate-risk). 

Di seguito sono disponibili informazioni di riferimento sui parametri `log_statement` e `log_min_duration`.log\$1statement

Questo parametro specifica il tipo di istruzioni SQL che devono essere inviate al registro. Il valore predefinito è `none`. Se modifichi questo parametro in `all`, `ddl` o `mod`, esegui le azioni consigliate per ridurre il rischio di esporre le password nei log. Per ulteriori informazioni, consulta [Riduzione del rischio di esposizione delle password quando si utilizza la registrazione delle queryRiduzione del rischio di esposizione delle password](#USER_LogAccess.Concepts.PostgreSQL.Query_Logging.mitigate-risk). 

**tutto**  
Registra tutte le istruzioni. Questa impostazione è consigliata per il debug.

**ddl**  
Registra tutte le istruzioni DDL (Data Definition Language), come CREATE, ALTER, DROP e così via.

**mod**  
Registra tutte le istruzioni DDL e DML (Data Manipulation Language), come INSERT, UPDATE e DELETE, che modificano i dati.

**nessuno**  
Nessuna istruzione SQL viene registrata. Consigliamo questa impostazione per evitare il rischio di esporre le password nei registri.log\$1min\$1duration\$1statement

Viene registrata qualsiasi istruzione SQL che viene eseguita per il periodo specificato o per più tempo. Per impostazione predefinita, questo parametro non è impostato. L'attivazione di questo parametro può aiutarti a trovare query non ottimizzate.

**–1–2147483647**  
Il numero di millisecondi (ms) di runtime durante il quale un'istruzione viene registrata.

**Per configurare la registrazione delle query**

Questi passaggi presuppongono che l'istanza database RDS per PostgreSQL utilizzi un gruppo di parametri database personalizzato. 

1. Imposta il parametro `log_statement` su `all`. L'esempio seguente mostra le informazioni scritte nel file `postgresql.log` con questa impostazione del parametro.

   ```
   2022-10-05 22:05:52 UTC:52.95.4.1(11335):postgres@labdb:[3639]:LOG: statement: SELECT feedback, s.sentiment,s.confidence
   FROM support,aws_comprehend.detect_sentiment(feedback, 'en') s
   ORDER BY s.confidence DESC;
   2022-10-05 22:05:52 UTC:52.95.4.1(11335):postgres@labdb:[3639]:LOG: QUERY STATISTICS
   2022-10-05 22:05:52 UTC:52.95.4.1(11335):postgres@labdb:[3639]:DETAIL: ! system usage stats:
   ! 0.017355 s user, 0.000000 s system, 0.168593 s elapsed
   ! [0.025146 s user, 0.000000 s system total]
   ! 36644 kB max resident size
   ! 0/8 [0/8] filesystem blocks in/out
   ! 0/733 [0/1364] page faults/reclaims, 0 [0] swaps
   ! 0 [0] signals rcvd, 0/0 [0/0] messages rcvd/sent
   ! 19/0 [27/0] voluntary/involuntary context switches
   2022-10-05 22:05:52 UTC:52.95.4.1(11335):postgres@labdb:[3639]:STATEMENT: SELECT feedback, s.sentiment,s.confidence
   FROM support,aws_comprehend.detect_sentiment(feedback, 'en') s
   ORDER BY s.confidence DESC;
   2022-10-05 22:05:56 UTC:52.95.4.1(11335):postgres@labdb:[3639]:ERROR: syntax error at or near "ORDER" at character 1
   2022-10-05 22:05:56 UTC:52.95.4.1(11335):postgres@labdb:[3639]:STATEMENT: ORDER BY s.confidence DESC;
   ----------------------- END OF LOG ----------------------
   ```

1. Impostare il parametro `log_min_duration_statement`. L'esempio seguente mostra le informazioni scritte nel file `postgresql.log` quando il parametro è impostato su `1`.

   Le query che superano la durata specificata nel parametro `log_min_duration_statement` vengono registrate. Di seguito viene riportato un esempio. Puoi visualizzare il file di log per l'istanza database RDS per PostgreSQL nella console Amazon RDS. 

   ```
   2022-10-05 19:05:19 UTC:52.95.4.1(6461):postgres@labdb:[6144]:LOG: statement: DROP table comments;
   2022-10-05 19:05:19 UTC:52.95.4.1(6461):postgres@labdb:[6144]:LOG: duration: 167.754 ms
   2022-10-05 19:08:07 UTC::@:[355]:LOG: checkpoint starting: time
   2022-10-05 19:08:08 UTC::@:[355]:LOG: checkpoint complete: wrote 11 buffers (0.0%); 0 WAL file(s) added, 0 removed, 0 recycled; write=1.013 s, sync=0.006 s, total=1.033 s; sync files=8, longest=0.004 s, average=0.001 s; distance=131028 kB, estimate=131028 kB
   ----------------------- END OF LOG ----------------------
   ```

### Riduzione del rischio di esposizione delle password quando si utilizza la registrazione delle query
<a name="USER_LogAccess.Concepts.PostgreSQL.Query_Logging.mitigate-risk"></a>

Ti consigliamo di mantenere `log_statement` impostato su `none` per evitare di esporre le password. Se imposti `log_statement` su `all`, `ddl` o `mod`, ti consigliamo di eseguire una o più delle seguenti operazioni.
+ Per il client, applica la crittografia delle informazioni sensibili. Per ulteriori informazioni, consulta [Encryption Options](https://www.postgresql.org/docs/current/encryption-options.html) (Opzioni di crittografia) nella documentazione di PostgreSQL. Usa le opzioni `ENCRYPTED` (e `UNENCRYPTED`) delle istruzioni `CREATE` e `ALTER`. Per ulteriori informazioni, consulta [CREATE USER](https://www.postgresql.org/docs/current/sql-createuser.html) nella documentazione di PostgreSQL.
+ Per l'istanza database RDS per PostgreSQL, configura e usa l'estensione di audit PostgreSQL (pgAudit). Questa estensione oscura le informazioni sensibili nelle istruzioni CREATE e ALTER inviate al registro. Per ulteriori informazioni, consulta [Utilizzo di pgAudit per registrare l'attività del database](Appendix.PostgreSQL.CommonDBATasks.pgaudit.md). 
+ Limita CloudWatch l'accesso ai log.
+ Utilizza meccanismi di autenticazione più efficaci come IAM.

## Pubblicazione dei log PostgreSQL su Amazon Logs CloudWatch
<a name="USER_LogAccess.Concepts.PostgreSQL.PublishtoCloudWatchLogs"></a>

Per archiviare i record di log PostgreSQL in uno storage altamente durevole, puoi utilizzare Amazon Logs. CloudWatch Con CloudWatch Logs, puoi anche eseguire analisi in tempo reale dei dati di log e utilizzarli CloudWatch per visualizzare metriche 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 di PostgreSQL in Logs durante il processo di creazione dell'istanza DB RDS CloudWatch 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 di RDS per PostgreSQL attualmente disponibili supportano la pubblicazione di file di registro in Logs. CloudWatch Per informazioni dettagliate, consulta [Amazon RDS for PostgreSQL updates](https://docs.aws.amazon.com/AmazonRDS/latest/PostgreSQLReleaseNotes/postgresql-versions.html) (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 DB RDS for PostgreSQL per pubblicare i dati di log in un gruppo di log.

È possibile pubblicare i seguenti tipi di log in CloudWatch Logs for RDS for 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 per registrare i flussi all'interno di un CloudWatch gruppo di log. 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 all'indirizzo. CloudWatch [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/)

### Console
<a name="USER_LogAccess.Concepts.PostgreSQL.PublishtoCloudWatchLogs.CON"></a>

**Per pubblicare i log di PostgreSQL su Logs utilizzando la console CloudWatch**

1. Aprire la console Amazon RDS all'indirizzo [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Nel pannello di navigazione, scegliere **Databases (Database)**.

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

1. Nella sezione **Esportazioni dei log**, scegli i log che desideri iniziare a pubblicare su Logs. CloudWatch 

   La sezione **Esportazioni dei log** è disponibile solo per le versioni di PostgreSQL che supportano la pubblicazione nei registri. CloudWatch 

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

### AWS CLI
<a name="USER_LogAccess.Concepts.PostgreSQL.PublishtoCloudWatchLogs.CLI"></a>

È possibile pubblicare i log PostgreSQL con. AWS CLI Puoi chiamare il comando [https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) 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:
+ [https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html)
+ [https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html)
+ [https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html)

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.

**Example Modifica un'istanza per pubblicare i log in Logs CloudWatch**  
L'esempio seguente modifica un'istanza DB PostgreSQL esistente per pubblicare file di registro in Logs. CloudWatch 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:  

```
1. aws rds modify-db-instance \
2.     --db-instance-identifier mydbinstance \
3.     --cloudwatch-logs-export-configuration '{"EnableLogTypes":["postgresql", "upgrade"]}'
```
Per Windows:  

```
1. aws rds modify-db-instance ^
2.     --db-instance-identifier mydbinstance ^
3.     --cloudwatch-logs-export-configuration '{"EnableLogTypes":["postgresql","upgrade"]}'
```

**Example Crea un'istanza per pubblicare i log in Logs CloudWatch**  
L'esempio seguente crea un'istanza DB PostgreSQL e pubblica i file di registro in Logs. CloudWatch 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:  

```
1. aws rds create-db-instance \
2.     --db-instance-identifier mydbinstance \
3.     --enable-cloudwatch-logs-exports '["postgresql","upgrade"]' \
4.     --db-instance-class db.m4.large \
5.     --engine postgres
```
Per Windows:  

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

### API RDS
<a name="USER_LogAccess.Concepts.PostgreSQL.PublishtoCloudWatchLogs.API"></a>

È possibile pubblicare i log PostgreSQL con RDS API. Puoi chiamare l'operazione [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) 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: 
+ [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html)
+ [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html)
+ [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html)

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.

 