Documentation forServer & Application Monitor
Monitoring your applications and environment is a key capability of Hybrid Cloud Observability and is also available in a standalone module, Server & Application Monitor (SAM). Hybrid Cloud Observability and SAM are built on the self-hosted SolarWinds Platform.

Exchange 2007 — 2010 Statistics with PowerShell

This SAM application monitor template tracks the statistics of Exchange mailboxes and the mailbox databases of Exchange 2007 — 2010 servers with the Mailbox role using PowerShell scripts.

Prerequisites

  • PowerShell 5.1 and Exchange Management Tools 2007 or 2010 are installed on the target server.
  • The Exchange server has an Exchange Mailbox role.
  • The SolarWinds Platform server and the Exchange server are in the same domain.

Credentials

Use an Exchange Administrator (Organization Manager) account with at least view-only permissions.

Component monitors

Before using this template, expand Advanced options to check the Platform setting — 32-bit or 64-bit.

Total mail size (MB)

Returns the total mail size on the server in MB.

You must specify the correct arguments in the Script Arguments field of the corresponding PowerShell Monitor. If you fail to do this, the counter will return with an error of "Undefined" status. Put arguments in the following order:

Exchange_server_name,exchange_version,domain_controller_name

where:

  • Exchange_server_name – hostname or FQDN of target Exchange server;
  • exchange_version – version of target Exchange server (2007 or 2010);
  • domain_controller_name – hostname or FQDN of domain controller;

Example:

xchng2010.domain.com,2010,dc.domain.com

To see the names of your Exchange servers, run the following command in the Exchange Management Shell: Get-ExchangeServer

Total mailboxes

Returns the total number of mailboxes on the server.

You must specify the correct arguments in the Script Arguments field of the corresponding PowerShell Monitor. If you fail to do this, the counter will return with an error of "Undefined" status. Put arguments in the following order:

Exchange_server_name,exchange_version,domain_controller_name

where:

  • Exchange_server_name – hostname or FQDN of target Exchange server;
  • exchange_version – version of target Exchange server (2007 or 2010);
  • domain_controller_name – hostname or FQDN of domain controller;

Example:

xchng2010.domain.com,2010,dc.domain.com

To see the names of your Exchange servers, run the following command in the Exchange Management Shell: Get-ExchangeServer

Total items in mailboxes

Returns the total number of emails on the server.

You must specify the correct arguments in the Script Arguments field of the corresponding PowerShell Monitor. If you fail to do this, the counter will return with an error of "Undefined" status. Put arguments in the following order:

Exchange_server_name,exchange_version,domain_controller_name

where:

  • Exchange_server_name – hostname or FQDN of target Exchange server;
  • exchange_version – version of target Exchange server (2007 or 2010);
  • domain_controller_name – hostname or FQDN of domain controller;

Example:

xchng2010.domain.com,2010,dc.domain.com

To see the names of your Exchange servers, run the following command in the Exchange Management Shell: Get-ExchangeServer

Total size of specified database file (MB)

Returns the total size of all mailboxes in the specified database in MB.

You must specify the correct arguments in the Script Arguments field of the corresponding PowerShell Monitor. If you fail to do this, the counter will return with an error of "Undefined" status. Put arguments in the following order:

Exchange_server_name,exchange_version,domain_controller_name,mailbox_database

where:

  • Exchange_server_name – hostname or FQDN of target Exchange server;
  • exchange_version – version of target Exchange server (2007 or 2010);
  • domain_controller_name – hostname or FQDN of domain controller;
  • mailbox_database – target mailbox database name;

Example:

xchng2010.domain.com,2010,dc.domain.com,Mailbox Database

To see the names of your mailbox databases, run the following command in the Exchange Management Shell: Get-MailboxDatabase

Total mailboxes in specified database file

Returns the number of mailboxes in the specified database.

You must specify the correct arguments in the Script Arguments field of the corresponding PowerShell Monitor. If you fail to do this, the counter will return with an error of "Undefined" status. Put arguments in the following order:

Exchange_server_name,exchange_version,domain_controller_name,mailbox_database

where:

  • Exchange_server_name – hostname or FQDN of target Exchange server;
  • exchange_version – version of target Exchange server (2007 or 2010);
  • domain_controller_name – hostname or FQDN of domain controller;
  • mailbox_database – target mailbox database name;

Example:

xchng2010.domain.com,2010,dc.domain.com,Mailbox Database

To see the names of your mailbox databases, run the following command in the Exchange Management Shell: Get-MailboxDatabase

Items in mailbox of specified user

Returns the number of emails for the specified user.

You must specify the correct arguments in the Script Arguments field of the corresponding PowerShell Monitor. If you fail to do this, the counter will return with an error of "Undefined" status. Put arguments in the following order:

Exchange_server_name,exchange_version,domain_controller_name,username

where:

  • Exchange_server_name – hostname or FQDN of target Exchange server;
  • exchange_version – version of target Exchange server (2007 or 2010);
  • domain_controller_name – hostname or FQDN of domain controller;
  • username – target username;

Example:

xchng2010.domain.com,2010,dc.domain.com,john

To see the names of your mailbox databases, run the following command in the Exchange Management Shell: Get-Mailbox

Mailbox size of specified user (MB)

Returns the mailbox size for the specified user in MB.

You must specify the correct arguments in the Script Arguments field of the corresponding PowerShell Monitor. If you fail to do this, the counter will return with an error of "Undefined" status. Put arguments in the following order:

Exchange_server_name,exchange_version,domain_controller_name,username

where:

  • Exchange_server_name – hostname or FQDN of target Exchange server;
  • exchange_version – version of target Exchange server (2007 or 2010);
  • domain_controller_name – hostname or FQDN of domain controller;
  • username – target username;

Example:

xchng2010.domain.com,2010,dc.domain.com,john

To see the names of your mailbox databases, run the following command in the Exchange Management Shell: Get-Mailbox

Average items per mailbox

Returns the average number of emails per mailbox based on a mathematical count.

You must specify the correct arguments in the Script Arguments field of the corresponding PowerShell Monitor. If you fail to do this, the counter will return with an error of "Undefined" status. Put arguments in the following order:

Exchange_server_name,exchange_version,domain_controller_name

where:

  • Exchange_server_name – hostname or FQDN of target Exchange server;
  • exchange_version – version of target Exchange server (2007 or 2010);
  • domain_controller_name – hostname or FQDN of domain controller;

Example:

xchng2010.domain.com,2010,dc.domain.com

To see the names of your Exchange servers, run the following command in the Exchange Management Shell: Get-ExchangeServer

Size of largest user mailbox (MB)

Returns the size of the largest mailbox. You can see the user name for the assigned mailbox in the message field.

You must specify the correct arguments in the Script Arguments field of the corresponding PowerShell Monitor. If you fail to do this, the counter will return with an error of "Undefined" status. Put arguments in the following order:

Exchange_server_name,exchange_version,domain_controller_name

where:

  • Exchange_server_name – hostname or FQDN of target Exchange server;
  • exchange_version – version of target Exchange server (2007 or 2010);
  • domain_controller_name – hostname or FQDN of domain controller;

Example:

xchng2010.domain.com,2010,dc.domain.com

To see the names of your Exchange servers, run the following command in the Exchange Management Shell: Get-ExchangeServer

Dismounted mailbox databases

Returns the number of dismounted mailbox databases. The last mailbox database to be dismounted is displayed in the message field.

The name of the last dismounted database is taken from the list of databases and is not based on the actual time the database was dismounted. There is no database attribute that records the time it was dismounted.

You must specify the correct arguments in the Script Arguments field of the corresponding PowerShell Monitor. If you fail to do this, the counter will return with an error of "Undefined" status. Put arguments in the following order:

Exchange_server_name,exchange_version,domain_controller_name

where:

  • Exchange_server_name – hostname or FQDN of target Exchange server;
  • exchange_version – version of target Exchange server (2007 or 2010);
  • domain_controller_name – hostname or FQDN of domain controller;

Example:

xchng2010.domain.com,2010,dc.domain.com

To see the names of your Exchange servers, run the following command in the Exchange Management Shell: Get-ExchangeServer

Mounted mailbox databases

Returns the number of mounted mailbox databases.

You must specify the correct arguments in the Script Arguments field of the corresponding PowerShell Monitor. If you fail to do this, the counter will return with an error of "Undefined" status. Put arguments in the following order:

Exchange_server_name,exchange_version,domain_controller_name

where:

  • Exchange_server_name – hostname or FQDN of target Exchange server;
  • exchange_version – version of target Exchange server (2007 or 2010);
  • domain_controller_name – hostname or FQDN of domain controller;

Example:

xchng2010.domain.com,2010,dc.domain.com

To see the names of your Exchange servers, run the following command in the Exchange Management Shell: Get-ExchangeServer