Solved

Modifying powershell script to calculate the white space on Exchange Server 2010 using the script for Exchange Server 2007 ?

Posted on 2014-11-26
6
330 Views
Last Modified: 2014-11-27
Folks,

I need your help and suggestion in modifying the below Powershell script so that it can be used against Exchange Server 2010:

function Get-ExchangeWhiteSpace {
      param(
        $ComputerName = $(throw "ComputerName cannot be empty.")
      )

      # Convert Dates to WMI CIM dates
            $tc = [System.Management.ManagementDateTimeconverter]
            $Start = $tc::ToDmtfDateTime( (Get-Date).AddDays(-10).Date )
            $End = $tc::ToDmtfDateTime( (Get-Date).Date)

      # Create two calculated properties for InsertionStrings values
            $DB = @{Name="DB";Expression={$_.InsertionStrings[1]}}
            $FreeMB = @{Name="FreeMB";Expression={[int]$_.InsertionStrings[0]}}

      Get-WMIObject Win32_NTLogEvent -ComputerName $ComputerName -Filter "LogFile='Application' AND EventCode=1221 AND TimeWritten>='$Start' AND TimeWritten<='$End'" |
        Select-Object ComputerName,$DB,$FreeMB, @{Name="TimeWritten"; Expression = {$_.ConvertToDateTime($_.TimeWritten )}} |
              Group-Object ComputerName, DB |
              % { $_.Group | Sort-Object TimeWritten -Descending | select -first 1 } | Sort-Object FreeMB -Descending
}

Get-ExchangeWhiteSpace -ComputerName PRODMAILBOX02-VM | ft -AutoSize

The above script works with no issues in Exchange Server 2007 but not in 2010.

Thanks,
0
Comment
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
6 Comments
 
LVL 16

Assisted Solution

by:Rajitha Chimmani
Rajitha Chimmani earned 250 total points
ID: 40468391
With Exchange 2010 whitespace is not calculated using any events. Its extracted from a command itself..just a single command.

Get-MailboxServer servername | Get-MailboxDatabase | ft Name,AvailableNewMailboxSpace
0
 
LVL 8

Author Comment

by:Senior IT System Engineer
ID: 40468398
Thanks Rajitha,

I'm not sure what happened to my Exchange Server 2010, but somehow by executing the Full List option as per below:

Get-MailboxServer | Get-MailboxDatabase | fl

Open in new window


The following attributes value is empty:

DatabaseSize                                 : 
AvailableNewMailboxSpace                     : 

Open in new window

0
 
LVL 7

Expert Comment

by:jimmithakkar
ID: 40468439
Hi,

exchange 2010 sp1 it self bug while checking AvailableNewMailboxSpace on more database through EMS power shell,
Need to upgrade with rollup 6 or SP2


Thanks
0
Office 365 Training for IT Pros

Learn how to provision tenants, synchronize on-premise Active Directory, implement Single Sign-On, customize Office deployment, and protect your organization with eDiscovery and DLP policies.  Only from Platform Scholar.

 
LVL 8

Author Comment

by:Senior IT System Engineer
ID: 40468442
my exchange server version is below:

Exchange Server 2010 Version: 14.02.0387.000 (Build 247.5)

is that affected ?
0
 
LVL 31

Accepted Solution

by:
Gareth Gudger earned 250 total points
ID: 40468503
Hey ITSystemEngineer,

You are on SP2. And I just confirmed this works on SP1 as well in my lab.

Try the following command. Its missing the -Status switch.

Get-MailboxServer servername | Get-MailboxDatabase -Status | ft Name,AvailableNewMailboxSpace
0
 
LVL 8

Author Closing Comment

by:Senior IT System Engineer
ID: 40469806
Thanks !
I didn't know if the new Exchange Server 2010 requires the Server name or additional parameter "-Status" to populate the attributes.
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Here's a look at newsworthy articles and community happenings during the last month.
In this post we will be converting StringData saved within a text file into a hash table. This can be further used in a PowerShell script for replacing settings that are dynamic in nature from environment to environment.
This video discusses moving either the default database or any database to a new volume.
Sometimes it takes a new vantage point, apart from our everyday security practices, to truly see our Active Directory (AD) vulnerabilities. We get used to implementing the same techniques and checking the same areas for a breach. This pattern can re…
Suggested Courses

617 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question