Skip to content


Download the latest release: Get-CalendarDiagnosticObjectsSummary.ps1

This script runs the Get-CalendarDiagnosticObjects cmdlet and returns a summarized timeline of actions into clear English. It will also output an easier to read version of the CalLogs (enhanced) as well as a Raw copy of the logs for Developers.

To run the script, you will need a valid SMTP Address for a user and a meeting Subject or MeetingID.

The script will display summarized timeline of actions and save the logs returned in csv format in the current directory.

Parameters: Explanation:
-Identity One (or more) SMTP Address of EXO User Mailbox to query.
-Subject Subject of the meeting to query, only valid if Identity is a single user.
-MeetingID MeetingID of the meeting to query.
- Preferred way to get CalLogs.
-TrackingLogs Populate attendee tracking columns in the output.
- Only useable with the MeetingID parameter.
-Exceptions Include Exception objects in the output.
- Only useable with the MeetingID parameter.
-ExportToExcel - [Beta Feature] Export the output to an Excel file with formatting.
- Running the script for multiple users will create three tabs in the Excel file for each user.
If you want to add more users to the Excel file, close the file and rerun with new user.
- one tab for Enhanced CalLog
- one tab for the TimeLine
- Tab one for Raw CalLog
-CaseNumber Case Number to include in the Filename of the output.
- PrePend <CaseNumber>_ to filename.


Example to return timeline for a user with MeetingID:

.\Get-CalendarDiagnosticObjectsSummary.ps1 -Identity -MeetingID 040000008200E00074C5B7101A82E0080000000010E4301F9312D801000000000000000010000000996102014F1D484A8123C16DDBF8603E

Example to return timeline for a user with Subject:

.\Get-CalendarDiagnosticObjectsSummary.ps1 -Identity -Subject Test_OneTime_Meeting_Subject
Get CalLogs for 3 users:
Get-CalendarDiagnosticObjectsSummary.ps1 -Identity User1, User2, Delegate -MeetingID $MeetingID
Add Tracking Logs and Exceptions:
Get-CalendarDiagnosticObjectsSummary.ps1 -Identity $Users -MeetingID $MeetingID -TrackingLogs -Exceptions
Export CalLogs to Excel:
Get-CalendarDiagnosticObjectsSummary.ps1 -Identity $Users -MeetingID $MeetingID -TrackingLogs -Exceptions -ExportToExcel -CaseNumber 123456
Will create file like .\123456_CalLogSummary_<MeetingID>.xlsx in current directory.