在Exchange 2010高可用性环境中进行邮件收发数量统计

邮件收发数量统计功能是Exchange中一项很是实用的功能,它能够统计出在某一个时间段内,全部用户的邮件收发数量、单个用户的邮件收发数量、收发明细等等服务器

在作邮件收发数量统计以前,咱们首先来确保Exchange启用了邮件跟踪日志(默认是启用的),打开Exchange管理控制台,如图打开HUB服务器cqexcashub01和cqexcashub02的属性ide

01

 

在【日志设置】选项卡中,确保【启用邮件跟踪日志】前面的勾已经勾选测试

02

 

为了验证统计的准确性,在测试以前,咱们先向外部发送几封邮件,从下图能够看到用户jqq(蒋庆秋)向QQ邮箱发送5封;用户rb(任波)向QQ邮箱发送了2封spa

02

 

用户jmc(蒋茂春)向163邮箱发送了3封3d

03

 

而后再经过外部邮箱,向内部用户发送几封邮件日志

这里用户jqq(蒋庆秋)收到2封blog

04

 

用户rb(任波)收到3封排序

05

 

用户jmc(蒋茂春)收到1封事件

06

 

那么先来简单作个统计ip

  发送 接收
jqq(蒋庆秋) 5 2
rb(任波) 2 3
jmc(蒋茂春) 3 1
合计 10 6

 

接下来在Exchange Management Shell中经过一系列的统计,将统计结果和上面表格中的数值进行对比,看可否对得上

咱们先来统计11月27号这一天的邮件发送总量,因为个人环境中有2台HUB服务器,Exchange会随机选择这2台HUB服务器投递邮件,因此须要分别对cqexcashub01和cqexcashub02进行统计

Get-MessageTrackingLog -Start "11/27/2012 00:00:00" -end "11/28/2012 00:00:00" -EventId send -Server cqexcashub01 | Measure-object

Get-MessageTrackingLog -Start "11/27/2012 00:00:00" -end "11/28/2012 00:00:00" -EventId send -Server cqexcashub02 | Measure-object

-Start 起始时间 月/日/年 时:分:秒
-End 结束时间  
-EventID 事件 Send(发送事件)、Receive(接收事件)
-Server HUB服务器  
Measure-object 计算总和 去掉能够显示明细

 

从两次命令返回的Count值看出,cqexcashub01发送了6封,cqexcashub02发送了4封,相加的结果等于10,说明总数是对得上的

09

 

若是须要查看2台HUB服务器的发送明细,能够去掉 Measure-object 参数

Get-MessageTrackingLog -Start "11/27/2012 00:00:00" -end "11/28/2012 00:00:00" -EventId send -Server cqexcashub01

Get-MessageTrackingLog -Start "11/27/2012 00:00:00" -end "11/28/2012 00:00:00" -EventId send -Server cqexcashub02

10

 

每次都要输入两次命令实在是太麻烦,那么来作个命令传递,先用 Get-ExchangeServer cqexcashub* 获取到2台HUB服务器,而后再将返回的值传递给 Get-MessageTrackingLog 命令

Get-ExchangeServer cqexcashub* | Get-MessageTrackingLog -Start "11/27/2012 00:00:00" -end "11/28/2012 00:00:00" -EventId send | Measure-object

最后Count值为10,方便多了

11

 

统计11月27日每位用户分别发送的邮件数量

Get-ExchangeServer cqexcashub* | Get-MessageTrackingLog -Start "11/27/2012 00:00:00" -end "11/28/2012 00:00:00" -EventId send | Group-Object –Property sender | Select Name,Count | Sort Count -Descending

Group-Object –Property sender 按发件人分组
Select Name,Count 筛选出Name和Count这两列
Sort Count -Descending 对Count的值进行排序

12

 

统计11月27日内部用户邮件接收总量

Get-ExchangeServer cqexcashub* | Get-MessageTrackingLog -Start "11/27/2012 00:00:00" -end "11/28/2012 00:00:00" -EventId Receive | Measure-object

能够看到经过此命令统计出来的接收总数量为16封,可咱们内部用户只收到了6封啊,这显然不对,去掉 Measure-object 参数后再看,发现QQ邮箱和163邮箱也在统计范畴内13

 

将命令修改一下

Get-ExchangeServer cqexcashub* | Get-MessageTrackingLog -Start "11/27/2012 00:00:00" -end "11/28/2012 00:00:00" -EventId Receive | Where {$_.Recipients  -like "*@excontoso.tk"} | Measure-object

经过 Where {$_.Recipients -like "*@excontoso.tk"} 对收件人列作一个筛选,将内部邮箱筛选出来,现再Count值就彻底吻合了

14

 

统计11月27日每位用户分别接收的邮件数量

Get-ExchangeServer cqexcashub* | Get-MessageTrackingLog -Start "11/27/2012 00:00:00" -end "11/28/2012 00:00:00" -EventId Receive | Group-Object –Property Recipients | Where {$_.Values  -like "*@excontoso.tk"} | Select Values,Count | Sort Count –Descending

对收件人进行分组后,一样要筛选出内部邮箱

15

 

统计11月27日用户jqq发送的邮件数量

Get-ExchangeServer cqexcashub* | Get-MessageTrackingLog -Start "11/27/2012 00:00:00" -end "11/28/2012 00:00:00" -EventId send -Sender "jqq@excontoso.tk" | Measure-object

去掉 Measure-object 能够逐一显示用户jqq所发送的邮件

16

 

统计11月27日【19916914@qq.com】这个QQ邮箱的接收邮件数量,以及向这个邮箱发送过邮件的全部用户

Get-ExchangeServer cqexcashub* | Get-MessageTrackingLog -Start "11/27/2012 00:00:00" -end "11/28/2012 00:00:00" -EventId Receive -Recipients "19916914@qq.com" | Measure-object

去掉 Measure-object 参数便可统计到向【19916914@qq.com】发送过邮件的全部用户

17

相关文章
相关标签/搜索