In che modo posso utilizzare i log per tenere traccia delle attività nel mio cluster di database Amazon Redshift?

5 minuti di lettura
0

Come posso eseguire il controllo del database sul mio cluster Amazon Redshift?

Breve descrizione

Amazon Redshift offre tre opzioni di registrazione:

I log di audit e le tabelle STL registrano le attività a livello di database, ad esempio quali utenti hanno effettuato l'accesso e quando. Queste tabelle registrano anche le attività SQL eseguite da questi utenti e quando le hanno eseguite. CloudTrail tiene traccia delle attività eseguite a livello di servizio.

Nota: per visualizzare i log utilizzando tabelle esterne, è necessario utilizzare Amazon Redshift Spectrum. Per ulteriori informazioni, consulta Analizzare i log di audit del database per sicurezza e conformità utilizzando Amazon Redshift Spectrum.

Risoluzione

Log di audit e tabelle STL

La tabella seguente mette a confronto i log di audit e le tabelle STL. Scegli l'opzione di registrazione più adatta al tuo caso.

Log di auditTabelle STL
Devono essere abilitati. Per abilitare i log di audit, segui i passaggi Configurazione dell’audit utilizzando la console o Configurazione della registrazione utilizzando l’interfaccia a linea di comando e l’API Amazon Redshift.Disponibile automaticamente in ciascun nodo del cluster data warehouse.
I file log di audit vengono archiviati a tempo indeterminato, a meno che non si definiscano le regole del ciclo di vita Amazon S3 per l'archiviazione o l'eliminazione automatica dei file. Per ulteriori informazioni, consulta Gestione del ciclo di vita degli oggetti.La cronologia dei log viene archiviata da due a cinque giorni, a seconda dell'utilizzo del log e dello spazio disponibile su disco. Per prolungare il periodo di conservazione, è possibile utilizzare l'utilità di ](https://github.com/awslabs/amazon-redshift-utils/tree/master/src/SystemTablePersistence)persistenza degli oggetti di sistema [Amazon Redshift di AWS Labs in GitHub.
L'accesso ai file log di audit non richiede l'accesso al database Amazon Redshift.L'accesso alle tabelle STL richiede invece l'accesso al database Amazon Redshift.
La revisione dei log archiviati in Amazon S3 non richiede risorse di elaborazione del database.L'esecuzione di query su tabelle STL richiede risorse di elaborazione del database, proprio come quando si eseguono altre query.
Utilizzando i timestamp, è possibile correlare gli ID di processi alle attività del database. I riavvii del cluster non influiscono sui log di audit in Amazon S3.Non è sempre possibile correlare gli ID di processo alle attività del database, poiché gli ID di processo potrebbero essere riciclati al riavvio del cluster.
Le informazioni vengono memorizzate nei seguenti file log:
  • Log di connessione
  • Log utente
  • Log attività utente Nota: per il log attività utente, è necessario abilitare il parametro del database enable_user_activity_logging. Per ulteriori informazioni, consulta Abilitazione della registrazione. | Le informazioni vengono memorizzate in più tabelle. Utilizza le tabelle seguenti per esaminare informazioni simili a quelle archiviate nei log di audit S3:
  • SVL_STATEMENTTEXT: fornisce una registrazione completa dei comandi SQL eseguiti sul sistema. Combina tutte le righe nelle tabelle STL_DDLTEXT, STL_QUERYTEXT e STL_UTILITYTEXT.
  • STL_CONNECTION_LOG: registra i tentativi di autenticazione, le connessioni o le disconnessioni. | | Tutte le istruzioni SQL vengono registrate nei log attività utente. | Le query eseguite vengono registrate in STL_QUERY. Le istruzioni DDL vengono registrate in STL_DDLTEXT. Il testo dei comandi non SELECT SQL viene registrato in STL_UTILITYTEXT. | | Le istruzioni vengono registrate non appena Amazon Redshift le riceve. I file in Amazon S3 vengono aggiornati in batch e la visualizzazione può richiedere alcune ore. | I log vengono generati dopo l'esecuzione di ogni istruzione SQL. | | Viene registrato chi ha eseguito un'azione e quando è stata eseguita, ma non il tempo impiegato per eseguirla. | Le colonne STARTTIME e ENDTIME vengono utilizzate per determinare il tempo impiegato per completare un'attività. Per determinare quale utente ha eseguito un'azione, è necessario combinare SVL_STATEMENTTEXT (userid) con PG_USER (usesysid). | | Viene addebitato lo spazio di archiviazione utilizzato dai log in Amazon S3. | Non sono previsti costi aggiuntivi per l’archiviazione delle tabelle STL. | | Vengono registrate solo le query del nodo Leader. | Le query che riguardano solo il nodo Leader non vengono registrate. |

**CloudTrail **

Utilizzando le informazioni raccolte da CloudTrail, è possibile determinare quali richieste sono state inoltrate correttamente ai servizi AWS, chi ha effettuato la richiesta e quando è stata effettuata. Per ulteriori informazioni, consulta Registrazione delle chiamate API di Amazon Redshift con AWS CloudTrail.

I file di log di CloudTrail vengono archiviati a tempo indeterminato in Amazon S3, a meno che non si definiscano regole del ciclo di vita per l'archiviazione o l'eliminazione automatica dei file. Per ulteriori informazioni, consulta Gestione del ciclo di vita degli oggetti.


Informazioni correlate

Ottimizzazione delle prestazioni delle query

Nota di rilascio del log attività utente

AWS UFFICIALE
AWS UFFICIALEAggiornata 3 anni fa