Commands › Exchange Online

Get-CalendarDiagnosticLog

Exchange Online ExchangeOnlineManagement Get-*

Although In cloud-based service, use the Get-CalendarDiagnosticObjects cmdlet instead. Use the Get-CalendarDiagnosticLog cmdlet to collect a range of calendar logs. The Calendar Diagnostic logs track all calendar items and meeting requests in mailboxes. You can use this information to troubleshoot calendar issues that occur in mailboxes.

Quick start script

# Get-CalendarDiagnosticLog — quick start (serv365.ai)
# 1. Connect (app-only shown; interactive: omit the certificate parameters)
Connect-ExchangeOnline -CertificateThumbprint $thumb -AppId $appId -Organization $org

# 2. Run and inspect
Get-CalendarDiagnosticLog -Identity <MailboxIdParameter> -LogLocation <String> -MeetingID <String> | Format-List

# 3. Export for evidence / drift tracking
Get-CalendarDiagnosticLog | Export-Clixml .\CalendarDiagnosticLog-$(Get-Date -Format yyyyMMdd).xml

Syntax — 3 parameter sets

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>]

Parameters (15)

ParameterTypeRequiredWhat it controls
-Identity MailboxIdParameter yes The Identity parameter specifies the mailbox that contains the calendar items. You can use any value that uniquely identifies the mailbox. For example:
-LogLocation String yes **Note**: This parameter was removed from Exchange 2016 and Exchange 2019 by the [2022 H1 Cumulative...
-MeetingID String yes The MeetingID parameter filters the results by the globally unique identifier of the calendar item. The value is the CleanGlobalObjectId property of the calendar item that's available in the output of this cmdlet, or...
-Subject String yes The Subject parameter identifies the calendar items by the specified text in the Subject field. The text values that you specify aren't case sensitive. If the value contains spaces, enclose the value in quotation...
-Credential PSCredential This parameter is available only in on-premises Exchange.
-DomainController Fqdn This parameter is available only in on-premises Exchange.
-EndDate ExDateTime The EndDate parameter specifies the end date of the date range.
-EntryId String The EntryId parameter filters the results by entry ID. You can specify multiple values separated by commas.
-ExactMatch Boolean The ExactMatch parameter specifies whether to use an exact match or a partial match for text values that you specify for the Subject parameter. Valid values are:
-ItemClass String[] The ItemClass parameter filters the results by the specified MessageClass property value of the calendar item (for example, IPM.Appointment). You can specify multiple values separated by commas.
-ItemIds String[] The ItemIds parameter filters the results by item ID. You can specify multiple values separated by commas.
-Latest SwitchParameter The Latest switch specifies whether to return calendar log data for only the most recent calendar item. You don't need to specify a value with this switch.
-ReadFromDomainController SwitchParameter This parameter is available only in on-premises Exchange.
-ResultSize Unlimited This parameter determines the number of results returned by the cmdlet. The maximum value is 1000.
-StartDate ExDateTime The StartDate parameter specifies the start date of the date range.

Reference facts derived from Microsoft documentation, © Microsoft, licensed CC BY 4.0; restructured with original guidance by serv365.ai.