Hi,
I've got two edge transport servers which are the last hop before leaving our environment. As they're the last hop if there is any build up in our queues it is observed there. These server reside in our DMZ and have firewall rules dedicated to allowing our solarwinds server to monitor their presence in the DMZ along with MSRPC and WMI communication.
However, I finding that no matter what monitor that I've found on the web I cannot retrieve the queue length from these servers. An example of the templates that I have found is below.
Exchange 2013 Mailbox Role Services and Counters (Basic)
I also cannot get appinsight to monitor the server as I get the attached error. I monitor the connection through our Firewall and see that it is making the connection but the edge server simply doesn't have the setup which AppInsight is looking for.
I've confirmed that WMI is allowed through on the server and I have local admin credentials. I also confirmed that I can query WMI the queue lengths with
$MessagesQueued = get-wmiobject -ComputerName $s -query “select MessagesQueuedForDelivery from Win32_PerfFormattedData_MSExchangeTransportQueues_MSExchangeTransportQueues”
$MessagesQueued.MessagesQueuedForDelivery
Powershell remote commands using Invoke-Command has also been proven to work but I've not found a template that is using Powershell to monitor. I confirmed that our firewall is protecting the server from malice external attacks and have since disabled PSRemoting and the local windows firewall rule:
You can do it using Powershell Remoting
- First make sure that Edge Server is configured to receive remote WSMan Connections, to do so:
From Powershell on the Edge Server run:
- Enable-PSRemoting (This will prepare the computer to receive Remote WSMan Connections)
- set-NetFirewallRule -Name WINRM-HTTP-In-TCP-PUBLIC -RemoteAddress Any (This will configure the firewall)
On Computer from where you want to connect:
- Set-Item WSMan:\localhost\Client\TrustedHosts * (this will be needed to connect to non-domain joined computers)
- $ses = New-PSSession -ComputerName <Edge fqdn> -Authentication Negotiate -Credential (get-credential -message 'Credential for Edge Server')
- Invoke-Command -Session $ses -scriptblock { PSSnapin Microsoft.Exchange.Management.Powershell.E2010 }
Invoke-Command -Session $ses -scriptblock { get-queue }
These commands (WMI and Powershell)have been issued from the Solarwinds server which is polling the Exchange Edge Servers but I still can't seem to find a template that will monitor these servers.
Can someone recommend a template or am I doing something wrong with the ones which are currenly enabled?
Thanks