Conception d’objet et de compteur
Un objet de performance est une entité pour laquelle des données de performances sont disponibles. Les compteurs de performances définissent le type de données disponibles pour un objet de performance. Une application peut fournir des informations pour plusieurs objets de performances. Les objets de performance peuvent contenir des compteurs de instance uniques ou plusieurs compteurs instance. Un objet instance unique retourne un ensemble unique de valeurs de compteur.
Un objet instance multiple retourne une instance de l’objet pour chaque occurrence de l’objet que l’application contrôle. Par exemple, une application SCSI peut définir un objet de lecteur avec deux compteurs, par exemple octets lus et octets écrits. Lorsque le consommateur interroge l’objet, la DLL de performances retourne une instance de l’objet pour chaque lecteur que l’application contrôle.
Après avoir décidé si votre objet prend en charge une seule instance ou plusieurs instances, vous devez choisir le type de compteurs que vous souhaitez que l’objet fournisse. Par exemple, vous pouvez fournir des valeurs de compteur qui sont affichées sous forme de valeurs brutes, de taux ou de pourcentages.
Pour obtenir la liste des types de compteurs prédéfinis que vous devez choisir, consultez la section Types de compteurs du Kit de déploiement Windows Server 2003. Selon le type de compteur, vous pouvez simplement fournir les données brutes, ou vous devrez peut-être également fournir des informations d’heure et de fréquence et des données de compteur supplémentaires utilisées par le consommateur pour calculer une valeur d’affichage.
La méthode que vous utilisez pour collecter les données peut être aussi simple que l’incrémentation d’un compteur chaque fois qu’une routine particulière dans l’application est appelée, ou elle peut impliquer des calculs fastidieux. Les compteurs et les minuteurs doivent s’incrémenter et ne jamais être effacés. Les compteurs peuvent être encapsulés, à condition qu’ils n’encapsulent pas deux fois entre leur échantillonnage par le consommateur. Votre application peut collecter et stocker des données pendant leur exécution normale, tant qu’elles n’affectent pas ses performances.
Pour certains types de données, il peut être plus efficace ou approprié de collecter les données à la demande. Dans ce cas, la DLL de performances doit communiquer à l’application que les données ont été demandées. Pour les données coûteuses à collecter (en termes de temps processeur ou d’utilisation de la mémoire), envisagez de collecter des données uniquement lorsque le consommateur demande des données coûteuses . Cela permet à un consommateur de demander régulièrement des données pour tous les compteurs qui ne sont pas coûteux. Les données peuvent être demandées uniquement en cas de besoin. L’outil Performance ne collecte pas de données costly .