Accesso al log delle query lente e al log generale del MariaDB - 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à.

Accesso al log delle query lente e al log generale del MariaDB

Il registro delle query lente MariaDB e quello generale possono essere scritti in un file o una tabella di database impostando i parametri nel gruppo di parametri del database. Per informazioni sulla creazione e la modifica di un gruppo di parametri database, consulta Gruppi di parametri per RDS. È necessario impostare questi parametri prima di poter visualizzare il registro delle query lente o il registro generale nella RDS console Amazon o utilizzando Amazon RDS API AWS CLI, o AWS SDKs.

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

  • slow_query_logoppurelog_slow_query: 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_timeoppurelog_slow_query_time: per evitare che le interrogazioni a esecuzione rapida vengano registrate nel registro delle interrogazioni lente, specificate un valore per il tempo di esecuzione della query più breve da registrare, in secondi. Il valore predefinito è 10 secondi, il minimo è 0 secondi. Se log_output =FILE, puoi specificare un valore a virgola mobile con una risoluzione in microsecondi. Se log_output =TABLE, devi specificare un valore intero con una seconda risoluzione. Vengono registrate solo le query il cui tempo di esecuzione supera il long_query_time valore o. log_slow_query_time Ad esempio, l'impostazione long_query_time o log_slow_query_time su 0.1 impedisce la registrazione di qualsiasi query eseguita per meno di 100 millisecondi.

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

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

    • TABLE(impostazione predefinita): scrive interrogazioni generiche nella mysql.general_log tabella e query lente nella tabella. mysql.slow_log

    • FILE— Scrive nel file system i log delle query sia generici che quelli lenti. I file di log vengono ruotati ogni ora.

    • NONE— Disabilita la registrazione.

Quando la registrazione è abilitata, Amazon RDS ruota i log delle tabelle o elimina i file di registro a intervalli regolari. Questa è una precauzione per ridurre la possibilità che un file di log di grandi dimensioni blocchi l'uso del database o influisca sulle prestazioni. I logging di tipo FILE e TABLE gestiscono la rotazione e l'eliminazione in questo modo:

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

  • Quando la registrazione TABLE è abilitata, in alcuni casi, le tabelle di log vengono ruotate ogni 24 ore. Questa rotazione avviene se lo spazio usato dai registri delle tabelle è più del 20% dello spazio di archiviazione assegnato oppure se la dimensione di tutti i log combinati è maggiore di 10 GB. Se la quantità di spazio utilizzato per un'istanza database è maggiore del 90% dello spazio di archiviazione assegnato per l'istanza database, le soglie di rotazione dei registri vengono ridotte. Le tabelle dei registri vengono ruotate se lo spazio utilizzato dai registri delle tabelle supera il 10% dello spazio di archiviazione assegnato oppure se la dimensione di tutti i log combinati è maggiore di 5 GB.

    Quando le tabelle di log sono convertite, la tabella di log corrente è copiata in una tabella di logo di backup e le voci nella tabella di log corrente sono 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.

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

    I log della tabella vengono ruotati durante l'aggiornamento della versione del database.

Amazon RDS registra entrambi TABLE e FILE registra la rotazione in un RDS evento Amazon e ti invia una notifica.

Per utilizzare i log dalla RDS console Amazon, Amazon RDSAPI, Amazon oppure RDS CLI AWS SDKs, imposta il log_output parametro su. FILE Come il log degli errori MariaDB, questi file di log vengono ruotati ogni ora. I file di log che sono stati generati durante le precedenti 24 ore vengono conservati.

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