SQL Server, objet User Settable
S’applique à : SQL Server
L’objet User Settable dans Microsoft SQL Server vous permet de créer des instances de compteur personnalisées. Utilisez des instances de compteur personnalisées pour surveiller les aspects du serveur non surveillés par les compteurs existants, tels que les composants propres à votre base de données SQL Server (par exemple, le nombre de commandes client enregistrées ou l’inventaire des produits).
L’objet User Settable contient 10 instances du compteur de requêtes : du Compte utilisateur 1 au Compte utilisateur 10. Ces compteurs sont mappés aux procédures sp_user_counter1
stockées SQL Server via sp_user_counter10
. Comme ces procédures stockées sont exécutées par les applications de l'utilisateur, les valeurs définies par les procédures stockées sont affichées dans le Moniteur système. Un compteur peut surveiller toute valeur entière (par exemple une procédure stockée qui compte combien de fois un produit en particulier a été commandé en un jour).
Remarque
Les procédures stockées des compteurs utilisateur ne sont pas automatiquement interrogées par le Moniteur système. Pour que les valeurs d'un compteur soient mises à jour, les procédures doivent être explicitement exécutées par une application de l'utilisateur. Utilisez un déclencheur pour mettre automatiquement à jour la valeur du compteur.
Ce tableau décrit l’objet SQL Server User Settable .
Compteurs SQL Server User Settable | Description |
---|---|
Requête | L’objet User Settable contient le compteur de requêtes. Les utilisateurs configurent chaque compteur utilisateur dans l’objet de requête. Chaque compteur est un type de données entier. |
Le tableau décrit les instances du compteur de requêtes .
Instances du compteur de requêtes | Description |
---|---|
Compte utilisateur 1 | Défini avec sp_user_counter1 . |
Compteur utilisateur 2 | Défini avec sp_user_counter2 . |
Compteur utilisateur 3 | Défini avec sp_user_counter3 . |
... | |
Compte utilisateur 10 | Défini avec sp_user_counter10 . |
Définir la valeur du compteur utilisateur
Pour utiliser les procédures stockées du compteur utilisateur, exécutez-les à partir de votre propre application avec un seul paramètre entier qui représente la nouvelle valeur prise par le compteur. Par exemple, pour faire passer le compteur utilisateur 1 à la valeur 10, exécutez cette instruction Transact-SQL :
EXECUTE dbo.sp_user_counter1 10;
Les procédures stockées du compteur utilisateur peuvent être appelées à partir de tout endroit où les autres procédures stockées peuvent être appelées, par exemple vos propres procédures stockées. Par exemple, vous pouvez créer la procédure stockée suivante pour compter le nombre de connexions et tentatives de connexions depuis le démarrage d’une instance de SQL Server :
DROP PROC My_Proc;
GO
CREATE PROC My_Proc
AS
EXECUTE dbo.sp_user_counter1 @@CONNECTIONS;
GO
La fonction @@CONNECTIONS retourne le nombre de connexions ou de tentatives de connexions depuis le démarrage d’une instance de SQL Server. Cette valeur est transférée comme paramètre à la procédure stockée sp_user_counter1
.
Important
Les requêtes définies dans les procédures stockées du compteur utilisateur doivent être aussi simples que possible. Les requêtes sollicitant beaucoup de mémoire, comme les requêtes de tri ou de hachage, ou celles qui impliquent des volumes importants d'E/S sont d'une exécution coûteuse en ressources et peuvent affecter les performances.
Exemple de moniteur
Vous commencez à explorer les compteurs dans cet objet en utilisant cette requête T-SQL sur la vue de gestion dynamique sys.dm_os_performance_counters :
SELECT * FROM sys.dm_os_performance_counters
WHERE object_name LIKE '%User Settable%';
autorisations
La procédure stockée sp_user_counter
est disponible pour tous les utilisateurs, mais son utilisation peut être limitée pour chacun des compteurs de requêtes.