exchange-2010 – 收到Exchange 2010发送和接收的电子邮件总数

我们正在使用Exchange 2010.我想检索工作场所中所有用户发送的电子邮件总数和收到的电子邮件列表,为期30天.该列表应包含所有用户的名称,然后是已发送和已接收电子邮件的总数.

我已经尝试了下面的示例代码并尝试将其更改为无效.

Get-MessageTrackingLog -Recipients user01@yourdomain.com -start“10/22/2011 00:00:00”-end“11/21/2011 11:59:00”-EventId“receive”|测量对象

Get-MessageTrackingLog -sender user01@yourdomain.com -start“10/22/2011 00:00:00”-end“11/21/2011 11:59:00”-EventId“send”|测量对象

最佳答案
“By default, the maximum age for any message tracking log file is 30 days” – 除非您更改了邮件跟踪日志的默认值,否则您不太可能从那里获得一年的数据(除非您几乎没有邮件,因此每个日志文件限制10 MB未超过30天过去).

如果需要保留此类数据,请将日志的最大期限/目录大小限制更改为described in the docs.

另一点是跟踪日志不包含用户信息 – 它只包含发件人和收件人 – 这些信息可能会也可能不会映射到基础架构的实际用户.

除此之外,您可以将Get-MessageTrackingLog的结果传递给group-object进行分组和计数.对于发件人进行分组,这将是相当微不足道的:

Get-MessageTrackingLog -start “10/22/2011 00:00:00” -end “11/21/2011 11:59:00” | group-object -Property Sender

由收件人分组是比较棘手的,因为Get-MessageTrackingLog返回的“收件人”字段是多值的 – 即可能包含多个收件人.预先选择Select-Object -ExpandProperty有助于:

Get-MessageTrackingLog -start “10/22/2011 00:00:00” -end “11/21/2011 11:59:00” | select-object -ExpandProperty Recipients | group-object

结果集看起来有点像这样:

Count Name                      Group
----- ----                      -----
   44 mail@yourdomain.com       {mail@yourdomain.com, mail@yourdomain.com, ...}
   11 user1@yourdomain.com      {user1@yourdomain.com, user1@yourdomain.com, ...}
   36 some.address@foreigndo... {some.address@foreigndomain.com, some.address@for...}
[...]

转载注明原文:exchange-2010 – 收到Exchange 2010发送和接收的电子邮件总数 - 代码日志