ALTER RESOURCE MONITOR¶
Modifie les propriétés et les déclencheurs d’un moniteur de ressources existant. Utilisez cette commande pour augmenter ou diminuer le quota de crédit, modifier des informations de programmation, ou changer/remplacer les déclencheurs pour un moniteur de ressources.
- Voir aussi :
CREATE RESOURCE MONITOR , DROP RESOURCE MONITOR , SHOW RESOURCE MONITORS , ALTER WAREHOUSE , ALTER ACCOUNT
Syntaxe¶
ALTER RESOURCE MONITOR [ IF EXISTS ] <name> [ SET { [ CREDIT_QUOTA = <num> ]
[ FREQUENCY = { MONTHLY | DAILY | WEEKLY | YEARLY | NEVER } ]
[ START_TIMESTAMP = { <timestamp> | IMMEDIATELY } ]
[ END_TIMESTAMP = <timestamp> ]
[ NOTIFY_USERS = ( <user_name> [ , <user_name> , ... ] ) ] } ]
[ TRIGGERS triggerDefinition [ triggerDefinition ... ] ]
Où :
triggerDefinition ::= ON <threshold> PERCENT DO { SUSPEND | SUSPEND_IMMEDIATE | NOTIFY }
Paramètres¶
name
Indique l’identifiant du moniteur de ressources à modifier. Si l’identificateur contient des espaces ou des caractères spéciaux, toute la chaîne doit être délimitée par des guillemets doubles. Les identificateurs entre guillemets doubles sont également sensibles à la casse.
SET ...
CREDIT_QUOTA = num
Indique le nombre de crédits alloués au moniteur de ressources par intervalle de fréquence. Lorsque l’utilisation totale de tous les entrepôts affectés au moniteur atteint ce nombre pour l’intervalle de fréquence en cours, le moniteur de ressources est considéré comme étant à 100 % du quota.
Si aucune valeur n’est spécifiée pour un moniteur de ressources, le moniteur n’a pas de quota et n’atteindra jamais 100 % d’utilisation dans l’intervalle spécifié.
FREQUENCY = MONTHLY | DAILY | WEEKLY | YEARLY | NEVER
Intervalle de fréquence auquel l’utilisation du crédit est réinitialisée à
0
.Si vous spécifiez
NEVER
pour la fréquence, l’utilisation du crédit pour l’entrepôt ne sera pas réinitialisée.START_TIMESTAMP = timestamp | IMMEDIATELY
Date et heure auxquelles le moniteur de ressources commence à surveiller l’utilisation des crédits pour les entrepôts attribués.
Si vous spécifiez
IMMEDIATELY
pour l’horodatage de début, l’horodatage actuel est utilisé.Si vous spécifiez une date sans heure, l’heure actuelle est utilisée.
Si vous définissez une heure sans spécifier de fuseau horaire, UTC est utilisé comme fuseau horaire par défaut.
END_TIMESTAMP = timestamp
Date et heure auxquelles le moniteur de ressources suspend les entrepôts attribués.
NOTIFY_USERS = ( user_name [ , user_name , ... ] )
Spécifie la liste des utilisateurs qui doivent recevoir des notifications par e-mail sur les moniteurs de ressources. Si l’identificateur de l’utilisateur comprend des espaces ou des caractères spéciaux, ou s’il est sensible à la casse, il doit être placé entre guillemets (par exemple, « Mary Smith »). Voir Exigences relatives à l’identificateur pour plus de détails.
L’identificateur de l’utilisateur,
user_name
, est la valeur de la colonnename
provenant de la sortie de SHOW USERS.Chaque utilisateur répertorié doit avoir une adresse e-mail vérifiée. Pour des instructions sur la vérification des adresses e-mail dans l’interface Web, voir :
Pour l”Classic Console : Vérification de votre adresse e-mail dans la console classique.
Pour Snowsight : Vérification de votre adresse e-mail.
Les notifications par e-mail pour les utilisateurs non administrateurs ne remplacent pas les notifications par e-mail pour les administrateurs. Tous les administrateurs de comptes qui ont activé les notifications par e-mail continueront à recevoir des notifications par e-mail.
Note
Les limitations suivantes s’appliquent aux utilisateurs non-administrateurs :
Les utilisateurs non-administrateurs reçoivent des notifications par e-mail, mais ne peuvent pas voir les notifications dans l”Classic Console.
Les utilisateurs non-administrateurs ne peuvent pas créer de moniteurs de ressources.
Les notifications sont limitées aux moniteurs de ressources des entrepôts individuels ; les utilisateurs non-administrateurs ne peuvent pas recevoir de notifications concernant les moniteurs de ressources au niveau du compte.
Les utilisateurs non administrateurs ne peuvent pas désigner d’autres utilisateurs à notifier.
TRIGGERS ...
(aka actions)Spécifie un ou plusieurs déclencheurs pour le moniteur de ressources. Chaque définition de déclenchement est constituée des éléments suivants :
ON threshold PERCENT
(pourcentage d’utilisation ; les valeurs supérieures à100
sont prises en charge)DO SUSPEND | SUSPEND_IMMEDIATE | NOTIFY
(action à effectuer lorsque le seuil est atteint).
Pour plus de détails, voir CREATE RESOURCE MONITOR.
Notes sur l’utilisation¶
Si un déclencheur
SUSPEND
ouSUSPEND_IMMEDIATE
est actif pour un moniteur de ressources et que le seuil de déclenchement a été atteint pour l’intervalle de fréquence spécifié, empêchant ainsi le démarrage/la reprise de tous les entrepôts assignés, vous pouvez utiliser cette commande pour augmenter le quota de crédit au-dessus du seuil de déclenchement ou remplacer le déclencheur par un nouveau déclencheur dont le seuil est plus élevé.Dès que le quota de crédit ou le seuil de déclenchement du moniteur de ressources a été augmenté, les entrepôts assignés peuvent être lancés ou repris.
Le paramètre
TRIGGERS
n’est pas cumulable (c’est-à-dire qu’il supprime tous les déclencheurs existants pour le moniteur de ressources et les remplace par les déclencheurs indiqués).Par conséquent, pour apporter des modifications aux déclencheurs existants, vous devez spécifier les nouveaux déclencheurs et répliquer les déclencheurs existants.
Si les paramètres
frequency
etstart_timestamp
sont définis sur un moniteur de ressources, le jour de la réinitialisation de l’utilisation du crédit est calculé en fonction de ces paramètres. L’heure à laquelle l’utilisation du crédit revient à0
est 12:00 AM UTC indépendamment de l’heure spécifiée dansstart_timestamp
.Si vous spécifiez un
end_timestamp
, la surveillance se termine à la date et à l’heure spécifiées et tous les entrepôts affectés sont suspendus à cette date et à cette heure, même si le quota de crédit n’a pas été atteint.Lorsque cela se produit, une notification est envoyée indiquant que le moniteur de ressources a atteint un pourcentage de son quota et a déclenché une action de suspension immédiate. Le pourcentage du quota reflète le nombre de crédits utilisés dans l’intervalle actuel jusqu’à la date de fin et peut ne pas correspondre au seuil que vous avez spécifié.
Si la liste de notification contient des utilisateurs qui ne sont pas administrateurs, les remarques suivantes s’appliquent :
Si un utilisateur n’a pas d’adresse e-mail vérifiée, l’instruction SQL échoue.
Si un utilisateur figurant dans la liste de notification modifie son adresse e-mail et ne vérifie pas la nouvelle adresse e-mail, la notification échoue silencieusement.
La liste des notifications est limitée à un nombre maximum de 5 utilisateurs non-administrateurs.
Les administrateurs de compte peuvent voir la liste des notifications des utilisateurs non-administrateurs dans la sortie de SHOW RESOURCE MONITORS dans la colonne
notify_user
.
Concernant les métadonnées :
Attention
Les clients doivent s’assurer qu’aucune donnée personnelle (autre que pour un objet utilisateur), donnée sensible, donnée à exportation contrôlée ou autre donnée réglementée n’est saisie comme métadonnée lors de l’utilisation du service Snowflake. Pour plus d’informations, voir Champs de métadonnées dans Snowflake.
Exemples¶
Spécifier un nouveau quota de crédit pour le limiter
de moniteur de ressources et remplacer les déclencheurs existants pour le moniteur par un nouvel ensemble de déclencheurs :
ALTER RESOURCE MONITOR limiter SET CREDIT_QUOTA=2000 TRIGGERS ON 80 PERCENT DO NOTIFY ON 100 PERCENT DO SUSPEND_IMMEDIATE;
Modifiez un moniteur de ressources pour envoyer des notifications à trois utilisateurs lorsque 80 % du quota de crédit est atteint. Dans cet exemple, le user_name
de deux des utilisateurs comprend un espace et est donc placé entre guillemets :
ALTER RESOURCE MONITOR limiter SET CREDIT_QUOTA = 2000 NOTIFY_USERS = (JDOE, "Jane Smith", "John Doe") TRIGGERS ON 80 PERCENT DO NOTIFY ON 100 PERCENT DO SUSPEND_IMMEDIATE