- Categorias:
<service_name>!SPCS_GET_EVENTS¶
Retorna os eventos que o Snowflake coletou para o serviço especificado. Para obter mais informações, consulte Acessar eventos da plataforma.
Nota
A função é compatível apenas com serviços e trabalhos criados na versão 9.20 ou posterior.
- Consulte também:
Sintaxe¶
<service_name>!SPCS_GET_EVENTS(
[ START_TIME => <constant_expr> ],
[ END_TIME => <constant_expr> ] )
Argumentos¶
START_TIME => constant_exprHora de início (em TIMESTAMP_LTZ Formato) para o intervalo de tempo a partir do qual os eventos devem ser recuperados. Para as funções disponíveis para construção de dados, hora e carimbo de data/hora, consulte Funções de data e hora.
Se o
START_TIMEnão é especificado, o padrão é um dia atrás.END_TIME => constant_exprHora de fim (no formato TIMESTAMP_LTZ) para o intervalo de tempo a partir do qual os eventos devem ser recuperados.
Se END_TIME não é especificado, o padrão é o carimbo de data/hora atual.
Saída¶
Coluna |
Tipo |
Descrição |
|---|---|---|
TIMESTAMP |
TIMESTAMP_NTZ |
Carimbo de data/hora no horário universal coordenado (UTC) em que o Snowflake coletou o evento. Esse valor é mapeado para a coluna TIMESTAMP na tabela de eventos. |
SEVERITY |
VARCHAR |
Gravidade do evento. Esse valor é mapeado para o campo |
EVENT_NAME |
VARCHAR |
Nome do evento. Esse valor é mapeado para o campo |
EVENT_DETAILS |
OBJECT |
Detalhes sobre o evento. Esse valor é mapeado para a coluna VALUE na tabela de eventos. |
INSTANCE_ID |
NUMBER |
Identificador da instância de serviço se o evento estiver relacionado a uma instância de serviço. Esse valor é mapeado para o campo |
CONTAINER_NAME |
VARCHAR |
Nome do contêiner se o evento estiver relacionado a um contêiner. Esse valor é mapeado para o campo |
RECORD |
OBJECT |
Informações de evento no formato JSON. Esse valor é mapeado para a coluna RECORD na tabela de eventos. |
RECORD_ATTRIBUTES |
OBJECT |
Informações adicionais sobre o evento. Esse valor é mapeado para a coluna RECORD_ATTRIBUTES na tabela de eventos. |
Requisitos de controle de acesso¶
A função usada para executar essa operação deve ter, no mínimo, os seguintes privilégios:
Privilégio |
Objeto |
Notas |
|---|---|---|
OWNERSHIP |
Serviço |
OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege). |
O privilégio USAGE no banco de dados e no esquema pai é necessário para executar operações em qualquer objeto de um esquema. Observe que uma função com privilégio concedido em um esquema permite que essa função resolva o esquema. Por exemplo, uma função com privilégio CREATE concedido em um esquema pode criar objetos nesse esquema sem também ter USAGE concedido nesse esquema.
Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte Criação de funções personalizadas.
Para informações gerais sobre concessões de funções e privilégios para executar ações de SQL em objetos protegíveis, consulte Visão geral do controle de acesso.
Notas de uso¶
Pode levar alguns minutos antes que os eventos sejam mostrados na saída.
Exemplos¶
Recuperar os eventos que o Snowflake registrou para o trabalho my_test_job no último dia.
SELECT * FROM TABLE(my_test_job!SPCS_GET_EVENTS());
Exemplo de saída:
+-------------------------+----------+-------------------------+----------------------------------------+-------------+----------------+--------------------------------------+-------------------+
| TIMESTAMP | SEVERITY | EVENT_NAME | EVENT_DETAILS | INSTANCE_ID | CONTAINER_NAME | RECORD | RECORD_ATTRIBUTES |
|-------------------------+----------+-------------------------+----------------------------------------+-------------+----------------+--------------------------------------+-------------------|
| 2025-06-26 00:23:40.933 | INFO | CONTAINER.STATUS_CHANGE | { | NULL | main | { | NULL |
| | | | "message": "Completed successfully", | | | "name": "CONTAINER.STATUS_CHANGE", | |
| | | | "status": "DONE" | | | "severity_text": "INFO" | |
| | | | } | | | } | |
| 2025-06-26 00:23:35.919 | INFO | CONTAINER.STATUS_CHANGE | { | NULL | main | { | NULL |
| | | | "message": "Running", | | | "name": "CONTAINER.STATUS_CHANGE", | |
| | | | "status": "READY" | | | "severity_text": "INFO" | |
| | | | } | | | } | |
| 2025-06-26 00:23:34.127 | INFO | CONTAINER.STATUS_CHANGE | { | NULL | main | { | NULL |
| | | | "message": "Waiting to start", | | | "name": "CONTAINER.STATUS_CHANGE", | |
| | | | "status": "PENDING" | | | "severity_text": "INFO" | |
| | | | } | | | } | |
+-------------------------+----------+-------------------------+----------------------------------------+-------------+----------------+--------------------------------------+-------------------+
Recuperar os eventos que o Snowflake registrou para o trabalho my_test_job nos últimos três dias.
SELECT * FROM TABLE(my_test_job!SPCS_GET_EVENTS(START_TIME => DATEADD('day', -3, CURRENT_TIMESTAMP())));