适用于 PowerShell 的诊断数据查看器概述

适用范围

  • Windows 11 版本 21H2 及更高版本
  • Windows 10 版本 1803 或更高版本
  • Windows Server 版本 1803
  • Windows Server 2019

简介

适用于 PowerShell 的诊断数据查看器是一个 PowerShell 模块,可让你查看设备发送给 Microsoft 的诊断数据,并根据 Microsoft 使用信息的方式按简单类别对信息进行分组。

要求

若要使用此 PowerShell 模块,你必须在设备上拥有管理员权限。 此模块需要操作系统版本 1803 及更高版本。

安装和使用适用于 PowerShell 的诊断数据查看器

使用适用于 PowerShell 的诊断数据查看器之前,必须先安装此模块。

打开提升的 PowerShell 会话

使用适用于 PowerShell 的诊断数据查看器需要(提升的)管理权限。 有两种方法可以打开提升的 PowerShell 提示符。 你可以使用其中任何一种方法。

  • 转到开始菜单>Windows PowerShell>以管理员身份运行
  • 转到开始菜单>命令提示符>以管理员身份运行,并运行该命令 C:\> powershell.exe

安装适用于 PowerShell 的诊断数据查看器

重要提示

建议访问关于 PowerShell 库入门的文档。 此页面提供有关安装 PowerShell 模块的更具体的详细信息。

要安装最新版本的诊断数据查看器 PowerShell 模块,请在提升的 PowerShell 会话中运行以下命令:

PS C:\> Install-Module -Name Microsoft.DiagnosticDataViewer

要查看有关该模块的更多信息,请访问 PowerShell 库

打开数据查看

在使用此工具之前,必须打开数据查看。 如果打开数据查看,则 Windows 可以存储设备诊断数据的本地历史记录供你查看,直到关闭它为止。

请注意,此设置不控制设备是否发送诊断数据。 而是控制 Windows 设备是否保存为供你查看而发送的诊断数据的本地副本。

要通过“设置”页面打开数据查看,请执行以下操作

  1. 转到“开始”菜单,选择设置>隐私>诊断和反馈

  2. 在“诊断数据”下,启用“如果启用数据查看,即可查看诊断数据”选项。

    启用数据查看的位置。

要通过 PowerShell 启用数据查看,请执行以下操作

在提升的 PowerShell 会话中运行以下命令:

PS C:\> Enable-DiagnosticDataViewing

启用数据查看后,Windows 计算机将开始保存从此时起发送给 Microsoft 的诊断数据的历史记录。

重要提示

如果打开数据查看,则可能会在系统驱动器上最多使用 1GB(默认设置)的磁盘空间。 我们建议在使用完诊断数据查看器后关闭数据查看。 有关关闭数据查看的信息,请参阅本文的关闭数据查看部分。

适用于 PowerShell 的诊断数据查看器入门

要查看如何使用 cmdlet、它所接受的参数以及示例,请从提升的 PowerShell 会话中运行以下命令:

PS C:\> Get-Help Get-DiagnosticData

要开始查看诊断数据,请执行以下操作

从提升的 PowerShell 会话中,运行以下命令:

PS C:\> Get-DiagnosticData

如果事件数较大,并且你想要停止命令,请输入 Ctrl+C

重要提示

如果你最近启用了数据查看,则上述命令可能不会产生什么结果。 Windows 设备可能需要几分钟时间才能显示已发送的诊断数据。 像平时一样正常使用设备,然后再试一次。

使用适用于 PowerShell 的诊断数据查看器执行更多操作

适用于 PowerShell 的诊断数据查看器为你提供以下功能,以查看和筛选设备的诊断数据。 你还可以将其他 PowerShell 工具的扩展套件与此模块一起使用。

  • 查看诊断事件。 通过运行 PS C:\> Get-DiagnosticData,你可以查看诊断事件。 这些事件反映已发生和已发送到 Microsoft 的活动。

    每个事件都显示为一个 PowerShell 对象。 默认情况下,每个事件都会显示事件名称、Windows 设备查看事件的时间、事件是否为基本事件、其诊断事件类别,以及它所包含的信息的详细 JSON 视图,该视图显示的事件与发送给 Microsoft 时的事件完全相同。 Microsoft 将使用此信息来持续改进 Windows 操作系统。

  • 查看诊断事件类别。 每个事件都显示它所属的诊断事件类别。 这些类别定义 Microsoft 使用事件的方式。 类别显示为数字标识符。 有关这些类别的更多信息,请参阅 Windows 诊断数据

    要查看每个数字标识符所表示的诊断类别以及类别的含义,可以运行以下命令:

    PS C:\> Get-DiagnosticDataTypes
    
  • 按事件发送时间筛选事件。 你可以通过指定每个命令的开始时间和结束时间来查看指定时间范围内的事件。 例如,要查看 12 到 6 小时之前发送的所有诊断数据,请运行以下命令。 请注意,数据按最早优先的顺序显示。

    PS C:\> Get-DiagnosticData -StartTime (Get-Date).AddHours(-12) -EndTime (Get-Date).AddHours(-6)
    
  • 导出每个命令的结果。 你可以使用竖线 | 将每个命令的结果导出到单独的文件,例如 csv 文件。 例如,

    PS C:\> Get-DiagnosticData | Export-Csv 'mydata.csv'
    

关闭数据查看

查看完诊断数据后,建议关闭数据查看以防止耗尽更多内存。 如果关闭数据查看,则会阻止 Windows 保存诊断数据的历史记录,并会清除设备中诊断数据的现有历史记录。

要通过“设置”页面关闭数据查看,请执行以下操作

  1. 转到“开始”菜单,选择设置>隐私>诊断和反馈

  2. 在“诊断数据”下,关闭“如果启用数据查看,即可查看诊断数据”选项。

    关闭数据查看的位置。

要通过 PowerShell 关闭数据查看,请执行以下操作

在提升的 PowerShell 会话中运行以下命令:

PS C:\> Disable-DiagnosticDataViewing

修改数据历史记录的大小

默认情况下,该工具最多将向你显示 1GB 或 30 天的数据(以先到者为准)。 时间到了或者达到空间限制之后,将逐渐删除数据,最先删除最旧的数据点。

修改数据历史记录的大小

重要提示

如果修改可通过工具查看的最大诊断数据量,则可能会对计算机性能产生影响。

重要提示

如果你将最大数据历史记录大小从较大值修改为较小值,则必须关闭并重新打开数据查看以回收磁盘空间。

你可以更改可查看的最大数据历史记录大小(以 MB 为单位)。 例如,要将最大数据历史记录大小设置为 2048MB (2GB),可以运行以下命令。

PS C:\> Set-DiagnosticStoreCapacity -Size 2048

你可以更改可查看的最长数据历史记录时间(以小时为单位)。 例如,要将最长数据历史记录时间设置为 24 小时,可以运行以下命令。

PS C:\> Set-DiagnosticStoreCapacity -Time 24

重要提示

你可能需要重启计算机才能使新设置生效。

重要提示

如果在同一设备上安装了诊断数据查看器 Microsoft Store 应用,则通过 PowerShell 模块对数据历史记录大小所做的修改也将反映在该应用中。

重置数据历史记录的大小

要将最大数据历史记录大小重置回其原始默认值 (1GB),请在提升的 PowerShell 会话中运行以下命令:

PS C:\> Set-DiagnosticStoreCapacity -Size 1024 -Time 720 

在将数据历史记录大小重置为较小值时,请确保关闭并重新打开数据查看以回收磁盘空间。