- Catégories :
ALERT_HISTORY¶
Cette fonction de table INFORMATION_SCHEMA peut être utilisée pour interroger l’historique de l’utilisation des alertes dans une plage de dates spécifiée. La fonction renvoie l’historique d’utilisation des alertes pour l’ensemble de votre compte Snowflake ou pour une alerte spécifiée.
Vous pouvez également accéder à ces informations via la vue ALERT_HISTORY dans le schéma ACCOUNT_USAGE. Pour plus de détails sur les différences entre la fonction de vue et de table, reportez-vous à Différences entre Account Usage et Information Schema.
Note
Cette fonction renvoie l’activité de l’alerte au cours des 7 derniers jours ou de la prochaine exécution programmée au cours des 8 prochains jours.
Syntaxe¶
ALERT_HISTORY(
[ SCHEDULED_TIME_RANGE_START => <constant_expr> ]
[, SCHEDULED_TIME_RANGE_END => <constant_expr> ]
[, RESULT_LIMIT => <integer> ]
[, ALERT_NAME => '<string>' ] )
Arguments¶
Tous les arguments sont facultatifs.
SCHEDULED_TIME_RANGE_START => constant_expr
, .SCHEDULED_TIME_RANGE_END => constant_expr
Période (au format TIMESTAMP_LTZ), au cours des 7 derniers jours, pendant laquelle l’évaluation de la condition de l’alerte a été programmée.
Si
SCHEDULED_TIME_RANGE_END
n’est pas spécifié, la fonction renvoie les alertes déjà terminées, en cours d’exécution ou planifiées ultérieurement.Si
SCHEDULED_TIME_RANGE_END
vaut CURRENT_TIMESTAMP, la fonction renvoie les alertes déjà terminées ou en cours d’exécution. Notez qu’une alerte exécutée immédiatement avant l’heure actuelle peut toujours être identifiée comme étant planifiée.
Note
Si aucune heure de début ou de fin n’est spécifiée, les alertes les plus récentes sont renvoyées, jusqu’à la valeur RESULT_LIMIT spécifiée.
Si l’intervalle de temps ne tombe pas dans les 7 derniers jours, une erreur est renvoyée.
RESULT_LIMIT => integer
Un nombre spécifiant le nombre maximum de lignes renvoyé par la fonction.
Si le nombre de lignes correspondantes est supérieur à cette limite, les exécutions d’alertes avec l’horodatage le plus récent sont renvoyées, jusqu’à la limite spécifiée.
Plage : de
1
à10000
Par défaut :
100
.ALERT_NAME => string
Une chaîne insensible à la casse spécifiant une alerte. Seuls les noms d’alerte non qualifiés sont pris en charge. Seules les exécutions de l’alerte spécifiée sont renvoyées. Notez que si plusieurs alertes portent le même nom, la fonction renvoie l’historique de chacune de ces alertes.
Notes sur l’utilisation¶
Renvoie les résultats uniquement pour le rôle ACCOUNTADMIN ou le propriétaire de l’alerte (c’est-à-dire le rôle doté du privilège OWNERSHIP sur la tâche).
Cette fonction renvoie un maximum de 10 000 lignes, définies dans la valeur de l’argument
RESULT_LIMIT
. La valeur par défaut est100
.Notez que lorsque la fonction ALERT_HISTORY est interrogée, ses arguments de nom d’alerte, d’intervalle de temps et de limite de résultat sont appliqués d’abord, suivis des clauses WHERE et LIMIT, respectivement, si elles sont spécifiées. En outre, la fonction ALERT_HISTORY renvoie les enregistrements dans l’ordre SCHEDULED_TIME décroissant. Les alertes qui sont terminées (c’est-à-dire avec un état SUCCEEDED, FAILED ou CANCELLED) ont tendance à être programmées plus tôt, de sorte qu’elles sont généralement renvoyées plus tard dans l’ordre dans les résultats de la recherche.
En pratique, si vous avez de nombreuses alertes en cours sur votre compte, les résultats renvoyés par la fonction pourraient inclure moins d’alertes terminées que prévu, ou que des alertes programmées, surtout si la valeur RESULT_LIMIT est relativement faible. Pour interroger l’historique des alertes déjà exécutées, Snowflake recommande d’utiliser une combinaison des arguments
SCHEDULED_TIME_RANGE_START => constant_expr
et/ouSCHEDULED_TIME_RANGE_END => constant_expr
.Lors de l’appel d’une fonction de table Information Schema, la session doit avoir un schéma INFORMATION_SCHEMA en cours d’utilisation ou le nom de la fonction doit être complètement qualifié. Pour plus de détails, voir Schéma d’information de Snowflake.
Cette fonction peut renvoyer toutes les exécutions exécutées au cours des sept derniers jours ou la prochaine exécution planifiée au cours des huit jours suivants.
Sortie¶
La fonction de table ALERT_HISTORY produit une ligne pour chaque exécution d’alerte. Chaque ligne contient les colonnes suivantes :
Nom de la colonne |
Type de données |
Description |
---|---|---|
NAME |
TEXT |
Nom de l’alerte. |
DATABASE_NAME |
TEXT |
Nom de la base de données contenant l’alerte. |
SCHEMA_NAME |
TEXT |
Nom du schéma contenant l’alerte. |
CONDITION |
TEXT |
Texte de l’instruction SQL qui sert de condition à l’alerte. |
CONDITION_QUERY_ID |
TEXT |
Identificateur interne/système pour l’instruction SQL exécutée comme condition de l’alerte. |
ACTION |
TEXT |
Texte de l’instruction SQL qui sert d’action pour l’alerte. |
ACTION_QUERY_ID |
TEXT |
Identificateur interne/système pour l’instruction SQL exécutée comme action de l’alerte. |
STATE |
TEXT |
Statut de l’alerte. Elle peut être sous la forme suivante :
|
SQL_ERROR_CODE |
NUMBER |
Code d’erreur, si l’alerte renvoie une erreur ou ne s’exécute pas (par exemple, si l’utilisateur actuel n’a pas les privilèges pour exécuter l’alerte). |
SQL_ERROR_MESSAGE |
VARCHAR |
Message d’erreur si l’alerte a renvoyé une erreur. |
SCHEDULED_TIME |
TIMESTAMP_LTZ |
Heure à laquelle le début de l’exécution de la tâche est/était programmée. Notez que nous faisons de notre mieux pour assurer une précision absolue, mais nous garantissons uniquement que les alertes ne s’exécutent pas avant leur heure programmée. |
COMPLETED_TIME |
TIMESTAMP_LTZ |
Heure de fin de l’alerte ou NULL si SCHEDULED_TIME est dans le futur ou si l’alerte est toujours en cours d’exécution. |