Exchange 2003 and Windows Powershell

I just have to share this with you, as I was quite impressed by how quick I knocked this script up.  Basically I wanted to see how much email was queued up on my Exchange 2003 servers.  I had a feeling that a WMI object existed so I ran scriptomatic on a server a behold under rootMicrosoftExchangeV2 was Exchange_SMTPQueue.

So the rest was easy.  Using the built in Powershell command Get-WmiObject I was able to query an Exchange 2003 server for it’s SMTP queues and message count:

Get-WmiObject -namespace “rootMicrosoftExchangeV2” Exchange_SMTPQueue -computername

So now all I needed to do was give it a list of servers to run this against.  I came up with this.  Now c:ps_PublicFolderServerList.txt is a CSV file with two columns, ServerName and Version.  Version can be Exchange2000, Exchange2003 or Exchange2007

$Servers = Import-Csv “c:ps_PublicFolderServerList.txt”

$Server = $Servers | Sort-Object $_.ServerName
$AllQ = @()
$SrvList = @()
ForEach ($Server in $Servers)
{
    If ($Server.version -eq “Exchange2003”)
    {
        $Srv = $Server.ServerName
        Write-host “Checking .. $Srv”
        $AllQ += Get-WmiObject -namespace “rootMicrosoftExchangeV2” Exchange_SMTPQueue -computername $Srv | where {$_.MessageCount -gt 0} | select VirtualMachine, QueueName, MessageCount
    }
}
$AllQ = $AllQ | Sort-Object $_.MessageCount

ForEach ($q in $AllQ)
{

    Write-Host $q.VirtualMachine -NonewLine
    Write-host “: Q Name=” -NonewLine
    Write-Host $q.QueueName -NoNewLine
    Write-host “: ” -NonewLine
    Write-host $q.MessageCount
}

Now if you have a mixed 2003/2007 environment, you can use the exchange snapin to dynamically get the Exchange 2003 servers.  That looks like this, you can see the difference at the top.  Now all I need is this in a GUI (I done this too and will blog later)

$Server = $Servers | Sort-Object $_.ServerName
$AllQ = @()
$SrvList = @()

$Servers = Get-ExchangeServer | where {$_.IsExchange2007OrLater -eq $False}
$Servers = $Servers | Sort-Object $_.Name
ForEach ($Server in $Servers)
{
    $tmpMSXVer = $Server.AdminDisplayVersion.ToString()   
    IF ($tmpMSXVer.IndexOf(“6.5 (“) -ge 0)
    {
        $Srv = $Server.Name

        Write-host “Checking .. $Srv”
        $AllQ += Get-WmiObject -namespace “rootMicrosoftExchangeV2” Exchange_SMTPQueue -computername $Srv | where {$_.MessageCount -gt 0} | select VirtualMachine, QueueName, MessageCount
    }
}

$AllQ = $AllQ | Sort-Object $_.MessageCount

ForEach ($q in $AllQ)
{

    Write-Host $q.VirtualMachine -NonewLine
    Write-host “: Q Name=” -NonewLine
    Write-Host $q.QueueName -NoNewLine
    Write-host “: ” -NonewLine
    Write-host $q.MessageCount
}

Post using Windows Live Writer via my HTC Shift

Microsoft WebCast Change Notice

This arrived in my inbox

Event Name: TechNet Webcast: Microsoft Exchange Server 2007 Storage Deep Dive (Level 300)

Event ID: 1032379718
 
We have rescheduled this event for the following date:
 
Date: 07/18/2008
Start Time: 08:00 AM Pacific
End Time: 09:30 AM Pacific
 
You are still registered for this event and will continue receiving further notifications for the live webcast. If you would like to cancel your registration, please access My Events at https://msevents.microsoft.com/cui/myevents.aspx?culture=en-US
 
*Please Note: If you used the “Add to Outlook” feature when you registered for the webcast, please make sure you delete the expired event from your calendar.
 
Please click the following link up to 30 minutes prior to the event to join this webcast:
https://msevents.microsoft.com/cui/r.aspx?t=4&c=en-us&r=1297817456
 

Symantec Enterprise Vault 6.0 Service Pack 6 (SP6)

Just found this on the EV blog (https://forums.symantec.com/syment/blog/article?blog.id=EV_team_blog&message.id=65#M65)

Shame I can’t get to the FTP link and give you more info.  Once I do i will be back

There are also Service Pack 4 (SP4) for Symantec Compliance Accelerator 6.0  and Service Pack 3 (SP3) for Symantec Discovery Accelerator 6.0

http://seer.entsupport.symantec.com/docs/297648.htm

You can get the binaries from here: http://seer.entsupport.symantec.com/docs/305216.htm

 

Microsoft Exchange Monitoring service failed to start following installation of Exchange 2007 or Service Pack or Rollup

Thanks to Ari for this nugget ;-)

The following events are visible:
Event Source: Service Control Manager
Event Category: None
Event ID: 7000
Description:
The Microsoft Exchange Monitoring service failed to start due to the following error:
The service did not respond to the start or control request in a timely fashion. 

Event Type: Error
Event Source: Service Control Manager
Event Category: None
Event ID: 7009
Description:
Timeout (30000 milliseconds) waiting for the Microsoft Exchange Monitoring service to connect.

Reference: Exchange 2007 managed code services do not start after you install an update rollup for Exchange 2007 (KB944752)

RESOLUTION To resolve this problem, verify that the computer can reach the following Microsoft Web site to download the CRL: http://crl.microsoft.com/pki/crl/products/CSPCA.crl Configure server to uses a proxy server for HTTP and for HTTPS, you must configure the proxy server so that HTTP-enabled CRL validation works. Additionally, make sure that the proxy settings are configured correctly for the Exchange Server services to access the Internet.

The simplest way to configure WinHTTP is to use ProxyCfg.exe. ProxyCfg.exe is a command-line tool that is included in the %System32% directory on all Windows Server 2003-based computers. You can use ProxyCfg.exe to set WinHTTP configurations and to view WinHTTP configurations. For more information about how to use the Proxycfg.exe tool to modify WinHTTP proxy settings, click the following article number to view the article in the Microsoft Knowledge Base: 936707

FIX: A .NET Framework 2.0 managed application that has an Authenticode signature takes longer than usual to start Microsoft Knowledge Base article 841641 describes how to configure a specific proxy setting if you are running services as a noninteractive account. For more information, click the following article number to view the article in the Microsoft Knowledge Base: 841641 IIS returns a “403.13 Client Certificate Revoked” error message after you install MS04-011 because of Wininet proxy settings.