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.
SVL_QLOG
Die Ansicht SVL_QLOG enthält ein Protokoll aller gegen die Datenbank ausgeführter Abfragen.
Amazon Redshift erstellt die SVL_QLOG-Ansicht als lesbare Teilmenge der Informationen aus der Tabelle STL_QUERY. Verwenden Sie diese Tabelle zum Finden der Abfrage-ID für eine kürzlich ausgeführte Abfrage finden, oder um zu sehen, wie lange eine Abfrage in Anspruch nahm.
SVL_QLOG ist für alle Benutzer sichtbar. Superuser können alle Zeilen sehen; reguläre Benutzer können nur ihre eigenen Daten sehen. Weitere Informationen finden Sie unter Sichtbarkeit der Daten in Systemtabellen und Ansichten.
Einige oder alle Daten in dieser Tabelle sind auch in der SYS-Überwachungsansicht SYS_QUERY_HISTORY zu finden. Die Daten in der SYS-Überwachungsansicht sind so formatiert, dass sie leichter verwendbar und besser verständlich sind. Wir empfehlen Ihnen, für Ihre Abfragen die SYS-Überwachungsansicht zu verwenden.
Tabellenspalten
Spaltenname | Datentyp | Beschreibung |
---|---|---|
userid | integer | ID des Benutzers, der den Eintrag generiert hat. |
query | integer | Abfrage-ID. Sie können diese ID verwenden, um verschiedene andere Systemtabellen und Anzeigen anzufügen. |
xid | bigint | Transaktions-ID. |
pid | integer | Die mit der Abfrage verbundene Prozess-ID. |
starttime | timestamp | Die genaue Uhrzeit, zu der die Ausführung der Anweisung begonnen wurde, mit 6 Nachkommastellen für Sekundenbruchteile – zum Beispiel: 2009-06-12 11:29:19.131358 |
endtime | timestamp | Die genaue Uhrzeit, zu der die Ausführung der Anweisung abgeschlossen wurde, mit 6 Nachkommastellen für Sekundenbruchteile – zum Beispiel: 2009-06-12 11:29:19.193640 |
elapsed | bigint | Zeitdauer der Ausführung der Abfrage (in Mikrosekunden). |
aborted | integer | Wenn eine Abfrage vom System oder einem Benutzer beendet wurde, enthält diese Spalte den Wert 1 . Wenn die Abfrage abgeschlossen wurde, enthält diese Spalte 0 . Abfragen, die zu Workload-Verwaltungszwecken abgebrochen und anschließend erneut gestartet wurden, haben ebenfalls den Wert 1 in dieser Spalte. |
label | Zeichen (320) | Entweder der Name der für die Ausführung verwendeten Datei oder eine mit dem Befehl SET QUERY_GROUP definierte Beschriftung. Wenn die Tabelle nicht dateibasiert ist oder der Parameter QUERY_GROUP nicht eingerichtet ist, ist der Wert in diesem Feld default . |
substring | character(60) | Gekürzter Abfragetext. |
source_query | integer | Wenn für die Abfrage Ergebniszwischenspeicherung verwendet wird, ist dies die Abfrage-ID der Abfrage, anhand derer die zwischengespeicherten Ergebnisse erstellt wurden. Wenn keine Ergebniszwischenspeicherung verwendet wird, ist dieser Feldwert NULL . |
concurrency_scaling_status_txt | Text | Eine Beschreibung, ob die Abfrage auf dem Haupt-Cluster oder Nebenläufigkeitsskalierungs-Cluster ausgeführt wurde. |
from_sp_call | integer | Wenn die Abfrage von einer gespeicherten Prozedur aufgerufen wurde, die Abfrage-ID des Prozeduraufrufs. Wenn die Abfrage nicht als Teil einer gespeicherten Prozedur ausgeführt wurde, ist dieses Feld NULL . |
Beispielabfragen
Das folgende Beispiel gibt die Abfrage-ID, die Ausführungszeit und den gekürzten Abfragetext für die fünf letzten Datenbankabfragen aus, die der Benutzer mit userid = 100
ausgeführt hat.
select query, pid, elapsed, substring from svl_qlog where userid = 100 order by starttime desc limit 5; query | pid | elapsed | substring --------+-------+----------+----------------------------------------------- 187752 | 18921 | 18465685 | select query, elapsed, substring from svl_... 204168 | 5117 | 59603 | insert into testtable values (100); 187561 | 17046 | 1003052 | select * from pg_table_def where tablename... 187549 | 17046 | 1108584 | select * from STV_WLM_SERVICE_CLASS_CONFIG 187468 | 17046 | 5670661 | select * from pg_table_def where schemaname... (5 rows)
Das folgende Beispiel gibt den Namen des SQL-Scripts (Spalte LABEL) und die verstrichene Zeit für eine Abfrage zurück, die abgebrochen wurde (aborted=1
):
select query, elapsed, trim(label) querylabel from svl_qlog where aborted=1; query | elapsed | querylabel -------+----------+------------------------- 16 | 6935292 | alltickittablesjoin.sql (1 row)