Export-Counter
将性能计数器数据导出到日志文件。
语法
Export-Counter
[-Path] <String>
[-FileFormat <String>]
[-MaxSize <UInt32>]
-InputObject <PerformanceCounterSampleSet[]>
[-Force]
[-Circular]
[<CommonParameters>]
说明
Export-Counter
cmdlet 将性能计数器数据(PerformanceCounterSampleSet 对象)以二进制性能日志 (.blg
)、逗号分隔值 (.csv
) 或制表符分隔值 (.tsv
) 格式发送到日志文件。 你使用此 cmdlet 来记录性能计数器数据。
Export-Counter
cmdlet 旨在导出Get-Counter
和Import-Counter
cmdlet 返回的数据。
此 cmdlet 只能在 Windows 7、Windows Server 2008 R2 以及更高版本的 Windows 上运行。
示例
示例 1:将计数器数据导出到文件
此示例将计数器数据导出到 BLG 文件。
Get-Counter "\Processor(*)\% Processor Time" | Export-Counter -Path $HOME\Counters.blg
此命令使用Get-Counter
cmdlet 收集处理器时间数据。 该命令使用管道运算符 (|
) 将数据发送给Export-Counter
cmdlet。 Export-Counter
命令使用Path变量指定输出文件。
由于数据集可能非常大,因此此示例将通过管道将数据发送到Export-Counter
。 如果数据保存在变量中,你可能使用与之大小不相称的内存量。
示例 2:将文件导出为计数器文件格式
此示例将 CSV 文件转换为计数器数据 BLG 格式。
Import-Counter
cmdlet 从Threads.csv
文件导入性能计数器数据。 该示例假设以前使用Export-Counter
cmdlet 导出此文件。 管道运算符 (|
) 将重要数据发送到Export-Counter
cmdlet。 此命令使用Path参数指定输出文件的位置。 它使用Circular和MaxSize参数指示Export-Counter
cmdlet 创建按 1 GB 进行包装的循环记录。 MaxSize参数以兆字节表示。
$1GBInMB = 1024 # 1GB = 1024MB
Import-Counter Threads.csv | Export-Counter -Path ThreadTest.blg -Circular -MaxSize $1GBInMB
示例 3:从远程计算机获取计数器数据并将数据保存到文件
此示例演示如何从远程计算机获取性能计数器数据,并将数据保存在远程计算机上的文件中。
第一个命令使用Get-Counter
cmdlet 从 Server01 远程计算机收集工作集计数器数据。 此命令将数据保存在 $C
变量中。
第二个命令使用管道运算符 (|
) 将 $C
中的数据发送到Export-Counter
cmdlet,此 cmdlet 将数据保存在 Server01 计算机的Perf
共享中的Workingset.blg
文件中。
$C = Get-Counter -ComputerName Server01 -Counter "\Process(*)\Working Set - Private" -MaxSamples $C | Export-Counter -Path \\Server01\Perf\WorkingSet.blg
20
示例 4:重新记录现有数据
此示例演示了如何使用Import-Counter
和Export-Counter
cmdlet 重新记录现有数据。
第一个命令使用Import-Counter
cmdlet 从DiskSpace.blg
日志导入性能计数器数据。 它将数据保存在$All
变量中。 此文件包含企业中 200 多台远程计算机上的“LogicalDisk% 可用空间”计数器示例。
第二个命令使用Where-Object
cmdlet 选择CookedValue 小于 15(百分比)的对象。 该命令将结果保存在 $LowSpace
变量中。
第三个命令使用管道运算符 (|
) 将$LowSpace
变量中的数据发送到Export-Counter
cmdlet。 此命令使用Path参数指示应该在LowDiskSpace.blg
文件中记录选定的数据。
$All = Import-Counter DiskSpace.blg
$LowSpace = $All | Where-Object {$_.CounterSamples.CookedValue -lt 15}
$LowSpace | Export-Counter -Path LowDiskSpace.blg
参数
-Circular
指示输出文件是采用先进先出 (FIFO) 格式的循环日志。 当包含此参数时,MaxSize 参数是必需的。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FileFormat
指定输出日志文件的输出格式。
此参数的可接受值为:
CSV
TSV
BLG
默认值是 BLG
。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
如果在 Path 参数指定的位置中存在某个文件,则覆盖并替换该现有文件。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
以数组形式指定要导出的计数器数据。 输入包含数据的变量或获取数据的命令(例如,Get-Counter
或Import-Counter
cmdlet)。
Type: | PerformanceCounterSampleSet[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-MaxSize
指定输出文件的最大大小 (MB)。
如果指定了 Circular 参数,则当日志文件达到指定的最大大小时,将删除最早的条目,同时添加较新的条目。 如果未指定 Circular 参数,则当日志文件达到指定的最大大小时,将不会添加新数据,并且 cmdlet 将生成一个非终止错误。
Type: | UInt32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
指定输出文件的路径和文件名。 在本地计算机上输入相对或绝对路径,或者指向远程计算机的通用命名约定 (UNC) 路径,例如\\Computer\Share\file.blg
。 此参数是必需的。
文件格式由 FileFormat 参数的值确定,而不是由路径中的文件扩展名确定。
Type: | String |
Aliases: | PSPath |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
输入
可以通过管道将性能计数器数据从Get-Counter
或Import-Counter
传递给此 cmdlet。
输出
None
备注
日志文件生成器要求所有输入对象都具有相同的计数器路径,并且以时间升序顺序排列这些对象。
计数器类型和第一个输入对象的路径确定日志文件中记录的属性。 如果其他输入对象没有已记录属性的值,则属性字段为空。 如果对象具有未记录的属性值,则忽略额外的属性值。
性能监视器可能不能读取Export-Counter
生成的所有日志。 例如,性能监视器要求所有对象都具有相同的路径,并以相同的时间间隔分隔所有对象。
Import-Counter
cmdlet 不具有ComputerName参数。 但是,如果计算机针对远程 Windows PowerShell Windows PowerShell 进行了配置,可以使用Invoke-Command
cmdlet 在远程计算机上运行Import-Counter
命令。
相关链接
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈