Import-Counter
Importe les fichiers journaux des compteurs de performances et crée les objets qui représentent chaque exemple de compteur dans le journal.
Syntaxe
Import-Counter
[-Path] <String[]>
[-StartTime <DateTime>]
[-EndTime <DateTime>]
[-Counter <String[]>]
[-MaxSamples <Int64>]
[<CommonParameters>]
Import-Counter
[-Path] <String[]>
-ListSet <String[]>
[<CommonParameters>]
Import-Counter
[-Path] <String[]>
[-Summary]
[<CommonParameters>]
Description
L’applet de commande Import-Counter
importe les données du compteur de performances à partir des fichiers journaux des compteurs de performances et crée des objets pour chaque exemple de compteur dans le fichier. Les objets PerformanceCounterSampleSet qu’il crée sont identiques aux objets qui Get-Counter
retournent lorsqu’il collecte des données de compteur de performances.
Vous pouvez importer des données à partir d’une valeur séparée par des virgules (.csv
), une valeur séparée par des tabulations (.tsv
) et des fichiers journaux de performances binaires (.blg
). Si vous utilisez des fichiers .blg
, vous pouvez importer jusqu’à 32 fichiers dans chaque commande. Vous pouvez utiliser les paramètres de Import-Counter
pour filtrer les données que vous importez.
Outre les applets de commande Get-Counter
et Export-Counter
, cette fonctionnalité vous permet de collecter, d’exporter, d’importer, de combiner, de filtrer, de manipuler et de réexporter les données du compteur de performances dans Windows PowerShell.
Exemples
Exemple 1 : Importer toutes les données de compteur à partir d’un fichier
$data = Import-Counter -Path ProcessorData.csv
Cette commande importe toutes les données de compteur du fichier ProcessorData.csv
dans la variable $data
.
Exemple 2 : Importer des données de compteur spécifiques à partir d’un fichier
$i = Import-Counter -Path "ProcessorData.blg" -Counter "\\SERVER01\Processor(_Total)\Interrupts/sec"
Cette commande importe uniquement les données de compteur « Processor(_total)\Interrupts/sec » du fichier ProcessorData.blg
dans la variable $i
.
Exemple 3 : Sélectionner des données à partir d’un compteur de performances, puis les exporter vers un fichier
Cet exemple montre comment sélectionner des données à partir d’un fichier journal du compteur de performances (.blg
), puis exporter les données sélectionnées vers un fichier .csv
. Les quatre premières commandes obtiennent les chemins du compteur à partir du fichier et les enregistrent dans la variable nommée $data
. Les deux dernières commandes importent les données sélectionnées, puis exportent uniquement les données sélectionnées.
$data = Import-Counter .\ProcessorData.blg
$data[0].CounterSamples | Format-Table -Property Path
Path
----
\\SERVER01\Processor(_Total)\DPC Rate
\\SERVER01\Processor(1)\DPC Rate
\\SERVER01\Processor(0)\DPC Rate
\\SERVER01\Processor(_Total)\% Idle Time
\\SERVER01\Processor(1)\% Idle Time
\\SERVER01\Processor(0)\% Idle Time
\\SERVER01\Processor(_Total)\% C3 Time
\\SERVER01\Processor(1)\% C3 Time
$intCtrs = $Data[0].Countersamples | Where-Object {$_.Path -like "*Interrupts/sec"} | ForEach-Object {$_.Path}
$intCtrs
\\SERVER01\Processor(_Total)\Interrupts/sec
\\SERVER01\Processor(1)\Interrupts/sec
\\SERVER01\Processor(0)\Interrupts/sec
$i = Import-Counter -Path .\ProcessorData.blg -Counter $intCtrs
$i | Export-Counter -Path .\Interrupts.csv -Format CSV
La première commande utilise Import-Counter
pour importer toutes les données du compteur de performances à partir des fichiers ProcessorData.blg
. La commande enregistre les données dans la variable $data
.
La deuxième commande affiche les chemins de compteur dans la variable $data
. Pour obtenir l’affichage affiché dans la sortie de commande, l’exemple utilise l’applet de commande Format-Table
pour mettre en forme en tant que tableau les chemins de compteur du premier compteur dans la variable $data
.
La troisième commande obtient les chemins d’accès du compteur qui se terminent par Interrupts/sec
et enregistre les chemins d’accès dans la variable $intCtrs
. Il utilise l’applet de commande Where-Object
pour filtrer les chemins de compteur et l’applet de commande ForEach-Object
pour obtenir uniquement la valeur de la propriété Path de chaque objet path sélectionné.
La quatrième commande affiche les chemins de compteur sélectionnés dans la variable $intCtrs
.
La cinquième commande utilise l’applet de commande Import-Counter
pour importer les données. Elle utilise la variable $intCtrs
comme valeur du paramètre Counter pour importer uniquement des données pour les chemins de compteur dans $intCtrs
.
La sixième commande utilise l’applet de commande Export-Counter
pour exporter les données dans le fichier Interrupts.csv
.
Exemple 4 : Afficher tous les chemins d’accès des compteurs dans un groupe de jeux de compteurs importés
Cet exemple montre comment afficher tous les chemins d’accès des compteurs dans un groupe de jeux de compteurs importés.
Import-Counter -Path ProcessorData.csv -ListSet *
CounterSetName : Processor
MachineName : \\SERVER01
CounterSetType : MultiInstance
Description :
Paths : {\\SERVER01\Processor(*)\DPC Rate, \\SERVER01\Processor(*)\% Idle Time, \\SERVER01
\Processor(*)\% C3 Time, \\SERVER01\Processor(*)\% Interrupt Time...}
PathsWithInstances : {\\SERVER01\Processor(_Total)\DPC Rate, \\SERVER01\Processor(1)\DPC Rate, \\SERVER01
\Processor(0)\DPC Rate, \\SERVER01\Processor(_Total)\% Idle Time...}
Counter : {\\SERVER01\Processor(*)\DPC Rate, \\SERVER01\Processor(*)\% Idle Time, \\SERVER01
\Processor(*)\% C3 Time, \\SERVER01\Processor(*)\% Interrupt Time...}
Import-Counter -Path ProcessorData.csv -ListSet * | ForEach-Object {$_.Paths}
\\SERVER01\Processor(*)\DPC Rate
\\SERVER01\Processor(*)\% Idle Time
\\SERVER01\Processor(*)\% C3 Time
\\SERVER01\Processor(*)\% Interrupt Time
\\SERVER01\Processor(*)\% C2 Time
\\SERVER01\Processor(*)\% User Time
\\SERVER01\Processor(*)\% C1 Time
\\SERVER01\Processor(*)\% Processor Time
\\SERVER01\Processor(*)\C1 Transitions/sec
\\SERVER01\Processor(*)\% DPC Time
\\SERVER01\Processor(*)\C2 Transitions/sec
\\SERVER01\Processor(*)\% Privileged Time
\\SERVER01\Processor(*)\C3 Transitions/sec
\\SERVER01\Processor(*)\DPCs Queued/sec
\\SERVER01\Processor(*)\Interrupts/sec
La première commande utilise le paramètre ListSet de l’applet de commande Import-Counter
pour obtenir tous les jeux de compteurs représentés dans un fichier de données de compteur.
La deuxième commande obtient tous les chemins d’accès du compteur de l’ensemble de listes.
Exemple 5 : Importer des données de compteur à partir d’une plage d’horodatages
Cet exemple importe uniquement les données de compteur qui ont un horodatage entre les plages de fin spécifiées dans la commande.
Import-Counter -Path ".\disk.blg" | Format-Table -Property Timestamp
$start = [datetime]"7/9/2008 3:47:00 PM"; $end = [datetime]"7/9/2008 3:47:59 PM"
Import-Counter -Path Disk.blg -StartTime $start -EndTime $end
La première commande répertorie dans une table les horodatages de toutes les données du fichier ProcessorData.blg
.
La deuxième commande enregistre des horodatages particuliers dans les variables $start
et $end
. Les chaînes sont converties en objets DateTime.
La troisième commande utilise l’applet de commande Import-Counter
pour obtenir uniquement les données de compteur qui ont un horodatage entre les heures de début et de fin (inclusives). La commande utilise les paramètres StartTime et EndTime de Import-Counter
pour spécifier la plage.
Exemple 6 : Importer un nombre spécifié d’échantillons les plus anciens à partir d’un fichier journal du compteur de performances
Cet exemple montre comment importer les cinq échantillons les plus anciens et cinq plus récents à partir d’un fichier journal du compteur de performances.
Import-Counter -Path "Disk.blg" -MaxSamples 5
(Import-Counter -Path Disk.blg)[-1 .. -5]
La première commande utilise l’applet de commande Import-Counter
pour importer les cinq premiers exemples (les plus anciens) à partir du fichier Disk.blg
. La commande utilise le paramètre MaxSamples pour limiter l’importation à cinq exemples de compteurs.
La deuxième commande utilise la notation de tableau et l’opérateur de plage Windows PowerShell (..
) pour obtenir les cinq derniers exemples de compteurs à partir du fichier. Il s’agit des cinq échantillons les plus récents.
Exemple 7 : Obtenir un résumé des données de compteur à partir d’un fichier
Import-Counter "D:\Samples\Memory.blg" -Summary
OldestRecord NewestRecord SampleCount
------------ ------------ -----------
7/10/2008 2:59:18 PM 7/10/2008 3:00:27 PM 1000
Cette commande utilise le paramètre Summary de l’applet de commande Import-Counter
pour obtenir un résumé des données du compteur dans le fichier Memory.blg
.
Exemple 8 : Mettre à jour un fichier journal du compteur de performances
Cet exemple met à jour un fichier journal du compteur de performances.
$counters = Import-Counter OldData.blg -ListSet * | ForEach-Object {$_.PathsWithInstances}
Get-Counter -Counter $Counters -MaxSamples 20 | Export-Counter C:\Logs\NewData.blg
La première commande utilise le paramètre ListSet de Import-Counter
pour obtenir les compteurs dans OldData.blg
, un fichier journal de compteur existant. La commande utilise un opérateur de pipeline (|
) pour envoyer les données à une commande ForEach-Object
qui obtient uniquement les valeurs des PathsWithInstances propriété de chaque objet
La deuxième commande obtient des données mises à jour pour les compteurs dans la variable $counters
. Il utilise l’applet de commande Get-Counter
pour obtenir un exemple actuel, puis exporter les résultats dans le fichier NewData.blg
.
Exemple 9 : Importer des données du journal des performances à partir de plusieurs fichiers, puis l’enregistrer
$counters = "D:\test\pdata.blg", "D:\samples\netlog.blg" | Import-Counter
Cette commande importe les données du journal des performances à partir de deux journaux et enregistre les données dans la variable $counters
. La commande utilise un opérateur de pipeline pour envoyer les chemins du journal des performances à Import-Counter, qui importe les données à partir des chemins spécifiés.
Notez que chaque chemin est placé entre guillemets et que les chemins sont séparés les uns des autres par une virgule.
Paramètres
-Counter
Spécifie, en tant que tableau de chaînes, les compteurs de performances. Par défaut, Import-Counter
importe toutes les données de tous les compteurs dans les fichiers d’entrée. Entrez un ou plusieurs chemins de compteur. Les caractères génériques sont autorisés dans la partie Instance du chemin d’accès.
Chaque chemin d’accès de compteur a le format suivant. La valeur ComputerName
est requise dans le chemin d’accès. Par exemple:
\\<ComputerName>\<CounterSet>(<Instance>)\<CounterName>
Par exemple:
\\Server01\Processor(2)\% User Time
\\Server01\Processor(*)\% Processor Time
Type: | String[] |
Position: | Named |
Valeur par défaut: | All counter |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | True |
-EndTime
Spécifie une date et une heure de fin que cette applet de commande importe les données de compteur entre les StartTime et les horodatages de ce paramètre. Entrez un objet DateTime, tel qu’un objet créé par l’applet de commande Get-Date
. Par défaut, Import-Counter
importe toutes les données de compteur dans les fichiers spécifiés par le paramètre Path.
Type: | DateTime |
Position: | Named |
Valeur par défaut: | No end time |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ListSet
Spécifie les jeux de compteurs de performances représentés dans les fichiers exportés. Les commandes avec ce paramètre n’importent aucune donnée.
Entrez un ou plusieurs noms de jeu de compteurs. Les caractères génériques sont autorisés. Pour obtenir tous les jeux de compteurs dans le fichier, tapez Import-Counter -ListSet *
.
Type: | String[] |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | True |
-MaxSamples
Spécifie le nombre maximal d’échantillons de chaque compteur à importer. Par défaut, Get-Counter
importe toutes les données dans les fichiers spécifiés par le paramètre Path.
Type: | Int64 |
Position: | Named |
Valeur par défaut: | No maximum |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Path
Spécifie les chemins d’accès des fichiers à importer. Ce paramètre est requis.
Entrez le chemin d’accès et le nom de fichier d’un fichier, .csv
, .tsv
ou .blg
que vous avez exporté à l’aide de l’applet de commande Export-Counter
. Vous ne pouvez spécifier qu’un seul fichier .csv
ou .tsv
, mais vous pouvez spécifier plusieurs fichiers .blg
(jusqu’à 32) dans chaque commande. Vous pouvez également diriger des chaînes de chemin d’accès de fichier (entre guillemets) vers Import-Counter
.
Type: | String[] |
Alias: | PSPath |
Position: | 1 |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | True |
-StartTime
Spécifie la date et l’heure de début dans lesquelles cette applet de commande obtient les données de compteur. Entrez un objet DateTime, tel qu’un objet créé par l’applet de commande Get-Date
. Par défaut, Import-Counter
importe toutes les données de compteur dans les fichiers spécifiés par le paramètre Path.
Type: | DateTime |
Position: | Named |
Valeur par défaut: | No start time |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Summary
Indique que cette applet de commande obtient un résumé des données importées, au lieu d’obtenir des exemples de données de compteur individuels.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
Vous pouvez diriger les chemins du journal des compteurs de performances vers cette applet de commande.
Sorties
Microsoft.PowerShell.Commands.GetCounter.PerformanceCounterSampleSet, Microsoft.PowerShell.Commands.GetCounter.CounterSet, Microsoft.PowerShell.Commands.GetCounter.CounterFileInfo
Cette applet de commande renvoie un Microsoft.PowerShell.Commands.GetCounter.PerformanceCounterSampleSet. Si vous utilisez le paramètre ListSet, cette applet de commande renvoie un objet Microsoft.PowerShell.Commands.GetCounter.CounterSet. Si vous utilisez le paramètre résumé, cette applet de commande renvoie un objet Microsoft.PowerShell.Commands.GetCounter.CounterFileInfo.
Notes
- Cette applet de commande n’a pas de paramètre ComputerName. Toutefois, si l’ordinateur est configuré pour la communication à distance Windows PowerShell, vous pouvez utiliser l’applet de commande
Invoke-Command
pour exécuter une commandeImport-Counter
sur un ordinateur distant.