Exchange 2007 Mailbox usage reporting – User and Server level
Gotta impress your IT manager?? Do this… it will create quite an impression!!! 🙂
Recently, I had to deal with a mailbox size limit request.
User says, “Increase my mailbox size limit to another 2 gigs.”
Now, don’t be harsh on him. Rather, prove and let him know how good he is managing/organizing his mailbox.
Let me show you on how to do that.
Start with:
[PS] C:\Windows\System32>Get-MailboxStatistics brucew | ft DisplayName,TotalItemSize,ItemCount
DisplayName TotalItemSize ItemCount
———– ……….————- ———
Willis, Bruce ……………..5787468431B 156747
This cmdlet is going to show you the user mailbox is 5.39GB in size with over 150000 items.
Now run,
[PS] C:\Windows\System32>Get-MailboxfolderStatistics brucew | ft Name, ItemsInFolder, FolderSize >>C:\Ratish\brucew.txt
This cmdlet is going to show the Mailbox breakup by folder which is going to tell you what’s being consuming where? 99% times, you just have to tell the user to clean up his sent items or deleted items to gain couple of gigs free space.
It’s not a good practice to increase mailbox size limit coz down the line 6-8 months he is going to end up with very bad email experience with a huge mailbox and 100000+ items since his OST file keep growing, outlook stops responding, performance issue while switching from folder to folder etc.
Ok, now I know that Bruce Willis never cares to delete any of his emails…. What if I want to find this on a server level ??
Read on……………
Copy this and paste in a txt file:
Get-MailboxStatistics -server TypeServerNameHere | Sort-Object TotalItemSize -Descending | ft DisplayName,@{label=”TotalItemSize(MB)”;expression={$_.TotalItemSize.Value.ToMB()}},storagegroupname,servername >C:\Output_MailboxReport.txt
Now, save the txt file to MailboxReport.ps1
Navigate to the shell and do this:
Now, all you need to do is to open the output (C:\Output_MailboxReport.txt) in Excel and sort users by high mailbox size and create a chart to showcase the top 10 users who are top contributors.
–
Ratish Nair
MVP Exchange
Team@ MSExchangeGuru
Keywords: Exchange 2007 mailbox size report, user mailbox folder breakup, PFDAVAdmin Exchange 2007, cmdlet to list mailbox item count, listing user mailbox, mailbox size reporting, extract user level mailbox size, extract server level mailbox size.
December 30th, 2010 at 3:02 am
Very useful.
Not sure if you’ll be able to assist me, but what I’m after is a report that tells me how many messages per week/month does a certain user receive/send and what size these are (or the sum in that particular period).
Based on that I could probably grant a couple users different mailbox sizes. As it is right now I have no way of knowing if their workload, e-mail messages received/sent warrant an increase or is it just their laziness that has brought upon their large mailbox.
December 30th, 2010 at 3:24 am
Good One Ratish.
December 30th, 2010 at 3:48 am
Native exchange aint got that functionality since no cmdlet can monitor a realtime activity.
Promodag reports is a product which is capable of achieving what you asked for…. The product is worth a shot !!!
Hope this helps….
December 30th, 2010 at 3:58 am
Ratish thank you for your prompt reply.
I thought that Exchange doesn’t have the functionality to monitor real time, I’m thinking more along the lines of starting a counter, leave it running for a week/month and then get the results. Could something like LogParser be leveraged?
Since Promodag has this capability I assume everything gets logged…somewhere, I’d just need a nudge in the right direction to know how to set this up, where to look for logs and then analyze it in some way.
December 30th, 2010 at 5:10 am
Great post… Thank you Ratish…
January 9th, 2011 at 12:25 pm
Ritesh, we can also schedule and get email at time period also with task
January 18th, 2011 at 3:33 pm
Nice script, I use a similar one to pull info and import into an Access database. I use it to report on the “Fatties” and apply pressure on those users. It also allows historical tracking of users by date to show some trending.
What I REALLY need now is a way to report on mailbox with counts of emails per year that are still sitting in storage.
Like Bob Smith’s emailbox:
2011 – 300 emails
2010 – 40540 emails
2009 – 595959 emails
…
…
1997 – 1454 emails
We are not allowed to prune “old” emails at this time and want to gather info on how much old information is still out there.
Thanks!
August 31st, 2011 at 7:20 pm
Thank you very much for this !!!
Its really easy, and helps alot, now I have to go talk to these users that have huge mailboxes.
September 1st, 2011 at 9:34 am
@Robert – You may wanna try this too: https://msexchangeguru.com/2011/05/20/mailbox-location-tracing/
February 26th, 2012 at 10:17 pm
Nice Script to generate the size usage report,
Thanks guy’s
Cheers,
Muthu.S
March 23rd, 2012 at 5:05 pm
I’m trying to run this and it fails at the storagegroupname where I have changed it to First Storage Group does it need ‘First Storage Group’ to work??
May 27th, 2015 at 3:16 am
It work !!!! Thank you Very much
June 24th, 2015 at 12:51 am
Thanks it worked!!!