" title="IT技术博客 - 云计算大数据-技术分享


0

Powershell统计Exchange邮箱收发数量

编辑:./ 栏目:IT应用和服务 /发布于:2021年-9月-14日

我们在做Exchange Server2010版本日常运维管理的时候,经常会遇到这样的情况,我们的服务器一天或者一个月发送多少邮件?又或者是服务器一天有多少发送失败的邮件,发往某一个地址有多少数量?这里介绍一下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为计算对象的数字属性以及字符串对象总和。去掉则会逐条显示。

-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

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

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

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

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

上面已经统计出了每个邮箱的发送情况,下面在加上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

本文由“IT技术博客 - 云计算大数据-技术分享 > .”整理编辑。


未注明为原创的文章以及每篇文章的评论内容都不代表本站观点,本站不对此内容的真实性及言论负责。如您发表评论意见,视为同意本站记录言论您的来源IP地址信息及发表时间。

如果喜欢这篇文章,欢迎订阅IT技术博客 - 云计算大数据-技术分享以获得最新内容。

已经有 0 条群众意见