As you all know, powershell is very powerful tool and can do or achieve anything you wish for (with bit of efforts of course ;-).. This article describes and shares how you can monitor journal mailboxes on Exchange for archiving rate and making sure EV journal archiving is keeping up ensuring that there's no backlog on Exchange journal databases.
How does this works:
Script takes input from a txt file JournalServer.txt which can contain single or multile Exchange journaling server names as required.
Script determines necessary database & mailbox statistics / information into a HTML file.
Script marks any red area for example if number of items in journal mailbox is higher than 200000 OR if size of mailbox is more than 2GB.
Script saves the HTML file and sends it over email using anonymous authenitcation using Exchange server.
What you can add:
You can add more values which you need to monitor journaling on as required.
You can probably reduce some redundancy within script itself.
You can change the threshold level by changing threshold variables defined at start of script as per your requirement.
You can create batch file script that calls for Powershell & PS1 file and run it on scheduled basis.
You can add more action items to it as required. It's Powershell - There can be no counted options to do with it. :)
Point to note here though is that, this script uses Exchange management shell DLLs, so you'll have to run this script from a workstation which has Exchange management tools installed and can connect to Exchange journaling server to pull the required statistics.
Please find the script, sample txt file & sample output file attached with this article. Hopefully this helps and I am here for any questions in this direction.