Het is niet geweldig gedocumenteerd maar hier de batch en het powershell script:
@echo off
h:
cd\
cd psscripts
ren mailboxinfo.html mailboxinfo1.html
C:\WINDOWS\system32\windowspowershell\v1.0\powershell.exe -PSConsoleFile "C:\Program Files\Microsoft\Exchange Server\bin\exshell.psc1" -noexit -command ". 'h:\psscripts\mailboxreport.ps1'"
exit
start iexplore "h:\psscripts\mailboxinfo.html"
exit
# S.Salfischberger 09-03-2009
# Hiermee genereer je een rapport per Exchange database
# in HTML formaat van de mailboxen groter dan 200MB en
# dat wordt dan verstuurd naar het aangegeven email adres.
function OutputHTML
{
param([string]$Naam, [string]$Database)
$BodyStyle = Get-Content -Path "$Locatie\salfischbergerit.css"
$BodyStyle = ""
$BodyStyle += "
#$BodyStyle = $BodyStyle + ""
$MBXOutput = Get-MailboxStatistics -Database "$MailServer\$Database" |where {$_.TotalItemSize –gt 200MB} | sort TotalItemSize -descending | ConvertTo-HTML DisplayName,ItemCount,@{label="Mailbox grootte (MB)";expression={$_.TotalItemSize.Value.ToMB()}} -Title "Mailbox Overview" -Head $BodyStyle$MBXOutput = $MBXOutput -replace "","
$Naam mailbox rapportage $($now) "
$MBXOutput = $MBXOutput -replace "","Weergave: mailboxen > 200MB"
$MBXOutput | Out-File $Locatie\MBReportDB_$Naam.html
$global:att += new-object Net.Mail.Attachment("$Locatie\MBReportDB_$Naam.html")
$msg.Attachments.Add($global:att[$global:att.length - 1])
}
$Now=Get-Date
$global:att = @()
$msg = new-object Net.Mail.MailMessage
$smtp = new-object Net.Mail.SmtpClient($MailServer)
$msg.Body = "..."
####### AANPASBAAR #######
$MailServer = "EX01"
$msg.From = s.salfischberger@.nl
$msg.To.Add(s.salfischberger@.nl)
$msg.Subject = "Mailbox Report"
$Locatie = "H:\PSScripts"
OutputHTML "Spam" "Spam Database"
OutputHTML "Mailbox1" "Mailbox1 Database"
OutputHTML "Mailbox2" "Mailbox2 Database"
####### AANPASBAAR #######
$smtp.Send($msg)
for($x = 0; $x -lt $global:att.length; $x++) {
$global:att[$x].Dispose()
}
Met de komst van Exchange 2010 kwam ik erachter dat bovenstaand script niet meer werkt. Met een paar kleine aanpassingen kun je het echter zo weer werkend krijgen.
Ik heb ondertussen ook een prachtig ander script gevonden dat een overzicht geeft van je Exchange omgeving:
Zie onderstaand blog:
http://www.stevieg.org/2011/06/exchange-environment-report/
Geen opmerkingen:
Een reactie posten