Get-CalendarDiagnosticLog

尽管此 cmdlet 在本地 Exchange 和基于云的服务中可用,但它仅适用于本地 Exchange。 在基于云的服务中,请改用 Get-CalendarDiagnosticObjects cmdlet。

使用 Get-CalendarDiagnosticLog cmdlet 可以收集一系列日历日志。 日历诊断日志跟踪邮箱中的所有日历项目和会议请求。 可以使用此信息排查邮箱中出现的日历问题。

有关以下语法部分的参数设置的详细信息,请参阅 Exchange cmdlet 语法

语法

MeetingId

Get-CalendarDiagnosticLog
    [-Identity] <MailboxIdParameter>
    -MeetingID <String>
    [-Credential <PSCredential>]
    [-DomainController <Fqdn>]
    [-LogLocation <String>]
    [-ReadFromDomainController]
    [-ResultSize <Unlimited>]
    [<CommonParameters>]

MeetingSubject

Get-CalendarDiagnosticLog
    [-Identity] <MailboxIdParameter>
    -Subject <String>
    [-Credential <PSCredential>]
    [-DomainController <Fqdn>]
    [-LogLocation <String>]
    [-ReadFromDomainController]
    [-ResultSize <Unlimited>]
    [<CommonParameters>]

ExportToMsg

Get-CalendarDiagnosticLog
    [-Identity] <MailboxIdParameter>
    -LogLocation <String>
    [-Credential <PSCredential>]
    [-DomainController <Fqdn>]
    [-EndDate <ExDateTime>]
    [-EntryId <String>]
    [-ExactMatch <Boolean>]
    [-ItemClass <String[]>]
    [-ItemIds <String[]>]
    [-Latest]
    [-MeetingID <String>]
    [-ReadFromDomainController]
    [-ResultSize <Unlimited>]
    [-StartDate <ExDateTime>]
    [-Subject <String>]
    [<CommonParameters>]

说明

此 cmdlet 的输出包含以下信息:

  • IsFileLink:指示是否使用 LogLocation 参数将日历项导出到.msg文件。 值为 True 或 False。
  • 标识:标识保存日历项的邮箱。 示例值为:excallog://laura@contoso.com/?id=RgAAAACF/h/dHTTkQbdPrk7z+G4SBwCoatc7EmnEQq1iF35p17stAAAAFEAACoatc7EmnEQq1iF35p17stAAAAABEIAAAP。
  • LogDate:记录日历项的日期时间。
  • NormalizedSubject:日历项的“主题”字段。
  • CleanGlobalObjectId:在日历项的整个生存期内保持不变的标识符。 例如,040000008200E00074C5B7101A82E00800000000B0225ABF0710C80100000000000000001000000005B27C05AA7C4646B0835D5EB4E41C55。

运行 Get-CalendarDiagnosticLog cmdlet 之后,您可以使用 Get-CalendarDiagnosticAnalysis cmdlet 分析日历数据。 有关详细信息,请参阅 Get-CalendarDiagnosticAnalysis

您必须先获得权限,然后才能运行此 cmdlet。 尽管本文列出了 cmdlet 的所有参数,但如果某些参数未包含在分配给你的权限中,则可能无法访问这些参数。 若要查找在贵组织中运行任何 cmdlet 或参数所需的权限,请参阅 Find the permissions required to run any Exchange cmdlet

示例

示例 1

Get-CalendarDiagnosticLog -Identity "Shannon Steele" -Subject "Weekly development meeting" -ExactMatch $true

此示例使用主题每周开发会议检索 Shannon Steele 邮箱的日历诊断日志条目。

示例 2

Get-CalendarDiagnosticLog -Identity oevans -StartDate "6/1/2018 6:00:00 AM" -EndDate "6/30/2018 5:00:00 PM"

此示例从 2018 年 6 月 1 日到 2018 年 6 月 30 日检索 Oscar Evans 邮箱的日历诊断日志条目。

示例 3

Get-CalendarDiagnosticLog -Identity jkozma@contoso.com -Subject "Weekly development meeting" -Latest

此示例仅检索 Jasen Kozma 邮箱中邮件主题为“每周开发会议”的最新日历项目的日历诊断日志数据。

示例 4

Get-CalendarDiagnosticLog -Identity "Jasen Kozma" -Subject "Budget Meeting" -ExactMatch $true -LogLocation "C:\My Documents\Calendar Diagnostic Export"

Exchange 2013 中,此示例将 Jasen Kozma 邮箱的日历诊断日志中所有日历项目(在主题的任意位置包含“预算会议”)导出到指定文件夹。

注意

  • 在此示例中,邮件文件将写入 C:\My Documents\Calendar Diagnostic Export\jkozma@contoso.com。
  • 在本地 Exchange 组织中,可以使用 Get-CalendarDiagnosticAnalysis cmdlet 分析导出的 .msg 文件。
  • 此示例在 Exchange 2016 或 Exchange 2019 中不起作用,因为 LogLocation 参数不可用。

参数

-Credential

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

此参数只在本地 Exchange 中可用。

Credential 参数指定用于运行此命令的用户名和密码。 通常情况下,您可以在脚本中或在需要提供具有所需权限的不同凭据时使用此参数。

此参数的值需要 Get-Credential cmdlet。 要暂停此命令并接收凭据提示,请使用值 (Get-Credential)。 或者,在运行此命令之前,请将凭据存储在变量(例如,$cred = Get-Credential)中,然后将变量名称 ($cred) 用作此参数。 有关详细信息,请参阅 Get-Credential

参数属性

类型:PSCredential
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-DomainController

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

此参数只在本地 Exchange 中可用。

DomainController 参数指定此 cmdlet 从 Active Directory 读取数据或向其写入数据时使用的域控制器。 可以使用完全限定的域名 (FQDN) 来标识域控制器。 例如,dc01.contoso.com。

参数属性

类型:Fqdn
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-EndDate

适用:Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE、Exchange Online

EndDate 参数指定日期范围的结束日期。

请使用短日期格式,该格式在运行命令的计算机上的“区域选项”设置中定义。 例如,如果计算机配置为使用短日期格式 MM/dd/yyyy,请输入 09/01/2018 以指定 2018 年 9 月 1 日。 可以只输入日期,也可以输入当天的日期和时间。 如果输入当天的日期和时间,请将该值括在引号 (") 中,例如,"09/01/2018 5:00 PM"。

参数属性

类型:ExDateTime
默认值:None
支持通配符:False
不显示:False

参数集

ExportToMsg
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-EntryId

适用:Exchange Server 2016、Exchange Server 2019、Exchange Server SE、Exchange Online

EntryId 参数按条目 ID 筛选结果。 可以指定用逗号分隔的多个值。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

ExportToMsg
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ExactMatch

适用:Exchange Server 2016、Exchange Server 2019、Exchange Server SE、Exchange Online

ExactMatch 参数指定为 Subject 参数指定的文本值是使用完全匹配还是部分匹配。 有效值包含:

  • $true:主题搜索使用完全匹配并搜索邮箱中的所有日历项目。 例如,如果搜索“预算”,则搜索将查找主题中任意位置包含“预算”的项目,但不会查找“预算”。
  • $false:主题搜索使用部分匹配,最多搜索邮箱中的 1000 个日历项目。 例如,如果搜索“预算”,则搜索将在主题中的任何位置查找具有“预算”和“预算”的项目。 此值为默认值。

部分主题匹配搜索可能不会返回所有相关日历项。 尝试使用完全匹配的主题搜索来获得更准确的结果。

仅将此参数与 Subject 参数一起使用。

使用 MeetingId 参数时,将忽略此参数的值。

参数属性

类型:Boolean
默认值:None
支持通配符:False
不显示:False

参数集

ExportToMsg
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Identity

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE、Exchange Online

Identity 参数指定包含日历项目的邮箱。 可以使用能够唯一标识邮箱的任意值。 例如:

  • 名称
  • 别名
  • 可分辨名称 (DN)
  • 可分辨名称 (DN)
  • 域\用户名
  • 电子邮件地址
  • GUID
  • LegacyExchangeDN
  • SamAccountName
  • 用户 ID 或用户主体名称 (UPN)

参数属性

类型:MailboxIdParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:1
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-ItemClass

适用:Exchange Server 2016、Exchange Server 2019、Exchange Server SE、Exchange Online

ItemClass 参数按日历项的指定 MessageClass 属性值筛选结果, (例如 IPM。约会) 。 可以指定用逗号分隔的多个值。

只能将此参数与 MeetingID 参数一起使用。

参数属性

类型:

String[]

默认值:None
支持通配符:False
不显示:False

参数集

ExportToMsg
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ItemIds

适用:Exchange Server 2016、Exchange Server 2019、Exchange Server SE、Exchange Online

ItemIds 参数按项 ID 筛选结果。 可以指定用逗号分隔的多个值。

参数属性

类型:

String[]

默认值:None
支持通配符:False
不显示:False

参数集

ExportToMsg
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Latest

适用:Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE、Exchange Online

Latest 开关指定是否仅为最近的日历项目返回日历日志数据。 不必为此开关指定值。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

ExportToMsg
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-LogLocation

适用:Exchange Server 2010、Exchange Server 2013、Exchange Online

注意:此参数已于 2022 H1 累积汇报从 Exchange 2016 和 Exchange 2019 中删除,因为它接受 UNC 路径值。 此 cmdlet 的用法现在仅限于本地服务器。

此参数仅在 Exchange 2010 和 Exchange 2013 中有效。

LogLocation 参数指定将日历项目导出到.msg文件的位置。 可以指定本地路径或 UNC 路径, \\Server\Share () 。 如果值中有空格,请使用双引号 (") 将此值括起来。

在指定的位置中,将自动为保存导出日历项目的指定邮箱创建子文件夹。 例如,如果指定值“C:\My Documents\Calendar Export”以从 Shannon Steele 的邮箱导出日历项目,则.msg文件实际上存储在 C:\My Documents\Calendar Export\ssteele@contoso.com中。

在本地 Exchange 组织中,可以使用 Get-CalendarDiagnosticAnalysis cmdlet 分析导出的 .msg 文件。

注意:如果日历项没有标题,则使用此参数的命令可能会失败。 如果使用此参数时收到错误,请再次运行 命令,并将此参数替换为重定向到文件 (| Set-Content -Path "C:\My Documents\Calendar Export") 或将输出替换为 PowerShell 变量。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

ExportToMsg
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False
MeetingId
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False
MeetingSubject
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-MeetingID

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE、Exchange Online

MeetingID 参数按日历项的全局唯一标识符筛选结果。 该值是此 cmdlet 的输出中提供的日历项的 CleanGlobalObjectId 属性,或者通过使用其他 MAPI 检查工具。 示例值040000008200E00074C5B7101A82E00800000000B0225ABF0710C80100000000000000001000000005B27C05AA7C4646B0835D5EB4E41C55。 此值在日历项的整个生存期内保持不变。

若要查找此值,最简单的方法是首先使用 Subject、StartDate 和 EndDate 参数搜索日历项。 找到所需的日历项后,可以在将来的命令中使用其 CleanGlobalObjectId 值作为 MeetingID 参数。

请勿将此参数与 Subject 参数一起使用,因为 MeetingID 参数的值优先。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

MeetingId
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False
ExportToMsg
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-ReadFromDomainController

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE

此参数只在本地 Exchange 中可用。

ReadFromDomainController 开关指定从用户域中的域控制器读取的信息。 不必为此开关指定值。

命令: Set-AdServerSettings -ViewEntireForest $true 若要包含林中的所有对象,需要 ReadFromDomainController 开关。 否则,命令可能会使用包含过时信息的全局编录。 此外,可能需要使用 ReadFromDomainController 开关运行命令的多个迭代才能获取信息。

默认情况下,收件人范围设置为托管 Exchange 服务器的域。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ResultSize

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE、Exchange Online

此参数确定 cmdlet 返回的结果数。 最大值为 1000。

参数属性

类型:Unlimited
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-StartDate

适用:Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE、Exchange Online

StartDate 参数指定日期范围的起始日期。

请使用短日期格式,该格式在运行命令的计算机上的“区域选项”设置中定义。 例如,如果计算机配置为使用短日期格式 MM/dd/yyyy,请输入 09/01/2018 以指定 2018 年 9 月 1 日。 可以只输入日期,也可以输入当天的日期和时间。 如果输入当天的日期和时间,请将该值括在引号 (") 中,例如,"09/01/2018 5:00 PM"。

参数属性

类型:ExDateTime
默认值:None
支持通配符:False
不显示:False

参数集

ExportToMsg
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Subject

适用:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE、Exchange Online

Subject 参数通过 Subject 字段中的指定文本标识日历项。 指定的文本值不区分大小写。 如果值中有空格,请使用双引号 (") 将此值括起来。 可以使用 ExactMatch 参数控制是否使用完全匹配。

不要将此参数与 MeetingID 参数一起使用,因为 MeetingID 参数的值优先。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

MeetingSubject
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False
ExportToMsg
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

CommonParameters

此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters

输入

Input types

若要了解此 cmdlet 接受的输入类型,请参阅 cmdlet 的输入和输出类型。 如果 cmdlet 的"输入类型"字段为空,则表明此 cmdlet 不接受输入数据。

输出

Output types

若要了解此 cmdlet 接受的返回类型(亦称为"输出类型"),请参阅 cmdlet 的输入和输出类型。 如果"输出类型"字段为空,则表明此 cmdlet 不返回任何数据。