Panoramica dei registri di database Aurora MySQL - Amazon Aurora

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

Panoramica dei registri di database Aurora MySQL

Puoi monitorare i seguenti tipi di file di registro Aurora MySQL:

  • Log di errori

  • Log delle query lente

  • Log generale

  • Log di audit

Il registro degli errori Aurora MySQL viene generato per impostazione predefinita. È possibile generare la query lenta e i log generali impostando i parametri nel gruppo di parametri di database.

Registri degli errori Aurora MySQL

Aurora MySQL scrive errori nel file mysql-error.log. Ogni file di log ha l'ora di creazione (in UTC) accodata al nome. I file di log hanno anche un timestamp che ti aiuta a determinare quando le voci del log sono state scritte.

Aurora MySQL scrive nel registro degli errori solo durante l'avvio, l'arresto e quando si verificano errori. Un'istanza database può andare avanti ore senza che ci siano nuove voci scritte nel file di log degli errori. Se non vedi voci recenti, significa che il server non ha riscontrato errori che generano una voce di registro.

In base alla progettazione, i registri degli errori vengono filtrati in modo da visualizzare solo eventi imprevisti come errori. Tuttavia, i registri degli errori contengono anche altre informazioni sul database, ad esempio l'avanzamento della query, che non vengono visualizzate. Pertanto, anche senza errori effettivi, la dimensione dei registri degli errori potrebbe aumentare a causa delle attività del database in corso. E anche quando presentano una dimensione in byte o kilobyte nella AWS Management Console, i log degli errori potrebbero avere 0 byte quando li scarichi.

Aurora MySQL scrive mysql-error.log su disco ogni 5 minuti. Aggiunge il contenuto del registro a mysql-error-running.log.

Aurora MySQL ruota il file mysql-error-running.log ogni ora.

Nota

Il periodo di conservazione dei log è diverso tra Amazon RDS e Aurora.

Registri generali e delle query lente di Aurora MySQL

Il registro delle query lente e il registro generale di Aurora MySQL possono essere scritti in un file o una tabella di database impostando i parametri nel gruppo parametri del database. Per informazioni sulla creazione e la modifica di un gruppo di parametri database, consulta Utilizzo di gruppi di parametri. Devi impostare questi parametri prima di poter visualizzare il log delle query lente o il log generale nella console Amazon RDS o tramite l'API di Amazon RDS, la CLI di Amazon RDS o gli SDK AWS.

Puoi controllare la registrazione di Aurora MySQL utilizzando i parametri in questo elenco:

  • slow_query_log: per creare il log delle query lente, imposta su 1. Il valore predefinito è 0.

  • general_log: per creare il log generale, imposta su 1. Il valore predefinito è 0.

  • long_query_time: per evitare che le query a esecuzione rapida vengano registrate nel registro delle query lente, specifica in secondi un valore per il runtime di query più breve da registrare. Il valore predefinito è 10 secondi, il minimo è 0 secondi. Se log_output = FILE, puoi specificare un valore in virgola mobile con risoluzione al microsecondo. Se log_output = TABLE, devi specificare un valore intero con risoluzione al secondo. Vengono registrate solo le query con runtime che supera il valore long_query_time. Ad esempio, impostando long_query_time su 0,1 si impedisce a tutte le query con tempo di esecuzione inferiore a 100 millisecondi di essere registrate.

  • log_queries_not_using_indexes: per registrare tutte le query che non usano un indice sul log delle query lente, imposta su 1. Le query che non utilizzano un indice vengono registrate anche se il runtime è inferiore al valore del parametro long_query_time. Il valore predefinito è 0.

  • log_output option: puoi specificare una delle seguenti opzioni per il parametro log_output.

    • TABLE mysql.general_log Scrive le query generali nella tabella – e le query lente nella tabella mysql.slow_log.

    • FILE – Scrive sia i log generali sia i log delle query lente nel file system.

    • NONE – Disabilita il logging.

    Per Aurora MySQL versione 2, il valore predefinito di log_output è FILE.

Per ulteriori informazioni sui log delle query lente e i log generali, consulta i seguenti argomenti nella documentazione di MySQL:

Registro di verifica di Aurora MySQL

La registrazione di controllo per Aurora MySQL è denominata Advanced Auditing. Per attivare Advanced Auditing, imposta alcuni parametri del cluster database. Per ulteriori informazioni, consulta Utilizzo dell'audit avanzato con un cluster di database Amazon Aurora MySQL.

Rotazione e conservazione dei registri per Autora MySQL

Quando la registrazione è abilitata, Amazon Aurora ruota o elimina i file di registro Amazon a intervalli regolari. Questa è una misura preventiva per ridurre l'eventualità che un file di log molto grande comprometta l'uso del database o la performance. Autora MySQL gestisce la rotazione e l'eliminazione come segue:

  • Le dimensioni del file di registro degli errori di Aurora MySQL sono limitate a un massimo del 15 per cento dello storage locale per un'istanza database. Per mantenere questa soglia, i log vengono ruotati automaticamente ogni ora. Aurora MySQL rimuove i registri dopo 30 giorni o quando è stato occupato il 15% dello spazio su disco. Se le dimensioni del file di log combinato superano tale soglia dopo la rimozione dei file di log più vecchi, i file di log più grandi vengono eliminati fino a che le dimensioni del file di log non rimangono inferiori alla soglia.

  • Aurora MySQL rimuove i log di audit, generali, di query lente dopo 24 ore o quando è stato occupato il 15% dello spazio di archiviazione.

  • Quando la registrazione FILE è abilitata, i file di registro generale e delle query lente vengono esaminati ogni ora e quelli più vecchi di 24 ore vengono eliminati. In alcuni casi, la dimensione del file di registro combinato restante dopo l'eliminazione supera la soglia del 15 per cento di spazio locale di un'istanza database. In questi casi, i file di log più vecchi vengono eliminati fino a che le dimensioni del file di log non rimangono inferiori alla soglia.

  • Quando la registrazione TABLE è abilitata, le tabelle di registro non vengono ruotate o eliminate. Le tabelle di registro vengono troncate quando la dimensione di tutti i registri combinati è troppo grande. Puoi effettuare la sottoscrizione all'evento low_free_storage per ricevere una notifica quando le tabelle di registro vengono ruotate o eliminate per liberare spazio. Per ulteriori informazioni, consulta Utilizzo della notifica degli eventi di Amazon RDS.

    Puoi ruotare la tabella mysql.general_log chiamando manualmente la procedura mysql.rds_rotate_general_log. Puoi ruotare la tabella mysql.slow_log chiamando la procedura mysql.rds_rotate_slow_log.

    Quando ruoti manualmente le tabelle di registro, la tabella di registro corrente viene copiata in una tabella di registro di backup e le voci nella tabella di registro corrente vengono eliminate. Se esiste già una tabella di log di backup, questa viene eliminata prima che la tabella di log corrente sia copiata nel backup. Puoi eseguire una query sulla tabella di log di backup, se necessario. La tabella di log di backup per la tabella mysql.general_log è denominata mysql.general_log_backup. La tabella di log di backup per la tabella mysql.slow_log è denominata mysql.slow_log_backup.

  • I registri di controllo Aurora MySQL vengono ruotati quando la dimensione del file raggiunge i 100 MB e rimossi dopo 24 ore.

Per usare i log dalla console Amazon RDS, dall'API di Amazon RDS, dalla CLI di Amazon RDS o dagli SDK AWS, imposta il parametro log_output su FILE. Analogamente al registro degli errori di Aurora MySQL, questi file di registro vengono ruotati ogni ora. I file di log che sono stati generati durante le precedenti 24 ore vengono conservati. Il periodo di conservazione è diverso tra Amazon RDS e Aurora.