Zabbix server template for Exchange Server
Zabbix Share page: https://share.zabbix.com/cat-app/mail-servers/exchange-server
Have fun and rate it on Zabbix Share page, if it helps you. =)
zbx-exchange provides possibility to make Low Level Discovery of Microsoft Exchange Server databases and retrieve their parameters with perfomance counters. Attached template works only with Zabbix 4.2 and above.
Latest stable version: 0.1
- PowerShell v3.0+
- Exchange instrumentation installed (Microsoft.Exchange.Management.PowerShell.SnapIn)
Low Level Discovery:
- Databases
-ExchVersion (positional: 0)
Takes one of next values: 2010, 2013, 2016, 2019. Determines name of PSSnapin to import (Default: 2016).
-Pretty
Print output in human-readable format.
-version
Print script version and exit.
- Database discovery for Exchange Server 2016:
PS C:\> .\zbx-exchange.ps1
{"data":[{"{#DB.NAME}":"DB1","{#DB.LCNAME}":"db1","{#DB.EDBPATH}":"D:\\Databases\\DB 1.edb"}, ... ]}
PS C:\> .\zbx-exchange.ps1 -ExchVersion 2016
{"data":[{"{#DB.NAME}":"DB1","{#DB.LCNAME}":"db1","{#DB.EDBPATH}":"D:\\Databases\\DB 1.edb"}, ... ]}
- Database discovery for Exchange Server 2010:
PS C:\> .\zbx-exchange.ps1 -ExchVersion 2010
{"data":[{"{#DB.NAME}":"DB1","{#DB.LCNAME}":"db1","{#DB.EDBPATH}":"D:\\Databases\\DB 1.edb"}, ... ]}
I'm using next foldes structure for my userparameters and scripts:
- "C:\Program Files\Zabbix Agent\scripts" for scripts
- "C:\Program Files\Zabbix Agent\userparameters" for additional config files included to main Zabbix Agent config with "Include" option.
So, based on it, installation will be contents next steps: - Copy zbx-exchange.conf to the userparameters dir;
- Copy zbx-exchange.ps1 to the scripts dir;
- Increase Timeout in Zabbix Agent config file at least to 10 seconds;
- Restart Zabbix Agent Service;
In addition I've attached preconfigured Zabbix Template for version 4.2, so you can use it in your environment.
The template contains two LLD rules:
- Exchange Database Discovery
- Exchange Services Discovery
The first one uses zbx-exchange.ps1 script and the second one - built-in 'service.discovery', so, if you already has LLD for services, you must remove one of them.
All perfomance counters thresholds has been taken from this page:
https://docs.microsoft.com/ru-ru/exchange/exchange-2013-performance-counters-exchange-2013-help
Tested with:
Exchange Server 2016 on Windows Server 2016.