Powershell – Script – Suppression création de compteur de performance

par | Mar 12, 2015 | PowerShell | 0 commentaires

 

Il peut être nécessaire dans le cas d’un script insérant des données de performance de supprimer/recréer l’objet de performance

L’exemple ci-dessous montre la suppression ré-création d’un objet MyObject et d’un compteur de performance Mycounter1.

On vérifie l’existence de l’objet de performance via wmi et l’objet .net [Diagnostics.PerformanceCounterCategory]

On supprime MyObject

On recrée l’objet et son compteur  via Diagnostics.CounterCreationDataCollection et Diagnostics.CounterCreationData

On soumet la création de l’objet “global” via [Diagnostics.PerformanceCounterCategory]

Le compteur peut a partir de là être alimenté et interrogé.

 

if((GetWmiObject Query « Select * from Win32_perfformatteddata_MyObject_MyObject« ).MyCounter1 -eq 0 ` -OR (GetWmiObject Query « Select * from Win32_perfformatteddata_MyObject_MyObject« ).MyCounter1 -eq $null ` -AND [Diagnostics.PerformanceCounterCategory]::Exists(“MyObject”)) { writehost « Suppression et re-creation de l’objet de performance MyObject«  #Suppression [Diagnostics.PerformanceCounterCategory]::Delete(“MyObject”); #Creation de l’objet de perf $script:cntrColl = NewObject Diagnostics.CounterCreationDataCollection; WriteHost « Add counter 1« ; $counter = NewObject Diagnostics.CounterCreationData; $counter.CounterName = « Mycounter1« ; $counter.CounterHelp = « Help for Counter_1« ; $counter.CounterType = [Diagnostics.PerformanceCounterType]::NumberOfItems64; $script:cntrColl.Add($counter); #Ajout du compteur WriteHost « Ajout du compteur a PerfMon« ; [Diagnostics.PerformanceCounterCategory]::Create(“MyObject”, “My counter”, $script:cntrColl); }

0 commentaires

Soumettre un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *