Überblick über Aurora-MySQL-Datenbankprotokolle - Amazon Aurora

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Überblick über Aurora-MySQL-Datenbankprotokolle

Sie können die folgenden Arten von Aurora-MySQL-Protokolldateien überwachen:

  • Fehler-log

  • Slow-Query-Protokoll

  • Allgemeines Protokoll

  • Prüfungsprotokoll

  • Instanzprotokoll

  • Fehlerprotokoll für die IAM-Datenbankauthentifizierung

Das Aurora-MySQL-Fehlerprotokoll wird standardmäßig generiert. Sie können die langsamen Abfrage- und allgemeinen Protokolle generieren, indem Sie Parameter in Ihrer DB-Parametergruppe festlegen.

Aurora-MySQL-Fehlerprotokolle

Aurora MySQL schreibt Fehler in die mysql-error.log-Datei. An den Namen jeder Protokolldatei wird die Stunde ihrer Erstellung (in UTC) angefügt. Die Protokolldateien verfügen auch über einen Zeitstempel, anhand dessen Sie feststellen können, wann die Protokolleinträge geschrieben wurden.

Aurora MySQL schreibt das Fehlerprotokoll nur beim Startup, Herunterfahren und beim Auftreten von Fehlern. Eine DB-Instance kann Stunden oder Tage lang laufen, ohne dass neue Einträge in das Fehlerprotokoll geschrieben werden. Wenn Sie keine neuen Einträge sehen, sind im Server keine Fehler aufgetreten, die zu einem Eintrag in das Protokoll führen würden.

Konstruktionsbedingt werden die Fehlerprotokolle gefiltert, sodass nur unerwartete Ereignisse wie Fehler angezeigt werden. Die Fehlerprotokolle enthalten jedoch auch einige zusätzliche Datenbankinformationen, z. B. den Abfragefortschritt, die nicht angezeigt werden. Daher kann die Größe der Fehlerprotokolle auch ohne tatsächliche Fehler aufgrund laufender Datenbankaktivitäten zunehmen. Und obwohl Ihnen für die Fehlerprotokolle möglicherweise eine bestimmte Größe in Byte oder Kilobyte angezeigt wird AWS Management Console, haben sie beim Herunterladen möglicherweise 0 Byte.

Aurora MySQL schreibt mysql-error.log alle 5 Minuten auf die Festplatte. Es fügt den Inhalt des Protokolls mysql-error-running.log an.

Aurora MySQL rotiert die Datei mysql-error-running.log stündlich.

Anmerkung

Der Aufbewahrungszeitraum für das Protokoll ist zwischen Amazon RDS und unterschiedlich Aurora.

Aurora-MySQL-Protokolle für langsame Abfragen und allgemeine Protokolle

Das Slow-Query-Protokoll von Aurora MySQL und das allgemeine Protokoll können in eine Datei oder in eine Datenbanktabelle geschrieben werden. Legen Sie dazu die Parameter in Ihrer DB-Parametergruppe fest. Weitere Informationen zum Erstellen und Ändern einer DB-Parametergruppe finden Sie unter Parametergruppen für Amazon Aurora. Sie müssen diese Parameter festlegen, bevor Sie das Protokoll für langsame Abfragen oder das allgemeine Protokoll in der Amazon RDS-Konsole oder mithilfe der Amazon RDS-API, Amazon RDS-CLI oder anzeigen können AWS SDKs.

Sie können Aurora-MySQL-Protokolle mithilfe der Parameter in dieser Liste kontrollieren:

  • slow_query_log Um das Slow-Query-Protokoll zu erstellen, auf 1 setzen. Der Standardwert ist 0.

  • general_log Um das allgemeine Protokoll zu erstellen, auf 1 setzen. Der Standardwert ist 0.

  • long_query_time: Damit vermieden wird, dass schnell ausgeführte Abfragen im Slow-Query-Protokoll aufgenommen werden, legen Sie die kürzeste Laufzeit für eine zu protokollierende Abfrage in Sekunden fest. Der Standardwert liegt bei 10 Sekunden, der Mindestwert bei 0. Wenn log_output = FILE, können Sie einen Gleitkommawert angeben, der die Mikrosekundenauflösung festlegt. Wenn log_output = TABLE, können Sie einen Ganzzahlwert angeben, der die Sekundenauflösung festlegt. Nur Abfragen, deren Laufzeit den long_query_time-Wert übersteigt, werden im Protokoll aufgenommen. Wenn Sie beispielsweise long_query_time auf 0,1 setzen, verhindert dies Einträge von allen Abfragen, die weniger als 100 Millisekunden lang ausgeführt werden.

  • log_queries_not_using_indexes: Um alle Abfragen, die keinen Index für das Slow-Query-Protokoll verwenden im Protokoll aufzunehmen, auf 1 setzen. Abfragen, die keinen Index verwenden, werden protokolliert, auch wenn ihre Laufzeit niedriger als der Wert des Parameters long_query_time ist. Der Standardwert ist 0.

  • log_output option: Sie können eine der folgenden Optionen für den log_output-Parameter festlegen.

    • TABLE – schreibt allgemeine Abfragen in die mysql.general_log-Tabelle und langsame Abfragen in die mysql.slow_log-Tabelle.

    • FILE– schreibt Protokolle allgemeiner und langsamer Abfragen in das Dateisystem.

    • NONE– Die Protokollierung ist deaktiviert.

    Für die Aurora MySQL-Versionen 2 und 3 log_output ist die Standardeinstellung fürFILE.

Damit langsame Abfragedaten in Amazon CloudWatch Logs angezeigt werden, müssen die folgenden Bedingungen erfüllt sein:

  • CloudWatch Protokolle müssen so konfiguriert sein, dass sie langsame Abfrageprotokolle enthalten.

  • slow_query_logmuss aktiviert sein.

  • muss log_output auf FILE festgelegt sein.

  • Die Abfrage muss länger dauern als die konfigurierte Zeitlong_query_time.

Weitere Informationen zu den Slow-Query- und allgemeinen Protokollen finden Sie in den folgenden Themen in der MySQL-Dokumentation:

Aurora-MySQL-Prüfprotokoll

Die Auditprotokollierung für Aurora MySQL heißt Advanced Auditing. Zum Aktivieren von Advanced Auditing legen Sie bestimmte DB-Cluster-Parameter fest. Weitere Informationen finden Sie unter Verwenden von Advanced Auditing mit einem Amazon Aurora My SQL DB-Cluster.

Aurora MySQL-Instanzprotokoll

Aurora erstellt eine separate Protokolldatei für DB-Instances, bei denen die automatische Pause aktiviert ist. In dieser Datei instance.log werden alle Gründe aufgezeichnet, warum diese DB-Instances nicht wie erwartet angehalten werden konnten. Weitere Informationen zum Verhalten von Instance-Protokolldateien und zur automatischen Pausefunktion von Aurora finden Sie unter Überwachung der Pause- und Wiederaufnahmeaktivität von Aurora Serverless v2.

Protokollrotation und -aufbewahrung für Aurora MySQL

Wenn die Protokollierung aktiviert ist, rotiert oder löscht Amazon Aurora Protokolldateien in regelmäßigen Intervallen. Dies ist eine Vorsichtsmaßnahme, um möglichst zu vermeiden, dass eine umfangreiche Protokolldatei die Datenbanknutzung blockiert oder die Leistung beeinträchtigt. Aurora MySQL behandelt Rotation und Löschen wie folgt:

  • Die Dateigrößen der Aurora-MySQL-Fehlerprotokolle sind auf maximal 15 Prozent des zugewiesenen Speicherplatzes für eine DB-Instance beschränkt. Um diesen Schwellenwert einzuhalten, werden die Protokolle automatisch stündlich gedreht. Aurora MySQL entfernt Protokolle nach 30 Tagen oder wenn 15 % des Festplattenspeichers belegt sind. Wenn die kombinierte Größe der Protokolle nach dem Löschen von alten Protokolldateien den Schwellwert überschreitet, werden die ältesten Protokolldateien gelöscht, bis die Größe den Schwellwert nicht mehr überschreitet.

  • Aurora MySQL entfernt die Audit-, allgemeinen, langsamen Abfrage-Protokolle entweder nach 24 Stunden oder wenn 15 % des Speichers verbraucht wurden.

  • Wenn die FILE-Protokollierung aktiviert ist, werden allgemeine Protokolldateien und Protokolldateien für langsame Abfragen stündlich geprüft und Protokolldateien, die älter als 24 Stunden sind, werden gelöscht. In einigen Fällen kann die Größe der verbleibenden kombinierten Protokolldatei nach dem Löschen die Schwelle von 15 % des lokalen Speicherplatzes für eine DB-Instance überschreiten. In diesen Fällen werden die ältesten Protokolldateien gelöscht, bis die Größe den Schwellenwert nicht mehr überschreitet.

  • Wenn die TABLE-Protokollierung aktiviert ist, werden Protokolltabellen nicht rotiert oder gelöscht. Protokolltabellen werden abgeschnitten, wenn die Größe aller kombinierten Protokolle zu groß ist. Sie können die low storage Ereigniskategorie abonnieren, um benachrichtigt zu werden, wenn Protokolltabellen manuell rotiert oder gelöscht werden sollten, um Speicherplatz freizugeben. Weitere Informationen finden Sie unter Mit RDS Amazon-Event-Benachrichtigungen arbeiten.

    Sie können die mysql.general_log-Tabelle manuell rotieren, indem Sie die Prozedur mysql.rds_rotate_general_log aufrufen. Sie können die mysql.slow_log-Tabelle rotieren, wenn Sie die Prozedur mysql.rds_rotate_slow_log aufrufen.

    Wenn Sie Protokolldateien manuell rotieren, wird die aktuelle Protokolltabelle in eine Sicherungsprotokolltabelle kopiert und die Einträge in der aktuellen Protokolltabelle werden entfernt. Sofern bereits eine Sicherungsprotokolltabelle vorhanden ist, wird diese gelöscht, bevor die aktuelle Protokolltabelle ins Backup kopiert wird. Sie können die Sicherungsprotokolltabelle abfragen, wenn dies nötig ist. Die Backup-Protokolltabelle für die mysql.general_log-Tabelle ist als mysql.general_log_backup benannt. Die Backup-Protokolltabelle für die mysql.slow_log-Tabelle ist als mysql.slow_log_backup benannt.

  • Die Aurora-MySQL-Überwachungsprotokolle werden rotiert, wenn die Dateigröße 100 MB erreicht, und nach 24 Stunden entfernt.

  • Amazon RDS rotiert Protokolldateien für Fehler bei der IAM-Datenbankauthentifizierung, die größer als 10 MB sind. Amazon RDS entfernt Protokolldateien für Fehler bei der IAM-Datenbankauthentifizierung, die älter als fünf Tage oder größer als 100 MB sind.

Um mit den Protokollen von der Amazon RDS-Konsole, der Amazon RDS-API, der Amazon RDS-CLI oder zu arbeiten AWS SDKs, setzen Sie den log_output Parameter auf FILE. Diese Protokolldateien werden wie das Aurora-MySQL-Fehlerprotokoll stündlich rotiert. Die Protokolldateien, die während der vorherigen 24 Stunden angelegt wurden, werden aufbewahrt. Beachten Sie, dass der Aufbewahrungszeitraum bei Amazon RDS und Aurora jeweils unterschiedlich ist.

Aurora MySQL-Protokolle in Amazon CloudWatch Logs veröffentlichen

Sie können Ihren Aurora MySQL-DB-Cluster so konfigurieren, dass Protokolldaten in einer Protokollgruppe in Amazon CloudWatch Logs veröffentlicht werden. Mit CloudWatch Logs können Sie eine Echtzeitanalyse der Protokolldaten durchführen und diese CloudWatch zum Erstellen von Alarmen und zum Anzeigen von Metriken verwenden. Sie können CloudWatch Logs verwenden, um Ihre Protokolldatensätze in einem äußerst langlebigen Speicher zu speichern. Weitere Informationen finden Sie unter Veröffentlichen von Amazon Aurora MySQL-Protokollen in Amazon CloudWatch Logs.