Le package PerfCounter permet de suivre des compteurs de performance Windows et de les injecter en tant que StateObject dans Constellation.

Le code source du package est disponible sur : https://github.com/myconstellation/constellation-packages/tree/master/PerfCounter

Installation

Depuis le “Online Package Repository” de votre Console Constellation, déployez le package PerfCounter :

image

Une fois le package télécharger votre repository local, sélectionnez la sentinelle sur laquelle déployer le package.

Pour finir, sur la page de Settings, vous devez obligatoirement définir le setting “PerfCounters”. Il s’agit d’un setting de type “ConfigurationSection” c’est à dire que la configuration de ce setting est décrite en XML.

image

Vous devez spécifier une liste de <perfCounter> dont les attributs sont :

  • id (obligatoire) : l’identifiant unique de ce compteur performance qui sera utilisé comme nom pour le StateObject
  • categoryName (obligatoire) : la catégorie du compteur de performance
  • counterName (obligatoire) : le nom du compteur de performance
  • instanceName (optionnel) : le nom de l’instance du compteur de performance si nécessaire
  • machineName (optionnel) : le nom de la machine sur laquelle récupérer le compteur de performance (si vide, c’est la machine il s’agit local)

Par exemple pour récupérer la mémoire RAM disponible (catégorie “Memory”, nom “Available MBytes”, aucune instance) :

Pour la consommation globale du CPU (catégorie “Processor”, nom “% Processor Time”, instance “_Total”) :

Chaque produit (Constellation Server y compris) peuvent publier des compteurs de performances (ASP.NET, IIS, SQL Server, Windows, etc..). Vous pouvez donc facilement les injecter dans Constellation.

Par exemple, ci-dessous une configuration du package injectant dans Constellation les compteurs de performance relatif au processeur, mémoire RAM, interfaces réseau, disque physique C:, ASP.NET, la CLR .net, le service IIS et SQL Server :

Vous pouvez également déployer ce package manuellement dans la configuration de votre Constellation :

Détails du package

Les Settings

Nom Type Détail Description
PerfCounters ConfigurationSection(XML) Obligatoire Configuration des compteurs de performance à suivre
RefreshInterval Int32 Optionnel
Par défaut : 1000
Intervalle de temps en milliseconde pour interroger les compteurs de performance enregistrés et mettre à jour les StateObjects correspondants.

Les StateObjects

Vous retrouverez autant de StateObject que de compteur de performance enregistrés dans la configuration de votre package.

Nom Type Description
<< ID du PerfCounter >> Single Valeur numérique du compteur de performance

image

Les MessageCallbacks

Ce package n’expose aucun MessageCallback.

Quelques exemples

  • Afficher les valeurs des PerfCounters de différents serveurs Windows sur une page Web
  • Piloter une bande de LED en fonction du nombre de requête HTTP sur un serveur IIS avec un Arduino/ESP
PerfCounter : intégrez les compteurs de performance Windows dans Constellation
Editer la page sur GitHub
Étiqueté avec :                        

Démarrez la discussion sur le forum Constellation