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
GetCounterSet (Par défaut)
Import-Counter
[-Path] <String[]>
[-StartTime <DateTime>]
[-EndTime <DateTime>]
[-Counter <String[]>]
[-MaxSamples <Int64>]
[<CommonParameters>]
ListSetSet
Import-Counter
[-Path] <String[]>
-ListSet <String[]>
[<CommonParameters>]
SummarySet
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 du compteur 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
PS C:\> $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
The first command uses **Import-Counter** to import all of the performance counter data from the ProcessorData.blg files. The command saves the data in the $Data variable.
PS C:\> $Data = Import-Counter .\ProcessorData.blg
The second command displays the counter paths in the $Data variable. To get the display shown in the command output, the example uses the Format-Table cmdlet to format as a table the counter paths of the first counter in the $Data variable.
PS C:\> $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
The third command gets the counter paths that end in "Interrupts/sec" and saves the paths in the $IntCtrs variable. It uses the Where-Object cmdlet to filter the counter paths and the ForEach-Object cmdlet to get only the value of the **Path** property of each selected path object.
PS C:\> $IntCtrs = $Data[0].Countersamples | Where-Object {$_.Path -like "*Interrupts/sec"} | ForEach-Object {$_.Path}
The fourth command displays the selected counter paths in the $IntCtrs variable.
PS C:\> $IntCtrs
\\SERVER01\Processor(_Total)\Interrupts/sec
\\SERVER01\Processor(1)\Interrupts/sec
\\SERVER01\Processor(0)\Interrupts/sec
The fifth command uses the **Import-Counter** cmdlet to import the data. It uses the $IntCtrs variable as the value of the *Counter* parameter to import only data for the counter paths in $IntCtrs.
PS C:\> $I = Import-Counter -Path .\ProcessorData.blg -Counter $intCtrs
The sixth command uses the Export-Counter cmdlet to export the data to the Interrupts.csv file.
PS C:\> $I | Export-Counter -Path .\Interrupts.csv -Format CSV
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 dans 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.
Exemple 4 : Afficher tous les chemins d’accès des compteurs dans un groupe de jeux de compteurs importés
The first command uses the *ListSet* parameter of the **Import-Counter** cmdlet to get all of the counter sets that are represented in a counter data file.
PS C:\> 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...}
The second command gets all of the counter paths from the list set.
PS C:\> 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
Cet exemple montre comment afficher tous les chemins d’accès des compteurs dans un groupe de jeux de compteurs importés.
Exemple 5 : Importer des données de compteur à partir d’une plage d’horodatages
The first command lists in a table the time stamps of all of the data in the ProcessorData.blg file.
PS C:\> Import-Counter -Path ".\disk.blg" | Format-Table -Property Timestamp
The second command saves particular time stamps in the $Start and $End variables. The strings are cast to **DateTime** objects.
PS C:\> $Start = [datetime]"7/9/2008 3:47:00 PM"; $End = [datetime]"7/9/2008 3:47:59 PM"
The third command uses the **Import-Counter** cmdlet to get only counter data that has a time stamp between the start and end times (inclusive). The command uses the *StartTime* and *EndTime* parameters of **Import-Counter** to specify the range.
PS C:\> Import-Counter -Path Disk.blg -StartTime $start -EndTime $end
Cet exemple importe uniquement les données de compteur qui ont un horodatage entre les plages de fin spécifiées dans la commande.
Exemple 6 : Importer un nombre spécifié d’échantillons les plus anciens à partir d’un fichier journal du compteur de performances
The first command uses the **Import-Counter** cmdlet to import the first (oldest) five samples from the Disk.blg file. The command uses the *MaxSamples* parameter to limit the import to five counter samples.
PS C:\> Import-Counter -Path "Disk.blg" -MaxSamples 5
The second command uses array notation and the Windows PowerShell range operator (..) to get the last five counter samples from the file. These are the five newest samples.
PS C:\> (Import-Counter -Path Disk.blg)[-1 .. -5]
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.
Exemple 7 : Obtenir un résumé des données de compteur à partir d’un fichier
PS C:\> 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
Exemple 8 : Mettre à jour un fichier journal du compteur de performances
The first command uses the *ListSet* parameter of **Import-Counter** to get the counters in OldData.blg, an existing counter log file. The command uses a pipeline operator (|) to send the data to a ForEach-Object command that gets only the values of the **PathsWithInstances** property of each object
PS C:\> $Counters = Import-Counter OldData.blg -ListSet * | ForEach-Object {$_.PathsWithInstances}
The second command gets updated data for the counters in the $Counters variable. It uses the Get-Counter cmdlet to get a current sample, and then export the results to the NewData.blg file.
PS C:\> Get-Counter -Counter $Counters -MaxSamples 20 | Export-Counter C:\Logs\NewData.blg
Cet exemple met à jour un fichier journal du compteur de performances.
Exemple 9 : Importer des données du journal des performances à partir de plusieurs fichiers, puis l’enregistrer
PS C:\> $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
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | All counter |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
GetCounterSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-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.
Propriétés du paramètre
| Type: | DateTime |
| Valeur par défaut: | No end time |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
GetCounterSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | 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 *.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
ListSetSet
| Position: | Named |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-MaxSamples
Spécifie le nombre maximal d’échantillons de chaque compteur à importer.
Par défaut,
Propriétés du paramètre
| Type: | Int64 |
| Valeur par défaut: | No maximum |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
GetCounterSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Path
Spécifie les chemins d’accès des fichiers à importer. Ce paramètre est obligatoire.
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
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
| Alias: | PSPath |
Jeux de paramètres
(All)
| Position: | 0 |
| Obligatoire: | True |
| Valeur du pipeline: | True |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-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
Propriétés du paramètre
| Type: | DateTime |
| Valeur par défaut: | No start time |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
GetCounterSet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | 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.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
SummarySet
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
CommonParameters
Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.
Entrées
String
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
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 commande Import-Counter sur un ordinateur distant.