天天看點

郵箱資料庫增長統計

     在日常管理的時候,經常會遇到這樣的情況,上司想知道每個郵箱每天發送了多少封郵件?我們的伺服器一天或者一個月發送多少郵件?又或者是伺服器一天有多少發送失敗的郵件,發往某一個位址有多少數量?近期平均郵箱資料庫增長量是多少?這些部分可用Exchange圖形實作部分不能實作,或者需要借助第三方工具來實作。統計收發郵件數量等這些有很部落格裡面已經寫的很詳細了,在這裡重複介紹,下面我重點介紹如何統計郵箱資料庫增長情況。

統計郵箱資料庫伺服器增長情況可以用這個腳本來實作:

# From date must be a MONDAY

$From = Get-Date "23/05/2011"

$To = $From.AddDays(7)

[Int64] $intTotalSentSize = $intTotalSent = 0

[Int64] $intTotalRecSize = $intTotalRec = 0

Write-Host "From, To, # Sent, Size Sent, # Received, Size Received"

Do

{

    Get-TransportServer | Get-MessageTrackingLog -ResultSize Unlimited -Start $From -End $To | ForEach {

        # Sent E-mails

        If ($_.EventId -eq "RECEIVE" -and $_.Source -eq "STOREDRIVER")

        {

            $intTotalSentSize += $_.TotalBytes

            $intTotalSent++

        }

        # Received E-mails

        If ($_.EventId -eq "DELIVER")

            $intTotalRecSize += $_.TotalBytes

            $intTotalRec++

    }

    # Convert the size to MB and round it

    $intTotalSentSize = [Math]::Round($intTotalSentSize/1MB, 0)

    $intTotalRecSize = [Math]::Round($intTotalRecSize/1MB, 0)

    # Create a TempTo variable as when we are searching the logs we search up to the next day, but we want to print the day before

    $FromSmall = $From.ToShortDateString()

    $TempTo = ($To.AddDays(-1)).ToShortDateString()

    Write-Host "$FromSmall, $TempTo, $intTotalSent, $intTotalSentSize, $intTotalRec, $intTotalRecSize"

    # Reset the variables to do another search

    $From = $From.AddDays(7)

    $To = $From.AddDays(7)

    $intTotalSentSize = $intTotalSent = 0

    $intTotalRecSize = $intTotalRec = 0

}

While ($To -lt (Get-Date))

此腳本可以按周統計每個周的接收和發送的郵件的總的大小,進而推測出每天郵件收發資料量的大小

這個腳本執行起來較簡單,可以直接執行,時間可以根據需要更改

郵箱資料庫增長統計

使用方法,

1、 将腳本檔案“TotalEmailsSentReceivedPerWeek.ps1”複制到 郵箱資料庫伺服器C:\windows\system32檔案夾下;

2、 以管理者身份打開Exchange指令行管理工具,連接配接到伺服器後,輸入TotalEmailsSentReceivedPerWeek.ps1,執行即可。

效果如下,依次顯示起始時間,結束時間,發送,發送大小,接收,接收大小。

繼續閱讀