Exchange Server 2016 Hybrid Server Log Management

Brass Contributor

I have a hybrid environment where all my mailboxes are in Exchange Online, but I have an on-premises Exchange Server 2016 server as my hybrid server to support mailbox management as well as multi-function devices (scanners) routing scanned documents via email to my cloud mailboxes.


No mailboxes are stored on the server.  I do have Windows Server Backup running as an "Exchange aware" backup to truncate transaction logs, but what I am seeing is significant growth in IIS and other Exchange related logs that do not appear to be truncated by backups.


Is anyone aware of any best practices for maintaining log growth on a hybrid server?  Because it is not hosting any mailboxes and simply acting as a relay to Exchange Online, the server is not configured with abundant resources.

6 Replies
best response confirmed by Christopher Lee (Brass Contributor)

Thanks for the post.  I was hoping there was an integrated way in Exchange to truncate or limit log growth, but if it's a manual (or scripted) process still, I guess it's better than nothing.

Hello Christopher,


There are some configurable settings on the Transport Service. When you run Get-TransportService | fl *MaxDirectorySize* you find the maximum directory size for some logging directories. You can change these settings with Set-TransportService.

You can also change the LogMaxAge for these different logging types. Get-TransportService | fl *LogMaxAge* shows the maximum log age for the different logging types. These settings can also be changed with Set-TransportService.


Besides those settings, you will still need to clean your IIS logs as suggested earlier.


Best regards,

Ruud Gijsbers



Thanks for the post.  Great information on controlling transport logs, but the logs that I see growing without an easy way to truncate are the performance and diagnostics logs outside of the transport service.


You're welcome. In addition to my previous post, you can follow the steps discussed in the link to disable the Performance and Diagnostic logging completely if you're not interested in the logs.

Otherwise you can schedule the script as discussed earlier to remain some logging.

Best regards,

Ruud Gijsbers