Exchange邮箱分析

我有一些用户的邮箱似乎比其他人快得多。 例如,我们在不到一年的时间内从一个特定的用户那里收集了大量的邮件,把他的邮箱降到了大约4GB(是的 – 我知道这很荒谬,但是我们正在运行一个项目来实现自动归档/配额等等)。

无论如何,我想知道是否有一个(最好是免费的)可用的工具,我们可以用来分析附件的容量/大小的邮箱。 像TreeSize,但为Outlook OST(甚至在服务器上的源)。

(我们正在运行Exchange 2003 SP2,Outlook 2010客户端)

至于免费产品: 在OutlookFreeware.com上有很多创build报表和收集统计信息的工具,如果是开发者,我也是一样。 特别是“ 附件报告”和“ 最大文件夹”对您可能非常有用。

Exchange Server 2003本身并不会为您提供所需的信息,但是整个行业都是围绕Exchangepipe理和报告构build的。 这只是一个可用的工具:

http://www.manageengine.com/products/exchange-reports/features.html

实际上,你可以通过WMI获得一些信息。

下面是Perl中的一个例子,我将它们放在一起用于类似的目的:

#! /usr/bin/env perl use strict; use warnings; use Win32::OLE('in'); use constant wbemFlagReturnImmediately => 0x10; use constant wbemFlagForwardOnly => 0x20; print "Mailbox,Size (KB),Total Items,Last Logon Time,Last User\n"; my @computers = qw ( mailserver1 mailserver2 etc); #array off all mail servers, separated by spaces foreach my $computer (@computers) { my $objWMIService = Win32::OLE->GetObject("winmgmts:\\\\$computer\\root\\MicrosoftExchangeV2") or die "WMI connection failed.\n"; my $colItems = $objWMIService->ExecQuery("SELECT * FROM Exchange_Mailbox", "WQL", wbemFlagReturnImmediately | wbemFlagForwardOnly); foreach my $objItem (in $colItems) { my $mailboxDisplayName = $objItem->{MailboxDisplayName} || "NULL"; my $size = $objItem->{Size} || "NULL"; my $totalItems = $objItem->{TotalItems} || "NULL"; my $lastLogonTime = substr($objItem->{LastLogonTime},0,8) || "NULL"; my $lastUser = $objItem->{LastLoggedOnUserAccount} || "NULL"; #next unless $mailboxDisplayName; print "$mailboxDisplayName,$size,$totalItems,$lastLogonTime,$lastUser\n"; } } 

你需要安装perl和Win32 :: OLE模块,但是这很容易。 通过执行perl scriptname.pl从命令行运行它,并通过运行perl scriptname.pl > report.csv捕获到.csv文件

此WMI类无法获取附件信息,但可以提供邮件数量和邮箱大小。