Prüfungsprotokollierung für Amazon Redshift Serverless - Amazon Redshift

Amazon Redshift unterstützt ab dem 1. November 2025 nicht mehr die Erstellung neuer Python-UDFs. Wenn Sie Python-UDFs verwenden möchten, erstellen Sie die UDFs vor diesem Datum. Bestehende Python-UDFs funktionieren weiterhin wie gewohnt. Weitere Informationen finden Sie im Blog-Posting.

Prüfungsprotokollierung für Amazon Redshift Serverless

Sie können Amazon Redshift Serverless so konfigurieren, dass Verbindungs-, Benutzer- und Benutzeraktivitätsprotokolldaten in eine Protokollgruppe in Amazon CloudWatch Logs exportiert werden. Mit Amazon CloudWatch Logs können Sie Echtzeitanalysen der Protokolldaten durchführen, und mit CloudWatch können Sie Alarme und Metriken erstellen. Sie können CloudWatch Logs verwenden, um Ihre Protokolldatensätze in einem nicht-flüchtigen Speicher abzulegen.

Sie können CloudWatch-Alarme erstellen, um Ihre Metriken mit der Amazon-Redshift-Konsole zu verfolgen. Weitere Informationen zum Erstellen von Alarmen finden Sie unter Verwalten von Alarmen.

Um generierte Protokolldaten in Amazon CloudWatch Logs zu exportieren, müssen die entsprechenden Protokolle für den Export in den Amazon-Redshift-Serverless-Konfigurationseinstellungen auf der Konsole ausgewählt werden. Sie können dies tun, indem Sie die Einstellungen zu Namespace-Konfiguration unter Sicherheit und Verschlüsselung auswählen.

Protokollereignisse in CloudWatch

Nachdem Sie ausgewählt haben, welche Redshift-Protokolle exportiert werden sollen, können Sie Ereignisse in Amazon CloudWatch Logs überwachen. Es wird automatisch eine neue Protokollgruppe für Amazon Redshift Serverless erstellt, in der log_type für den Protokolltyp steht.

/aws/redshift/<namespace>/<log_type>

Wenn Sie Ihre erste Arbeitsgruppe und Ihren ersten Namespace erstellen, ist default der Namespace-Name. Der Name der Protokollgruppe variiert je nachdem, wie Sie den Namespace benennen.

Wenn Sie beispielsweise das Verbindungsprotokoll exportieren, werden die Protokolldaten in der folgenden Protokollgruppe gespeichert.

/aws/redshift/default/connectionlog

Protokollereignisse werden mithilfe des Serverless-Protokollstreams in eine Protokollgruppe exportiert. Das Verhalten hängt davon ab, welche der folgenden Bedingungen zutrifft:

  • Eine Protokollgruppe mit dem angegebenen Namen existiert. Redshift exportiert Protokolldaten unter Verwendung der vorhandenen Protokollgruppe. Um Protokollgruppen mit vordefinierten Protokollaufbewahrungszeiten, Metrikfiltern und Kundenzugriff zu erstellen, können Sie die automatisierte Kommunikation wie die verwenden, die von AWS CloudFormation bereitgestellt wird.

  • Eine Protokollgruppe mit dem angegebenen Namen existiert nicht. Wenn im Protokoll für die Instance ein übereinstimmender Protokolleintrag erkannt wird, erstellt Amazon Redshift Serverless automatisch eine neue Protokollgruppe in Amazon CloudWatch Logs. Die Protokollgruppe nutzt den standardmäßigen Aufbewahrungszeitraum für Protokolle Never Expire (Läuft nie ab). Um die Protokollaufbewahrungszeit zu ändern, können Sie die Amazon-CloudWatch-Logs-Konsole, die AWS CLI oder die Amazon-CloudWatch-Logs-API verwenden. Weitere Informationen zum Anpassen des Aufbewahrungszeitraums von Protokollen in CloudWatch Logs finden Sie unter Ändern der Aufbewahrung von Protokolldaten in Arbeiten mit Protokollgruppen und Protokollstreams.

Um Informationen in Protokollereignissen zu suchen, können Sie die Amazon-CloudWatch-Logs-Konsole, die AWS CLI oder die Amazon-CloudWatch-Logs-API verwenden. Weitere Informationen finden Sie unter Suchen und Filtern von Protokolldaten.

CloudWatch-Metriken

Metriken sind bei Amazon Redshift Serverless in Rechenmetriken sowie Daten- und Speichermetriken unterteilt, die unter die Arbeitsgruppen- bzw. Namespace-Dimensionssätze fallen. Weitere Informationen zu Arbeitsgruppen und Namespaces finden Sie unter Arbeitsgruppen und Namespaces.

CloudWatch-Rechenmetriken umfassen folgende:

Metrikname Einheiten Beschreibung Dimensionssätze
QueriesCompletedPerSecond Anzahl der Abfragen Die Anzahl der pro Sekunde abgeschlossenen Abfragen. {Database, LatencyRange, Workgroup}, {LatencyRange, Workgroup}
QueryDuration Mikrosekunden Die durchschnittliche Zeit, die es dauert, bis eine Abfrage ausgeführt wurde. {Database, LatencyRange, Workgroup}, {LatencyRange, Workgroup}
QueriesRunning Anzahl der Abfragen Die Anzahl der zu einem bestimmten Zeitpunkt ausgeführten Abfragen. {Database, QueryType, Workgroup}, {QueryType, Workgroup}
QueriesQueued Anzahl der Abfragen Die Anzahl der Abfragen in der Warteschlange zu einem bestimmten Zeitpunkt. {Database, QueryType, Workgroup}, {QueryType, Workgroup}
DatabaseConnections Anzahl der Verbindungen Die Anzahl der Verbindungen zu einer Datenbank zu einem bestimmten Zeitpunkt. {Database, Workgroup}, {Workgroup}
QueryRuntimeBreakdown Millisekunden Die Gesamtzeit, in der Abfragen ausgeführt wurden, nach Abfragephase. {Database, Stage, Workgroup}, {Stage, Workgroup}
ComputeCapacity RPU Durchschnittliche Anzahl der Computingeinheiten, die in den letzten 30 Minuten zugewiesen wurden, auf die nächste ganze Zahl aufgerundet. {Workgroup}
ComputeSeconds RPU-Sekunden In den letzten 30 Minuten verbrauchte kumulierte Computingeinheiten in Sekunden. {Workgroup}
QueriesSucceeded Anzahl der Abfragen Die Anzahl der Abfragen, die in den letzten 5 Minuten erfolgreich waren. {Database, QueryType, Workgroup}, {QueryType, Workgroup}
QueriesFailed Anzahl der Abfragen Die Anzahl der Abfragen, die in den letzten 5 Minuten fehlgeschlagen sind. {Database, QueryType, Workgroup}, {QueryType, Workgroup}
UsageLimitAvailable RPU-Stunden oder TBs

Je nach UsageType gibt UsageLimitAvailable Folgendes zurück:

  • Wenn UsageType SERVERLESS_COMPUTE lautet, gibt UsageLimitAvailable die verbleibende Anzahl von RPU-Stunden zurück, die die Arbeitsgruppe im angegebenen Limit abfragen kann.

  • Wenn UsageType CROSS_REGION_DATASHARING lautet, gibt UsageLimitAvailable die verbleibende Anzahl von TBs zurück, die der Kunde im angegebenen Limit scannen kann.

{UsageLimitId, UsageType, Workgroup}
UsageLimitConsumed RPU-Stunden oder TBs

Abhängig vom UsageType gibt UsageLimitConsumed Folgendes zurück:

  • Wenn UsageType SERVERLESS_COMPUTE lautet, gibt UsageLimitConsumed die verbleibende Anzahl von RPU-Stunden zurück, die die Arbeitsgruppe im angegebenen Limit bereits abgefragt hat.

  • Wenn UsageType CROSS_REGION_DATASHARING lautet, gibt UsageLimitConsumed die Anzahl von TBs zurück, die der Kunde im angegebenen Limit bereits zum Scannen verwendet hat.

{UsageLimitId, UsageType, Workgroup}

CloudWatch-Daten- und -Speichermetriken sind die folgenden:

Metrikname Einheiten Beschreibung Dimensionssätze
TotalTableCount Anzahl der Tabellen Die Anzahl der zu einem bestimmten Zeitpunkt vorhandenen Benutzertabellen. Diese Summe enthält keine Amazon-Redshift-Spectrum-Tabellen. {Database, Namespace}
DataStorage Megabyte Die Anzahl der für Redshift-Daten verwendeten Megabyte im Festplatten- oder Arbeitsspeicher. {Namespace}

Die SnapshotStorage-Metrik ist vom Namespace und der Arbeitsgruppe unabhängig. Die SnapshotStorage-Metrik von CloudWatch lautet wie folgt:

Metrikname Einheiten Beschreibung Dimensionssätze
SnapshotStorage Megabyte Die Anzahl der für Snapshots verwendeten Megabyte im Festplatten- oder Arbeitsspeicher. {}

Dimensionssätze sind die Gruppierungsdimensionen, die auf Ihre Metriken angewendet werden. Sie können diese Dimensionsgruppen verwenden, um anzugeben, wie Ihre Statistiken abgerufen werden.

In der folgenden Tabelle werden Dimensionen und Dimensionswerte für bestimmte Metriken aufgeführt:

Dimension Beschreibung und Werte
DatabaseName Name der Datenbank. Ein benutzerdefinierter Wert.
Latency

Die möglichen Werte lauten wie folgt:

  • Kurz – unter 10 Sekunden

  • Mittel – zwischen 10 Sekunden und 10 Minuten

  • Lang – über 10 Minuten

QueryType Mögliche Werte sind INSERT, DELETE, UPDATE, UNLOAD, LOAD, SELECT, CTAS und OTHER.
stage

Die Ausführungsstufen einer Abfrage. Die möglichen Werte lauten wie folgt:

  • QueryPlanning: Für die Analyse und Optimierung der SQL-Anweisungen aufgewendete Zeit.

  • QueryWaiting: Für das Warten in einer WLM-Warteschlange aufgewendete Zeit.

  • QueryExecutingRead: Für die Ausführung von Leseabfragen aufgewendete Zeit.

  • QueryExecutingInsert: Für die Ausführung von Einfügungsabfragen aufgewendete Zeit.

  • QueryExecutingDelete: Für die Ausführung von Löschabfragen aufgewendete Zeit.

  • QueryExecutingUpdate: Für die Ausführung von Aktualisierungsabfragen aufgewendete Zeit.

  • QueryExecutingCtas: Für die Ausführung von Abfragen zum Erstellen einer Tabelle aufgewendete Zeit.

  • QueryExecutingUnload: Für die Ausführung von Entladeabfragen aufgewendete Zeit.

  • QueryExecutingCopy: Für die Ausführung von Kopierabfragen aufgewendete Zeit.

  • QueryCommit: Für das Commit aufgewendete Zeit.

Namespace Der Name des Namespace. Ein benutzerdefinierter Wert.
Workgroup Der Name der Arbeitsgruppe. Ein benutzerdefinierter Wert.
UsageLimitId Der Bezeichner des Nutzungslimits.
UsageType

Die Funktion von Amazon Redshift Serverless ist eingeschränkt. Die möglichen Werte lauten wie folgt:

  • SERVERLESS_COMPUTE

  • CROSS_REGION_DATASHARING