开发者社区> 技术小甜> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Exchange Powershell实现邮箱收发数量统计

简介:
+关注继续查看

我们在做Exchange Server日常管理的时候,经常会遇到这样的情况,老板想知道每个邮箱每天发送了多少封邮件?我们的服务器一天或者一个月发送多少邮件?又或者是服务器一天有多少发送失败的邮件,发往某一个地址有多少数量?这些在Exchange图形化管理中都是无法实现的,或者需要借助第三方工具来实现。下面我们介绍一下Exchange强大的Powershell管理,几个命令就解决了以上问题。

1、统计一台HUB服务器上一个时间段内的发送情况:

[PS] C:\Windows\system32>Get-MessageTrackingLog -ResultSize unlimited -Start "07/01/2012" -End "07/13/2012" -EventId "send" -Server "srvbj06" |Measure-Object

ResultSize unlimited参数为显示所有。

加上Measure-Object为计算对象的数字属性以及字符串对象总和。去掉则会逐条显示。

image

-Eventid可包括BadMail、Defer Deliver、DSN、Expand、Fail、PoisonMessage、Receive、Redirect、Resolve、Send、Submit 和 Transfer。为对邮件状态进行检索。

比如下面使用Fail参数来检索一个时间段内发送失败的邮件数量:

[PS] C:\Windows\system32>Get-MessageTrackingLog -ResultSize unlimited -Start "07/01/2012" -End "07/13/2012" -EventId "Fail" -Server "srvbj06" |Measure-Object

image

2、查询某个邮箱的发送情况:

[PS] C:\Windows\system32>Get-MessageTrackingLog -ResultSize unlimited -Start "07/01/2012" -End "07/13/2012" -EventId "send" -Sender "luochen@bpdi.com.cn" |Measure-Object

image

下面在看看这个邮箱哪些邮件发送失败了

[PS] C:\Windows\system32>Get-MessageTrackingLog -ResultSize unlimited -Start "07/01/2012" -End "07/13/2012" -EventId "FAIL" -Sender luochen@XX.com

image 
3、按邮箱排列出一个时间段内发送情况:

加上Group-Object命令进行分组统计这里我们计算Count的值,然后在把Count进行分组,在使用select进行筛选。

[PS] C:\Windows\system32>Get-MessageTrackingLog -ResultSize unlimited -Start "07/01/2012" -End "07/13/2012" -EventId "send" |Group-Object -Property:sender |select name,count

image

上面已经统计出了每个邮箱的发送情况,下面在加上sort对count数值进行一个排序,这样就能得出哪个邮箱发得最多了。

[PS] C:\Windows\system32>Get-MessageTrackingLog -ResultSize unlimited -Start "07/01/2012" -End "07/13/2012" -EventId "send" |Group-Object -Property:sender |Select name,count|sort count -Descending

image

























本文转自李珣51CTO博客,原文链接: http://blog.51cto.com/lixun/930855,如需转载请自行联系原作者






版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
想统计指定用户每天通过EXCHANGE发送了多少封邮件么?
用Get-ExchangeServer命令。输出到CSV。 可以考虑作成每天自动任务。   [PS] C:\Windows\system32>Get-ExchangeServer EXCHANGE-SERVER-NAME | Get-MessageTrackingLog -Start "5/8...
653 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载