Microsoft Defender防病毒性能分析器参考

PowerShell 参考

可以使用以下新的 PowerShell cmdlet 来优化 Microsoft Defender 防病毒的性能:

New-MpPerformanceRecording

以下部分介绍新的 PowerShell cmdlet New-MpPerformanceRecording的参考。 此 cmdlet 收集Microsoft Defender防病毒扫描的性能记录。

语法:New-MpPerformanceRecording

New-MpPerformanceRecording -RecordTo <String>

说明:New-MpPerformanceRecording

New-MpPerformanceRecording cmdlet 收集Microsoft Defender防病毒扫描的性能记录。 这些性能记录包含 Microsoft-Antimalware-Engine 和 NT 内核进程事件,可以在收集后使用 Get-MpPerformanceReport cmdlet 进行分析。

New-MpPerformanceRecording cmdlet 可深入了解可能导致Microsoft Defender防病毒性能下降的问题文件。 此工具按原样提供,不打算提供有关 排除项的建议。 排除可能会降低终结点的保护级别。 应谨慎定义排除项(如果有)。

有关性能分析器的详细信息,请参阅性能分析器文档。

重要

此 cmdlet 需要提升的管理员权限。

示例:New-MpPerformanceRecording

示例 1:收集并保存性能记录
New-MpPerformanceRecording -RecordTo .\Defender-scans.etl

命令收集性能记录并将其保存到指定路径: .\Defender-scans.etl

示例 2:收集远程 PowerShell 会话的性能记录
$s = New-PSSession -ComputerName Server02 -Credential Domain01\User01
New-MpPerformanceRecording -RecordTo C:\LocalPathOnServer02\trace.etl -Session $s

命令收集参数会话) 的参数$s指定的 (性能记录 Server02 ,并将其保存到指定的路径: C:\LocalPathOnServer02\trace.etlServer02

参数:New-MpPerformanceRecording

-RecordTo

指定保存Microsoft Defender反恶意软件性能记录的位置。

Type: String
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-会期

指定要PSSession在其中创建和保存防病毒性能记录Microsoft Defender的对象。 使用此命令时, RecordTo 参数将引用远程计算机上的本地路径。 适用于 Defender 平台版本及更高版本 4.18.2201.10

Type: PSSession[]
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

Get-MpPerformanceReport

以下部分介绍 Get-MpPerformanceReport PowerShell cmdlet。 分析和报告Microsoft Defender防病毒性能记录。

语法:Get-MpPerformanceReport

    Get-MpPerformanceReport [-Path] <String> [-TopFiles <Int32>] [-TopScansPerFile <Int32>] [-TopProcessesPerFile 
<Int32>] [-TopScansPerProcessPerFile <Int32>] [-TopPaths <Int32>] [-TopPathsDepth <Int32>] [-TopScansPerPath 
<Int32>] [-TopFilesPerPath <Int32>] [-TopScansPerFilePerPath <Int32>] [-TopExtensionsPerPath <Int32>] 
    [-TopScansPerExtensionPerPath <Int32>] [-TopProcessesPerPath <Int32>] [-TopScansPerProcessPerPath <Int32>] 
    [-TopExtensions <Int32>] [-TopScansPerExtension <Int32>] [-TopPathsPerExtension <Int32>] 
    [-TopScansPerPathPerExtension <Int32>] [-TopFilesPerExtension <Int32>] [-TopScansPerFilePerExtension <Int32>] 
    [-TopProcessesPerExtension <Int32>] [-TopScansPerProcessPerExtension <Int32>] [-TopProcesses <Int32>] 
    [-TopScansPerProcess <Int32>] [-TopFilesPerProcess <Int32>] [-TopScansPerFilePerProcess <Int32>] 
    [-TopExtensionsPerProcess <Int32>] [-TopScansPerExtensionPerProcess <Int32>] [-TopPathsPerProcess <Int32>] 
    [-TopScansPerPathPerProcess <Int32>] [-TopScans <Int32>] [-MinDuration <String>] [-MinStartTime <DateTime>] 
    [-MinEndTime <DateTime>] [-MaxStartTime <DateTime>] [-MaxEndTime <DateTime>] [-Overview] [-Raw] 
    [<CommonParameters>]

说明:Get-MpPerformanceReport

cmdlet Get-MpPerformanceReport 分析以前收集的Microsoft Defender防病毒性能记录 (New-MpPerformanceRecording) ,并报告对防病毒扫描Microsoft Defender影响最大的文件路径、文件扩展名和进程。

性能分析器可深入了解可能导致Microsoft Defender防病毒性能下降的问题文件。 此工具按“原样”提供,不打算提供有关排除项的建议。 排除可能会降低终结点的保护级别。 应谨慎定义排除项(如果有)。

有关性能分析器的详细信息,请参阅性能分析器文档。

支持的 OS 版本

Windows 版本 10 及更高版本。

注意

此功能从平台版本及更高版本 4.18.2108.X 开始提供。

示例:Get-MpPerformanceReport

示例 1:单个查询
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopScans 20
示例 2:多个查询
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopFiles 10 -TopExtensions 10 -TopProcesses 10 -TopScans 10
示例 3:嵌套查询
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopProcesses 10 -TopExtensionsPerProcess 3 -TopScansPerExtensionPerProcess 3
示例 4:使用 -MinDuration 参数
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopScans 100 -MinDuration 100ms
示例 5:使用 -Raw 参数
Get-MpPerformanceReport -Path .\Defender-scans.etl -TopFiles 10 -TopExtensions 10 -TopProcesses 10 -TopScans 10 -Raw | ConvertTo-Json

-Raw 命令中使用 指定输出应为计算机可读且易于转换为 JSON 等序列化格式。

参数:Get-MpPerformanceReport

-TopPaths

请求顶部路径报告,并指定要输出的顶部路径数(按持续时间排序)。 基于扫描的路径和目录聚合扫描。 用户可以指定应在每个级别上显示多少个目录以及所选内容的深度。

- Type: Int32
- Position: Named
- Default value: None
- Accept pipeline input: False
- Accept wildcard characters: False
-TopPathsDepth

指定用于分组和显示聚合路径结果的递归深度。 例如 C:\ ,对应于深度 1,对应于 C:\Users\Foo 深度 3。

此标志可以附带所有其他“Top Path”选项。 如果缺少,则假定默认值为 3。 该值不能为 0。

- Type: Int32
- Position: Named
- Default value: 3
- Accept pipeline input: False
- Accept wildcard characters: False
flag 定义
-TopScansPerPath 指定要为每个顶部路径指定的顶部扫描数。
-TopFilesPerPath 指定要为每个顶部路径指定的顶部文件数。
-TopScansPerFilePerPath 指定要为每个顶部路径的每个顶级文件输出的顶级扫描数(按“持续时间”排序)
-TopExtensionsPerPath 指定要为每个顶部路径输出的顶级扩展数
-TopScansPerExtensionPerPath 指定要为每个顶部路径的每个顶部扩展输出的顶部扫描数
-TopProcessesPerPath 指定要为每个顶部路径输出的顶级进程数
-TopScansPerProcessPerPath 指定要为每个顶部路径的每个顶级进程输出的顶级扫描数
-TopPathsPerExtension 指定要为每个顶部扩展输出的顶部路径数
-TopScansPerPathPerExtension 指定要为每个顶部扩展的每个顶部路径输出的顶级扫描数
-TopPathsPerProcess 指定要为每个顶级进程输出的顶部路径数
-TopScansPerPathPerProcess 指定要为每个顶级进程的每个顶部路径输出的顶级扫描数
-MinDuration

指定报告中包含的文件、扩展和进程的任意扫描的最短持续时间或总扫描持续时间;接受 、、 0.1us或有效的 TimeSpan 等0.1234567sec0.1234ms值。

Type: String
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-路径

指定一个或多个位置的路径。

Type: String
Position: 0
Default value: None
Accept pipeline input: True
Accept wildcard characters: False
-生

指定性能记录的输出应是计算机可读的,并且易于转换为序列化格式,例如 JSON (,例如,通过 Convert-to-JSON 命令) 。 对于希望与其他数据处理系统进行批处理的用户,建议使用此配置。

Type: <SwitchParameter>
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-TopExtensions

指定要输出的顶级扩展数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopExtensionsPerProcess

指定要为每个顶级进程输出的顶级扩展数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopFiles

请求顶部文件报告,并指定要输出的顶级文件数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopFilesPerExtension

指定要为每个顶级扩展名输出的顶级文件数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopFilesPerProcess

指定要为每个顶级进程输出的顶级文件数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopProcesses

请求顶级进程报告,并指定要输出的顶级进程数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopProcessesPerExtension

指定要为每个顶级扩展输出的顶级进程数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopProcessesPerFile

指定要为每个顶级文件输出的顶级进程数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScans

请求顶部扫描报告,并指定要输出的顶级扫描数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerExtension

指定要为每个顶级扩展输出的顶级扫描数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerExtensionPerProcess

指定要为每个顶级进程的每个顶级扩展输出的顶级扫描数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerFile

指定要为每个顶级文件输出的顶级扫描数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerFilePerExtension

指定要为每个顶部扩展名的每个顶级文件输出的顶级扫描数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerFilePerProcess

指定每个顶级进程的每个顶级文件的输出的顶级扫描数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerProcess

指定要为“热门进程”报表中每个首要进程输出的顶级扫描数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerProcessPerExtension

指定每个顶级扩展的每个顶级进程的输出的顶级扫描数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-TopScansPerProcessPerFile

指定每个顶级文件的每个顶级进程的输出的顶级扫描数(按持续时间排序)。

Type: Int32
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

提示

想要了解更多信息? Engage技术社区中的Microsoft安全社区:Microsoft Defender for Endpoint技术社区