When GSX Monitor is scanning a BES server, it may take some time to retrieve all of the user statistics. Depending on how many users are registered on the server, gathering statistics can end up in a time-out while waiting for a large amount of data to be returned. The bottleneck is the Simple Network Management Protocol (SNMP) as it cannot transmit the amount of data requested before the scan is timed out.
This article describes a workaround to disable collecting some of the user details to reduce the amount of data being transmitted over SNMP.
Symptoms
- BES scanning is taking a very long time to scan user portions, or is timing out.
- Error messages observed in GSXScanEngine.dbg:
00001; 2010.10.07 15:55:46 395; Time-out reached, aborting Job
00020; 2010.10.07 15:55:46 395; [ERROR] Error while getting BES MIB Users informations: Thread was being aborted.
00020; 2010.10.07 15:55:46 395; Error in ScanUsers: Thread was being aborted.
00020; 2010.10.07 15:55:46 395; Scan of BES Users completed
Possible Workaround
GSX Monitor retrieves information about the health and state of a BES server in multiple ways. As well as retrieving data from the SQL database, GSX Monitor is also reading the BES Management Information Base (MIB). Getting information from the MIB is done using SNMP which is a relatively slow protocol compared to TCP/IP. This means that the SNMP connection can time out while waiting for a large volume of data to be returned.
A busy server may have 1000 users, each user returning multiple statistics. This is captured every scan cycle and collected by GSX Monitor:
Each user can also have associated error messages which can double the amount of information per user collected. This can be a large amount of data, difficult to quickly request and collect. Often this is noticed after more users are registered in batches. It is around 900 users on a BES server that we start to notice an impact on the SNMP service and see the time-outs appearing.
Since GSX Monitor version 9.3.4, a new parameter has been introduced to prevent all of the user information from being retrieved from the SNMP MIB during the scan.
To adjust the SNMP scan settings for BES:
- Shut down GSX Monitor including all background processes.
- Navigate to the GSX Monitor\Data\ folder.
- Edit the GSXScanEngine.ini file.
- Locate the [OPTIONS] section:
- If the BESOPTIONS line already exists, add the following at the end of the line: ;DISABLEUSERMIBSTAT, and make sure all entries are separated by a semicolon.
- If the BESOPTIONS line does not exist, add BESOPTIONS=DISABLEUSERMIBSTAT anywhere in the [OPTIONS] section.
- Save and Close the file.
- Restart GSX Monitor including the Windows Service to load changes.
Using this option will reduce the amount of statistics collected by GSX Monitor for each user. This will not impact on any alerting as the parameters below are not used to trigger any alert or used as a performance counter. They are only collected during the live scan. This level of user detail is not passed to GSX Analyzer even without the BESOPTIONS line added.
User statistics that will no longer be retrieved:
- Last User error message
- Last User error date
- Is user device in cradle
- Is redirection enabled for this user
- Is this user fully configured
- Is this user enabled
- Number of user's more requests
- Number of msg replied from the user's device
- Last time in cradle
- Date/time of the last received message
- Date/time of the last encryption
- Average kb forwarded from the device
- Average kb replied from the device
- Average latency
- Is OTAC enabled
- Number of calendar events sent
- Number of calendar events received
- Is Wireless Reconciliation enabled
- Number of Wireless Reconciliation events sent
- Number of Wireless Reconciliation events received
- SMTP user address
- Mail server name
- Number of messages forwarded from the device
Other user statistics based on SQL queries will still be available.