Pubblicazione dei log MySQL in Amazon CloudWatch Logs - Amazon Relational Database Service

Pubblicazione dei log MySQL in Amazon CloudWatch Logs

Puoi configurare l'istanza database MySQL per la pubblicazione dei dati di log in un gruppo di log in Amazon CloudWatch Logs. Con CloudWatch Logs puoi eseguire analisi in tempo reale dei dati di log e usare CloudWatch per creare allarmi e visualizzare parametri. Puoi utilizzare CloudWatch Logs per archiviare i record dei log in uno storage estremamente durevole.

Amazon RDS pubblica ogni log di database MySQL come flusso di database separato nel gruppo di log. Ad esempio, se configuri la funzione di esportazione affinché includa il log delle query lente, i dati relativi alle query lente vengono archiviati in un flusso delle log delle query lente nel gruppo di log /aws/rds/instance/my_instance/slowquery.

Il log degli errori è abilitato per impostazione predefinita. La tabella seguente fornisce un riepilogo dei requisiti per gli altri log MySQL.

Log Requisito

Log di controllo

L'istanza database deve usare un gruppo di opzioni personalizzato con l'opzione MARIADB_AUDIT_PLUGIN.

Log generale

L'istanza database deve usare un gruppo di parametri personalizzato con l'impostazione general_log = 1 per abilitare il log generale.

Log delle query lente

L'istanza database deve usare un gruppo di parametri personalizzato con l'impostazione slow_query_log = 1 per abilitare il log delle query lente.

Log degli errori di autenticazione del database IAM

È necessario abilitare il tipo di log iam-db-auth-error per un’istanza database creando o modificando un’istanza database.

Output log

L'istanza database deve usare un gruppo di parametri personalizzato con l'impostazione log_output = FILE per scrivere log nel file system e pubblicarli in CloudWatch Logs.

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

  2. Nel riquadro di navigazione, scegliere Databases (Database) e selezionare l'istanza database da modificare.

  3. Scegliere Modify (Modifica).

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

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

Puoi pubblicare i log MySQL con la 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 pubblicare i log MySQL anche chiamando i seguenti comandi della AWS CLI:

Esegui uno di questi comandi dell'AWS 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 AWS CLI eseguito.

L'esempio seguente modifica un'istanza database MySQL esistente per pubblicare i file di log in 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 audit, error, general e slowquery.

Per Linux, macOS o Unix:

aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["audit","error","general","slowquery"]}'

Per Windows:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --cloudwatch-logs-export-configuration '{"EnableLogTypes":["audit","error","general","slowquery"]}'

L'esempio seguente crea un'istanza database MySQL e pubblica i file di log in CloudWatch Logs. Il valore --enable-cloudwatch-logs-exports è una matrice di stringhe JSON. Le stringhe possono essere una qualsiasi combinazione di audit, error, general e slowquery.

Per Linux, macOS o Unix:

aws rds create-db-instance \ --db-instance-identifier mydbinstance \ --enable-cloudwatch-logs-exports '["audit","error","general","slowquery"]' \ --db-instance-class db.m4.large \ --engine MySQL

Per Windows:

aws rds create-db-instance ^ --db-instance-identifier mydbinstance ^ --enable-cloudwatch-logs-exports '["audit","error","general","slowquery"]' ^ --db-instance-class db.m4.large ^ --engine MySQL

Puoi pubblicare i log MySQL 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.

Puoi pubblicare i log MySQL anche chiamando le seguenti operazioni API RDS:

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

  • DBInstanceIdentifier

  • EnableCloudwatchLogsExports

  • Engine

  • DBInstanceClass

Altri parametri potrebbero essere richiesti a seconda del comando della AWS CLI che viene eseguito.