Occasionally ECC will stop logging detailed call events to the CCIR database. The CCIR database will be running, and reporting tools like Brightmetrics will be able to connect to it, but no new data will show up, as if no calls are coming through ECC.
When the Brightmetrics agent attempts to update the ECC group data, it will check to make sure that the ECC summary tables and the CCIR detail events agree on whether there is no call activity. If the ECC summary tables indicate that calls are coming through ECC, but there is no corresponding data in the CCIR database, the "Group Data" data source will fail to update. So if you get an error indicator that 1 data source in the ECC data set is not updating, and that data source is the group data, it is very likely that ECC has stopped logging to CCIR. You can check with Brightmetrics support to confirm if in doubt.
If that happens, these are the things you can try, in order of severity, to get ECC logging to CCIR again. If one of them works, you don't need to do anything else.
1) Try clicking pause/unpause in the CCIR section of Contact Center Director.
2) Kill the "c2g_process.exe" process on the ECC server using Windows Task Manager.
3) Reboot the CCIR server.
4) Reboot the ECC server (or just restart the ECC services on the ECC server).
The first and second options will not have any impact on the system. In the first case, Pause / Unpause is a supported operation intended for when expected maintenance is being performed on the CCIR server. In normal circumstances Pause causes ECC to disconnect from CCIR and buffer the call events it would send, and Unpause re-establishes the connection and sends the buffered call events. It does not often resolve the problem documented here, but is the safest option and therefore the first recommendation.
In the second case killing the "c2g_process.exe" process via Task Manager causes the ECC process supervisor to automatically restart it, which does not have any impact on other ECC service processes, and the fresh instance of c2g_process.exe will establish connections to CCIR. This is most often the step that resolves the lost connection problem.
The third option will not have any impact beyond the CCIR server, so if the server is dedicated to CCIR rebooting it will not have any impact. If it is running any services additional to CCIR, the impact should be evaluated accordingly. If CCIR is installed locally on the ECC server itself (which is no longer supported by ShoreTel), this option is redundant with the fourth.
The fourth option has the highest impact since ECC will be temporarily unavailable while the server or services restart.
If ECC's diagnostics show a red light for CCIR, you can use that to determine if it is working again, but often it shows a green light even though it isn't working. The Brightmetrics agent will keep retrying every 15 minutes or so, so you can wait after each step to see if it starts updating. Alternatively if you have MySQL database utilities you can check to see if new data is appearing in the "events" table of the "c2g" database on the CCIR server.
Unfortunately when such a situation occurs, there is no way to recover the lost window of time. The only place that ECC logs detailed call events is CCIR, so if it fails to create the log of activity as it happens, it does not exist anywhere else from which to recover it.
**ECC DOES support redundant CCIR servers, in which case if ECC can not log to the primary CCIR server it will log to the secondary CCIR server instead. When the primary server comes back online the data logged to the secondary in the interim will be replicated back to the primary. There may still be manual recovery steps necessary to process that data for Brightmetrics reporting, but at least it will be possible to do so. Take note, however, that some types of CCIR logging problems are internal to ECC, and it may not know that it is not writing to the primary CCIR server, or it may not be able to fail over to the secondary for the same reason that it is unable to write to the primary, so redundant servers is not a panacea for lost CCIR data, but it is one tool available.**
If none of the above steps resolve the issue, and this is a new install or there have been any changes recently to network topology or server software, there are two other possible issues that could be preventing ECC from writing to CCIR.
The first is either a network firewall or Windows Firewall blocking connectivity to TCP port 6306 on the CCIR server from the ECC server. Resolving that is outside the scope of this document, but your network IT staff should be able to verify that the ECC server can make a connection to TCP port 6306 on the CCIR server and troubleshoot appropriately if not.
The second is that if the IP address of the ECC server or of the CCIR server has been changed, the old IP addresses may be stuck in its configuration. It is easy to check and correct the IP address of the CCIR server as configured on the ECC server in Contact Center Director, but there are also settings on the CCIR server that can only be changed by editing a configuration file. Starting in the folder "C:\Program Files\ShoreTel\ShoreTel CCIR Server" (that will be "Program Files (x86)" on 64-bit servers), look for a file named user_registry.ini. If it is not in that folder, look for it in the "Bin" sub-folder instead. If neither shows up, open the "registry.ini" file instead. Look for any "IpAddress" values that match either the old ECC server address or the old CCIR server address and change them to be the new addresses of the respective server, then reboot the CCIR server. Make sure to make backup copies of any files before you change them!
Related Links:Running BrightMetrics Agent Diagnostics