SVL_QLOG - Amazon Redshift

SVL_QLOG

The SVL_QLOG view contains a log of all queries run against the database.

Amazon Redshift creates the SVL_QLOG view as a readable subset of information from the STL_QUERY table. Use this table to find the query ID for a recently run query or to see how long it took a query to complete.

SVL_QLOG is visible to all users. Superusers can see all rows; regular users can see only their own data. For more information, see Visibility of data in system tables and views.

Some or all of the data in this table can also be found in the SYS monitoring view SYS_QUERY_HISTORY. The data in the SYS monitoring view is formatted to be easier to use and understand. We recommend that you use the SYS monitoring view for your queries.

Table columns

Column name Data type Description
userid integer ID of the user who generated the entry.
query integer Query ID. You can use this ID to join various other system tables and views.
xid bigint Transaction ID.
pid integer Process ID associated with the query.
starttime timestamp Exact time when the statement started executing, with six digits of precision for fractional seconds—for example: 2009-06-12 11:29:19.131358
endtime timestamp Exact time when the statement finished executing, with six digits of precision for fractional seconds—for example: 2009-06-12 11:29:19.193640
elapsed bigint Length of time that it took the query to run (in microseconds).
aborted integer If a query was stopped by the system or canceled by the user, this column contains 1. If the query ran to completion, this column contains 0. Queries that are canceled for workload management purposes and subsequently restarted also have a value of 1 in this column.
label character(320) Either the name of the file used to run the query, or a label defined with a SET QUERY_GROUP command. If the query is not file-based or the QUERY_GROUP parameter is not set, this field value is default.
substring character(60) Truncated query text.
source_query integer If the query used result caching, the query ID of the query that was the source of the cached results. If result caching was not used, this field value is NULL.
concurrency_scaling_status_txt text A description of whether the query ran on the main cluster or concurrency scaling cluster.
from_sp_call integer If the query was called from a stored procedure, the query ID of the procedure call. If the query wasn't run as part of a stored procedure, this field is NULL.

Sample queries

The following example returns the query ID, execution time, and truncated query text for the five most recent database queries run by the user with userid = 100.

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)

The following example returns the SQL script name (LABEL column) and elapsed time for a query that was cancelled (aborted=1):

select query, elapsed, trim(label) querylabel from svl_qlog where aborted=1; query | elapsed | querylabel -------+----------+------------------------- 16 | 6935292 | alltickittablesjoin.sql (1 row)