- Categorias:
NOTIFICATION_HISTORY¶
Esta função de tabela pode ser usada para consultar o histórico das notificações enviadas pelo Snowflake. Essas notificações incluem:
As linhas retornadas representam:
Solicitações que estão sendo processadas.
Tentativas frustradas de envio de notificações.
Notificações que foram enviadas com sucesso.
A coluna STATUS indica o que cada linha representa. Consulte Exemplos de saída de função.
Sintaxe¶
NOTIFICATION_HISTORY(
[ START_TIME => <constant_expr> ]
[, END_TIME => <constant_expr> ]
[, INTEGRATION_NAME => '<string>' ]
[, RESULT_LIMIT => <integer> ] )
Argumentos¶
Todos os argumentos são opcionais.
START_TIME=> constant_expr
, .END_TIME=> constant_expr
Intervalo de tempo (em formato TIMESTAMP_LTZ) quando a notificação é enviada.
Se START_TIME não for especificado, o intervalo começa 24 horas antes do END_TIME.
Se END_TIME não for especificado, o padrão é CURRENT_TIMESTAMP.
O intervalo de tempo máximo é de 14 dias.
INTEGRATION_NAME => 'string'
O nome totalmente qualificado da integração que está ligada à notificação. Se você omitir este argumento, a função retorna todas as notificações.
Padrão: uma cadeia de caracteres vazia
RESULT_LIMIT => integer
Um número especificando o número máximo de linhas retornadas pela função.
Intervalo:
1
a10000
Padrão:
100
Saída¶
A função retorna as seguintes colunas:
Nome da coluna |
Tipo de dados |
Descrição |
---|---|---|
CREATED |
TIMESTAMP_LTZ |
Carimbo de data/hora quando a notificação foi criada. |
PROCESSED |
TIMESTAMP_LTZ |
Carimbo de data/hora da última tentativa de enviar a notificação. |
MESSAGE_SOURCE |
VARCHAR |
Tipo de objeto ou recurso que gerou a notificação. Os valores válidos incluem:
|
INTEGRATION_NAME |
VARCHAR |
|
STATUS |
VARCHAR |
Status da notificação. Os valores válidos são:
|
ERROR_MESSAGE |
VARCHAR |
Se a notificação falhou, fornece detalhes sobre o motivo da falha da notificação. Nota Para notificações de webhook, esta coluna contém o corpo da resposta HTTP, que pode conter dados confidenciais. Antes de usar esses dados, certifique-se de higienizá-los. |
ID |
VARCHAR |
ID exclusivo de uma solicitação para enviar uma notificação. Se o Snowflake não enviar uma notificação e tentar enviá-la novamente, a função retornará uma linha para cada tentativa. Cada linha para uma tentativa tem o mesmo valor na coluna ID, mas um valor diferente na coluna ATTEMPT. |
ATTEMPT |
INTEGER |
Número da tentativa feita para enviar a notificação. |
MESSAGE_SOURCE_INFO |
OBJECT |
Objeto contendo informações sobre a origem da notificação. Os campos neste objeto dependem do tipo da fonte.
|
Notas de uso¶
Retorna resultados somente para a função ACCOUNTADMIN, o proprietário da integração (ou seja, a função com o privilégio OWNERSHIP para a integração) ou uma função com o privilégio global USAGE.
Ao chamar uma função de tabela do Information Schema, a sessão deve ter um esquema INFORMATION_SCHEMA em uso ou o nome da função deve ser totalmente qualificado. Para obter mais detalhes, consulte Snowflake Information Schema.
Exemplos¶
As seções a seguir contêm exemplos de chamada de função e exemplos de saída de função:
Exemplos de chamada de função¶
Os exemplos a seguir demonstram como chamar esta função:
Recuperação das notificações mais recentes¶
Recupere as notificações mais recentes que foram criadas nas últimas 24 horas.
SELECT * FROM TABLE(INFORMATION_SCHEMA.NOTIFICATION_HISTORY());
Recuperação das notificações por hora e nome de integração¶
Recupere as notificações mais recentes que foram criadas na última hora e enviadas usando a integração chamada my_integration
.
SELECT * FROM TABLE(INFORMATION_SCHEMA.NOTIFICATION_HISTORY(
START_TIME=>DATEADD('hour',-1,CURRENT_TIMESTAMP()),
END_TIME=>CURRENT_TIMESTAMP(),
RESULT_LIMIT=>100,
INTEGRATION_NAME=>'my_integration'));
Exemplos de saída de função¶
Os exemplos a seguir explicam a saída retornada por esta função para solicitações de notificação em diferentes estados:
Exemplo de saída quando duas tentativas falham e uma terceira tentativa está em andamento
Exemplo de saída quando duas tentativas falham e uma terceira tentativa é bem-sucedida
Exemplo de saída quando duas tentativas falham e uma terceira tentativa está em andamento¶
Este exemplo seleciona um subconjunto das colunas na saída:
SELECT id, attempt, created, processed, status
FROM TABLE(INFORMATION_SCHEMA.NOTIFICATION_HISTORY());
A saída inclui as linhas que representam as tentativas de enviar uma notificação. Na saída:
A coluna ID identifica a notificação que está sendo enviada.
As duas primeiras tentativas de enviar a notificação falharam, mas o sistema pode tentar enviar a notificação novamente (conforme indicado pelo valor
RETRIABLE_FAILURE
na coluna STATUS).Uma terceira tentativa está sendo processada, conforme indicado pelo valor
QUEUED
na coluna STATUS.
+-------------------+-------------+-----------------------------------+-----------------------------------+-----------------------+
| ID | ATTEMPT | CREATED | PROCESSED | STATUS |
+-------------------+-------------+-----------------------------------+-----------------------------------+-----------------------+
| 10ae695e-93c3 | 3 | 2023-12-05 15:10:15.194 -0800 | NULL | QUEUED |
| 10ae695e-93c3 | 2 | 2023-12-05 15:10:15.194 -0800 | 2023-12-05 15:11:21.443 -0800 | RETRIABLE_FAILURE |
| 10ae695e-93c3 | 1 | 2023-12-05 15:10:15.194 -0800 | 2023-12-05 15:10:21.443 -0800 | RETRIABLE_FAILURE |
+-------------------+-------------+-----------------------------------+-----------------------------------+-----------------------+
Exemplo de saída quando duas tentativas falham e uma terceira tentativa é bem-sucedida¶
Este exemplo seleciona um subconjunto das colunas na saída:
SELECT id, attempt, created, processed, status
FROM TABLE(INFORMATION_SCHEMA.NOTIFICATION_HISTORY());
A saída inclui as linhas que representam as tentativas de enviar uma notificação. Na saída:
A coluna ID identifica a notificação que está sendo enviada.
As duas primeiras tentativas de enviar a notificação falharam, mas o sistema pode tentar enviar a notificação novamente (conforme indicado pelo valor
RETRIABLE_FAILURE
na coluna STATUS).Uma terceira tentativa foi bem-sucedida, conforme indicado pelo valor
SUCCESS
na coluna STATUS.
+-------------------+-------------+-----------------------------------+-----------------------------------+-----------------------+
| ID | ATTEMPT | CREATED | PROCESSED | STATUS |
+-------------------+-------------+-----------------------------------+-----------------------------------+-----------------------+
| 10ae695e-93c3 | 3 | 2023-12-05 15:10:15.194 -0800 | 2023-12-05 15:12:21.443 -0800 | SUCCESS |
| 10ae695e-93c3 | 2 | 2023-12-05 15:10:15.194 -0800 | 2023-12-05 15:11:21.443 -0800 | RETRIABLE_FAILURE |
| 10ae695e-93c3 | 1 | 2023-12-05 15:10:15.194 -0800 | 2023-12-05 15:10:21.443 -0800 | RETRIABLE_FAILURE |
+-------------------+-------------+-----------------------------------+-----------------------------------+-----------------------+