SVL_STORED_PROC_CALL
Puede consultar la vista de sistema SVL_STORED_PROC_CALL para obtener información acerca de las llamadas de procedimientos almacenados, incluidos la hora de inicio, la hora de finalización y si se canceló una llamada. Cada llamada de procedimiento almacenado recibe un ID de consulta.
SVL_STORED_PROC_CALL es visible para todos los usuarios. Los superusuarios pueden ver todas las filas; los usuarios normales solo pueden ver sus datos. Para obtener más información, consulte Visibilidad de datos en las tablas y vistas de sistema.
Algunos o todos los datos de esta tabla también están en la vista de monitoreo SYS SYS_PROCEDURE_CALL. Los datos de la vista de monitoreo SYS están formateados para que sean más fáciles de usar y entender. Se recomienda utilizar la vista de monitoreo SYS para las consultas.
Columnas de la tabla
Nombre de la columna | Tipo de datos | Descripción |
---|---|---|
userid | integer | El ID del usuario cuyos privilegios se utilizaron para ejecutar la instrucción. Si esta llamada se anidó dentro de un procedimiento almacenado de SECURITY DEFINER, entonces este es el id de usuario del propietario de ese procedimiento almacenado. |
session_userid | integer | El ID del usuario que creó la sesión y el invocador de la llamada del procedimiento almacenado de nivel superior. |
consulta | integer | El ID de la consulta de la llamada del procedimiento. |
etiqueta | character(320) | Ya sea el nombre del archivo utilizado para ejecutar la consulta o una etiqueta definida con un comando SET QUERY_GROUP. Si la consulta no se basa en archivos o si no se establece el parámetro QUERY_GROUP, el valor del campo es el predeterminado. |
xid | bigint | El ID de la transacción. |
pid | integer | El ID del proceso. Por lo general, todas las consultas en una sesión se ejecutan en el mismo proceso, por lo que este valor suele permanecer constante si ejecuta una serie de consultas en la misma sesión. Después de determinados eventos internos, Amazon Redshift podría reiniciar una sesión activa y asignar un nuevo valor de PID. Para obtener más información, consulte STL_RESTARTED_SESSIONS. |
base de datos | character (32) | El nombre de la base de datos al que estaba conectado el usuario cuando se emitió la consulta. |
querytxt | character (4000) | El texto real de la consulta de la llamada del procedimiento. |
starttime | Marca de tiempo | La hora en UTC a la que la consulta comenzó a ejecutarse, con seis dígitos de precisión para los segundos fraccionados; por ejemplo, 2009-06-12 11:29:19.131358. |
endtime | Marca de tiempo | La hora en UTC a la que la consulta terminó de ejecutarse, con seis dígitos de precisión para los segundos fraccionados; por ejemplo, 2009-06-12 11:29:19.131358. |
aborted | integer | Si el sistema detuvo un procedimiento almacenado o el usuario lo canceló, esta columna tendrá el valor 1. Si la consulta se ejecutó hasta su finalización, esta columna tendrá el valor 0. |
from_sp_call | integer | Si la llamada del procedimiento la invocó otra llamada de procedimiento, esta columna contiene el ID de la consulta de la llamada externa. De lo contrario, el campo es NULL. |
Consulta de ejemplo
La siguiente consulta devuelve el tiempo transcurrido en orden descendente y el estado de finalización de las llamadas del procedimiento almacenado correspondientes al último día.
select query, datediff(seconds, starttime, endtime) as elapsed_time, aborted, trim(querytxt) as call from svl_stored_proc_call where starttime >= getdate() - interval '1 day' order by 2 desc; query | elapsed_time | aborted | call --------+--------------+---------+----------------------------------------------------------------------------------- 4166 | 7 | 0 | call search_batch_status(35,'succeeded'); 2433 | 3 | 0 | call test_batch (123456) 1810 | 1 | 0 | call prod_benchmark (123456) 1836 | 1 | 0 | call prod_testing (123456) 1808 | 1 | 0 | call prod_portfolio ('N', 123456) 1816 | 1 | 1 | call prod_portfolio ('Y', 123456)