LogicMonitor’s Cisco Unified Call Manager (CUCM) API monitoring package leverages Cisco’s Performance Monitoring API, also referred to as PerfMon API, to monitor and alert on the status of services, resources, calls, and other high-level metrics.
As of the January 2021, LogicMonitor’s CUCM monitoring package is known to be compatible with:
- All known versions with support for perfmonservice2 endpoints.
- SNMP or WMI Configuration: At least one of these must be configured for the detection of system.sysname property to apply to the device.
- For SNMP, port 161 must be allowed on the firewall for the system.sysname property used in this module.
Add Resources Into Monitoring
Add your Call Manager host into monitoring. For more information on adding resources into monitoring, see Adding Devices. Credentials with sufficient permissions to access the PerfMon API must be added as properties to this host in order for these modules to apply and monitoring to start (details in the following two sections).
LogicMonitor must provide the appropriate credentials in order to successfully access the Call Manager resource’s data. These credentials are stored as properties on the resource in LogicMonitor and must provide full read access to the PerfMon API.
Assign Properties to Resources
The following custom properties must be set on the CUCM resource within LogicMonitor. For more information on setting properties, see Resource and Instance Properties.
|cucm.api.user||PerfMon REST API username|
|cucm.api.pass||PerfMon REST API password|
|cucm.api.port||The TCP port on which CUCM exposes the PerfMon API. By default, LogicMonitor attempts access on port 8443 but this property can be used to configure access via a different port. |
For SNMP, port 161 must be allowed on the firewall for the system.sysname property used in this module.
|snmp.community||Required by collector to set the system.sysname auto property on the device, which is a requirement for addCategory_CiscoCUCMAPI PropertySource and subsequent DataSource modules.|
|snmp.*||Other optional SNMP properties that might be required. Fore more information, see Defining Authentication Credentials.|
From the LogicMonitor public repository, import all CUCM API LogicModules, which are listed in the LogicModules in Package section of this support article. If these LogicModules are already present, ensure you have the most recent versions.
Once the LogicModules are imported (assuming all previous setup requirements have been met), data collection will automatically commence.
If the LogicModules fail to apply, the initial LogicModule to check is the addCategory_CiscoCUCMAPI PropertySource as it tests and verifies access before other LogicModules apply. Look for errors in the debug output to diagnose. The most common errors are incorrect credentials or permissions.
LogicModules in Package
LogicMonitor’s package for CUCM API monitoring consists of the following LogicModules. For full coverage, please ensure that all of these LogicModules are imported into your LogicMonitor platform.
|addCategory_CiscoCUCMAPI||PropertySource||Identifies if the host is a CUCM device with PerfMon API access. Assigns a value of “CiscoCUCMAPI” to the system.categories property of the host if valid.|
|Cisco_CUCM_LBM||DataSource||Monitors the Location Bandwidth Manager.|
|Cisco_CUCM_MTPDeviceStatistics||DataSource||Provides resource information for Media Termination Point devices.|
|Cisco_CUCM_Replication||DataSource||Provides information on replicates and their current state.|
|Cisco_CUCM_Services||DataSource||Monitors control center services.|
|Cisco_CUCM_SIP||DataSource||Provides SIP information for audio and video calls.|
|Cisco_CUCM_SystemPerformance||DataSource||Monitors various global system performance metrics.|
When setting static datapoint thresholds on the various metrics tracked by this package’s DataSources, LogicMonitor follows the technology owner’s best practice KPI recommendations. If needed, adjust these predefined thresholds to meet the unique needs of your environment. For more information on tuning datapoint thresholds, see Tuning Static Thresholds for Datapoints.