Skip to content

Mailbox Message Report 2.1.0

Latest

Choose a tag to compare

@Nico77600 Nico77600 released this 07 Oct 17:28
· 15 commits to main since this release

Large folders read 4 requests at a time to the end, a progress bar that shows the messages read, and the read state in the HTML report. Read only.

Faster on large folders

  • Slices of the same number of messages: a folder of more than Graph.SplitFolderItems messages (now 2,000, 5,000 before) is cut at the dates of the messages at 1/n, 2/n... of the folder ($top=1&$count=true, then $top=1&$skip=k·N/n), 16 slices at most. Version 2.0 cut the period in equal parts: a room's Deleted Items had 39,372 of its 39,419 messages in 3 days of 6 months, so one slice held almost all of them and was read one page after the other.
  • Slices cut again while read: when a mailbox has free request slots (Exchange Online answers 4 at a time per mailbox), the list with the longest period left is cut in two (the list in course stops at the cut, a new slice reads the older half). Every message is read once, newest first.
Lab: Deleted Items of a room, 6 months, with the recipients 2.0.0 2.1.0
Duration 14 min 06 s 3 min 08 s
Messages a second 47 214
Requests at a time 1 at the end 3.9 on average (Exchange allows 4 per mailbox)

Progress and speed

  • Progress bar: the share of the messages read, folder by folder (the number of messages of the filter of each list, $count on its first page), with the messages a second and the time left. Version 2.0 counted the empty slices of a folder as read: the bar stayed at 100 %.
  • Speed in the log: the time of a page (average, longest), the requests in flight on average, the messages a second of the run and of each mailbox, the 5 slowest folders. New column Seconds in Folders.csv, Read in in the Folders tab of the HTML report.

HTML report

  • A Read column in the table of the messages (No in colour; the subject of an unread message in bold, as in Outlook) and a Read filter (all, read, unread), with the others.

Validated

  • 38 Pester tests (cuts at k·N/n, a folder whose messages came in a few days, a slice cut again while read, the progress, the read state).
  • Lab tenant: Exchange Online $count (0.4 s) and $skip up to 30,000 (4 s at most) measured; the folder above read in 3 min 08 s, 39,414 messages, each once, newest first, with their recipients; the progress of a real run (2 %, 8 %, 27 %, 42 %... 100 %).

Upgrade

Take the configuration file of the package (Graph.SplitFolderItems = 2000). An older configuration file works, with its value.

Unblock the files after downloading: Get-ChildItem "C:\Chemin\Du\Dossier" -Recurse -File -Force | Unblock-File.

Guides: docs\MailboxMessageReport-UserGuide.html and docs\MailboxMessageReport-Guide.html in the zip.