SYS_PROCEDURE_CALL - Amazon Redshift

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

SYS_PROCEDURE_CALL

Puoi utilizzare la vista SYS_PROCEDURE_CALL per ottenere informazioni sulle chiamate delle stored procedure, tra cui l'ora di fine, lo stato di una chiamata di una stored procedure e la gerarchia delle chiamate delle stored procedure archiviate. Ogni chiamata di procedura archiviata riceve un'ID query.

SYS_PROCEDURE_CALL è visibile a tutti gli utenti. Gli utenti con privilegi avanzati visualizzano tutte le righe; gli utenti regolari visualizzano solo i propri dati. Per ulteriori informazioni, consultare Visibilità dei dati nelle tabelle e nelle viste di sistema.

Colonne di tabella

Nome colonna Tipo di dati Descrizione
session_user_id integer L'ID dell'utente che ha creato la sessione ed è l'invoker della chiamata della stored procedure archiviata di primo livello.
security_user_id integer L'identificativo dell'utente i cui privilegi erano stati utilizzati per eseguire l'istruzione nella stored procedure. Se la stored procedure è DEFINER, questo sarà lo user_id del proprietario della stored procedure.
query_id integer L'identificativo della query della chiamata della stored procedure.
query_text char(4000) Il testo della query della chiamata della stored procedure.
start_time timestamp L'orario in UTC in cui è iniziata l'esecuzione della query. Il timestamp utilizza sei cifre di precisione per frazioni di secondo, ad esempio. 2009-06-12 11:29:19.131358.
end_time timestamp L'orario in UTC in cui è terminata l'esecuzione della query. Il timestamp utilizza sei cifre di precisione per frazioni di secondo, ad esempio: 2009-06-12 11:29:19.131358.
status char(10) Lo stato della chiamata alla stored procedure. Quando la stored procedure viene arrestata dal sistema o annullata dall'utente, il valore viene annullato. Se la chiamata alla stored procedure viene eseguita fino al completamento, il valore è operazione riuscita.
caller_procedure_query_id integer Se la chiamata alla stored procedure è stata richiamata da un'altra chiamata di stored procedure, questa colonna contiene l'ID query della chiamata esterna. Altrimenti il campo è NULL.

Query di esempio

La seguente query restituisce una gerarchia di chiamata di stored procedure nidificata.

select query_id, datediff(seconds, start_time, end_time) as elapsed_time, status, trim(query_text) as call, caller_procedure_query_id from sys_procedure_call;

Output di esempio.

query_id | elapsed_time | status | call | caller_procedure_query_id ----------+--------------+---------+--------------------------------------------------+--------------------------- 3087 | 18 | success | CALL proc_bd906c98c45443ffa165e9552056902d(1) | 3085 3085 | 18 | success | CALL proc_bd906c98c45443ffa165e9552056902d_2(1); | (2 rows)