SQL Server : incrémenter un compteur de performance utilisateur

Dans mon précédent billet, je vous parlais des compteurs de performance SQL Server réservé utilisateur, ou plutôt aux développeurs.

La seule chose qu’il manque, c’est une procédure qui permet de simplement incrémenter la valeur du compteur.

Voici un petit script qui comble cette lacune :

CREATE PROCEDURE usp_incremente_counter1
    @Increment INT
AS

    DECLARE @Valeur INT
    SELECT @Valeur = @Increment + cntr_value
    FROM sys.dm_os_performance_counters
    WHERE instance_name = ‘User counter 1′
    and [OBJECT_NAME] like ‘%User Settable%’
    and counter_name = ‘Query’

    EXEC sp_user_counter1 @Valeur
GO

Dans votre code, il suffit à présent d’appeler la procédure stockée d’incrément en lui passant un paramètre :

EXEC usp_incremente_counter1 10

On peut vérifier le résultat à l’aide de la requête sur la DMV sys.dm_os_performance_counters :

SELECT *
FROM sys.dm_os_performance_counters
WHERE instance_name = ‘User counter 1′
AND   [OBJECT_NAME] LIKE ‘%User Settable%’
AND      counter_name = ‘Query’

Bien sur il est tout a fait possible d’adapter ce code afin de le rendre générique, pour les 10 compteurs disponibles. Il suffit alors d’ajouter un paramètre à cette procédure et de modifier la condition WHERE de la requête sur le DMV. Et d’ajouter un peu de code dynamique pour appeler la bonne procédure sp_user_counter[x].

About these ads

À propos de Christophe

Consultant SQL Server Formateur certifié Microsoft MVP SQL Server MCM SQL Server 2008
Cette entrée a été publiée dans SQL Server. Bookmarquez ce permalien.

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s