Get-CalendarDiagnosticAnalysis
尽管此 cmdlet 在本地 Exchange 和基于云的服务中可用,但它仅适用于本地 Exchange。
使用 Get-CalendarDiagnosticAnalysis cmdlet 排查与日历相关的可靠性问题。 可以使用此 cmdlet 分析日历诊断日志中记录的日历项数据。 使用 Get-CalendarDiagnosticLog cmdlet 将日历项数据提供给此 cmdlet。
有关以下语法部分的参数设置的详细信息,请参阅 Exchange cmdlet 语法。
语法
Get-CalendarDiagnosticAnalysis
-CalendarLogs <CalendarLog[]>
[-DetailLevel <AnalysisDetailLevel>]
[-GlobalObjectId <String>]
[-OutputAs <OutputType>]
[<CommonParameters>]
Get-CalendarDiagnosticAnalysis
-LogLocation <String[]>
[-DetailLevel <AnalysisDetailLevel>]
[-GlobalObjectId <String>]
[-OutputAs <OutputType>]
[<CommonParameters>]
说明
当 DetailLevel 参数设置为 Basic) 时,将在 cmdlet 的默认输出中返回日历项的以下属性 (:
- 本地日志时间
- ItemId
- NormalizedSubject
- StartTime
- EndTime
- CalendarLogTriggerAction
- ClientInfoString
- OriginalLastModifiedTime
- ClientIntent
- CleanGlobalObjectId
- ItemClass
- ParentDisplay
- 持续时间
- AppointmentRecurring
- SentRepresentingEmailAddress
- SenderEmailAddress
- SentRepresentingDisplayName
您必须先获得权限,然后才能运行此 cmdlet。 虽然本主题中列出了此 cmdlet 的所有参数,但如果这些参数并未包含在分配给您的权限中,那么您将无法使用这些参数。 若要查找在贵组织中运行任何 cmdlet 或参数所需的权限,请参阅 Find the permissions required to run any Exchange cmdlet。
示例
示例 1
$logs = Get-CalendarDiagnosticLog -Identity oevans -MeetingID 040000008200E00074C5B7101A82E008000000009421DCCD5046CD0100000000000000001000000010B0349F6B17454685E17D9F9512E71F
Get-CalendarDiagnosticAnalysis -CalendarLogs $logs -DetailLevel Advanced | Set-Content -Path "C:\My Documents\Oscar Evans Analysis.csv"
此示例从 Oscar Evans 的邮箱获取指定的日历项,将项目存储为变量,并将该项目的高级分析写入 CSV 文件。
对于项的基本分析,请勿包含 DetailLevel 参数,或使用值 Basic 而不是 Advanced。
示例 2
Get-CalendarDiagnosticAnalysis -LogLocation "C:\My Documents\Exported Calendar Logs\jkozma@contoso.com" -DetailLevel Advanced -OutputAs HTML | Set-Content -Path "C:\My Documents\Jasen Kozma Analysis.html"
在 Exchange 2013 中,此示例使用 Get-CalendarDiagnosticLog cmdlet 和 LogLocation 参数分析以前从 Jasen Kozma 邮箱导出的日历项目,并将项目的高级分析写入 HTML 文件。
注意:LogLocation 参数仅在 Exchange 2013 中可用。 若要指定 Exchange 2016 或 Exchange 2019 中导出的日历项的位置,请参阅示例 3。
对于项的基本分析,请勿包含 DetailLevel 参数,或使用值 Basic 而不是 Advanced。
示例 3
$calitems = Get-CalendarDiagnosticLog -Identity jkozma@contoso.com -Subject "Budget Meeting"
ForEach($item in $calitems){$i++; Get-CalendarDiagnosticAnalysis -CalendarLogs $item -OutputAs HTML | Set-Content -Path ("\\FileServer01\Data\Jasen Kozma Analysis{0}.html" -f $i)}
此示例使用 Get-CalendarDiagnosticLog cmdlet 分析从 Jasen Kozma 邮箱导出的日历项目,并使用 UNC 路径将每个项目的高级分析写入 HTML 文件。
对于项的基本分析,请勿包含 DetailLevel 参数,或使用值 Basic 而不是 Advanced。
参数
-CalendarLogs
CalendarLogs 参数指定要分析的日历项。 通过将 Get-CalendarDiagnosticLog cmdlet 的输出存储到变量中,并将该变量用于此参数的值来标识日历项。
例如,若要分析香农·斯蒂尔邮箱中主题为“11 月预算会议”的会议,请运行 命令 $Budget = Get-CalendarDiagnosticLog -Identity "Shannon Steele" -Subject "November Budget Meeting" -ExactMatch
,然后使用此参数的值 $Budget
。
用于此参数的值必须标识单个项。 若要标识多个项,请参阅示例 3。
不能将此参数与 LogLocation 参数一起使用。
Type: | CalendarLog[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online |
-DetailLevel
DetailLevel 参数指定要在分析输出中看到的详细信息级别。 有效值包含:
- 基本:这是默认值。 返回的日历项属性在“详细说明”中列出。
- 高级:返回其他 37 个日历项属性。 应仅将此值用于详细的调试信息。
Type: | AnalysisDetailLevel |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online |
-GlobalObjectId
GlobalObjectId 参数指定要分析的日历项的标识。 在 Exchange 2013 中,如果位置包含多个导出的 .msg 文件,则可以将此参数与 LogLocation 参数一起使用来指定日历项。
会议的 GlobalObjectId 属性使用与 CleanGlobalObjectId 属性相同的格式 (,例如,040000008200E00074C5B7101A82E00800000009421DCCD5 046CD010000000000000000100000010B0349F6B17454685E17D9F9512E71F) 和两个属性的值可能相同。 但是,对于多个日历中同一会议的所有实例,GlobalObjectId 的值可能不会保持不变, (例如,受邀参加同一定期会议的不同实例的不同与会者) 。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online |
-LogLocation
注意:此参数已被 2022 H1 累积汇报从 Exchange 2016 和 Exchange 2019 中删除,因为它接受 UNC 路径值。 若要指定要分析的日历项,请使用 CalendarLogs 参数。
此参数仅在 Exchange 2013 中有效。
LogLocation 参数指定要分析的导出日历项的位置。 可以指定本地路径或 UNC 路径, \\Server\Share\User
() 。 如果值中有空格,请使用双引号 (") 将此值括起来。
使用带有 LogLocation 参数的 Get-CalendarDiagnosticLog cmdlet 将日历项目导出到 .msg 文件。 如果路径包含多个 .msg 文件,则运行 Get-CalendarDiagnosticAnalysis 时将分析所有这些文件。
不能将此参数与 CalendarLogs 参数一起使用。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2013, Exchange Online |
-OutputAs
OutputAs 参数指定命令的输出格式。 有效值包含:
- CSV (这是默认值)
- HTML
- XML
Type: | OutputType |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Exchange Server 2013, Exchange Server 2016, Exchange Server 2019, Exchange Online |
输入
Input types
若要了解此 cmdlet 接受的输入类型,请参阅 cmdlet 的输入和输出类型。 如果 cmdlet 的"输入类型"字段为空,则表明此 cmdlet 不接受输入数据。
输出
Output types
若要了解此 cmdlet 接受的返回类型(亦称为"输出类型"),请参阅 cmdlet 的输入和输出类型。 如果"输出类型"字段为空,则表明此 cmdlet 不返回任何数据。