Server Performance Metrics

Use

Sinch Contact Pro servers can provide performance metrics to Solution Manager Diagnostics (SMD) or as Windows performance counters. In Solution Manager Diagnostics, the metrics is made available to Wily Introscope performance monitoring, and the Windows performance counters can be consumed with any suitable tool, such as Windows Performance Monitor.

In both cases, the metrics are identified by combination of host, virtual unit, server component, and performance counter names. In Wily Introscope, the metrics are available in its structural views. In Windows, the counters are found under Sinch Contact Pro counters, where each counter instance has the naming convention virtual unit.component\counter . Note that possible slashes ( / ) in the counter names in Wily Introscope are replaced with backslashes ( \ ) in Windows performance counter names.

example:

A CEM server counter AGENT/Current/Logins in CEM instance running in the virtual unit VU_CORE would be named as VU_CORE.Cem\AGENT\Current\Logins.

Prerequisites

To install the Wily Introscope monitor, see appropriate Wily installation instructions.

Procedure

Note:

The Windows registry parameters UseNCS, NcsPath and UseWinPerf can be set on virtual unit or module level in registry and they are applied accordingly.

Configuring Sinch Contact Pro for Wily monitoring:

  1. Locate the SMD directory under the local HAC virtual unit that contains files ncs.dll, sapcpp47.dll and ncs.conf, for example: C:/SAP/ContactCenter/VU/MyHACNode/SMD.

  2. For the minimum configuration:

    • Define in the ncs.conf file the following items:

      agent_host: DNS name/IP address

      agent_port: port number

    • In Windows registry, set string type value HKLM\SOFTWARE\Wicom\NcsPath to contain the above-mentioned path to the directory with the ncs.dll.

    • In Windows registry, set DWORD type value HKLM\SOFTWARE\Wicom\UseNCS to 1.

Configuring Sinch Contact Pro Performance Counters for Windows:

  1. Right-click the HAC node and choose Performance Metrics > Install SAP Contact Center Performance Counters for Windows.

  2. In Windows registry, set DWORD type value HKLM\SOFTWARE\Wicom\UseWinPerf to 1.

  3. Restart the server component for the changes of the above configuration parameters to take effect.

Metrics from All Server Modules

All Sinch Contact Pro server modules provide the counters in the following table. Some servers produce specific counters in addition to these, those are listed in the sections below.

Table 1. All Server Modules

Counter

Description

LogErrorCount

Total count of error-lines in trace logs since component restart

LogWarningCount

Total count of warning-lines in trace logs since component restart

Generic Metrics from Servers

The following counters were introduced with BCMAPI2 that was adapted to Agent Server in SP08, to Directory Server and Integration Interfaces in SP09, and to Batch Job Server, Call Dispatcher, Chat Server, External Terminal Controller (ETC), and Terminal Server in SP10.

Table 2. Generic Counters

Counter

Description

BcmApi/Cache/Lookups

Number of ID-to-object-map lookups in the shared cache. This counter tells best about the effectivity of the cache, as well as the related BcmApi/Cache/Finds, Cache/Missed/Objects, and BcmApi/Cache/Missed/Fields.

BcmApi/Cache/Finds

Number Find…() operations to shared cache.

BcmApi/Cache/Added

Number of objects added to shared cache.

BcmApi/Cache/Removed

Number of objects removed from the shared cache.

BcmApi/Cache/Missed/Objects

Number of missed objects looked up from the cache.

BcmApi/Cache/Missed/Fields

Number of missed fields of objects looked up from the cache.

BcmApi/Objects/Created

Number of concrete objects created into memory.

BcmApi/Objects/Deleted

Number of concrete objects deleted from memory.

BcmApi/Objects/InMemory/Shared

Total number of concrete objects in memory. This is the most important counter to follow memory utilization.

BcmApi/Objects/InMemory/Proxy

Total number of proxy objects in memory.

BcmApi/ArrayItems/Created

Number of array field items created into memory.

BcmApi/ArrayItems/Attached

Number of array field items actually added to an array field.

BcmApi/ArrayItems/Deleted

Number of array field items deleted from memory.

BcmApi/DeserializeXml/Time

Total time in milliseconds spent in deserializing objects from XML.

BcmApi/DeserializeXml/Count

Number of objects deserialized from XML.

Metrics from CEM Server

CEM server produces the following counters. Metrics are specific to CEM though BCMAPI2 is adapted to CEM as well in SP09.

Table 3. Counters on CEM Server

Counter

Description

CONTACTS/Total/CallOut

Total number of call outs since CEM was started. Contains all kinds of outgoing calls, for example consultation calls, calls to MTD terminal, and join transfer calls.

CONTACTS /Current/CallOut

Current number of call outs. Contains all kinds of outgoing calls, for example consultation calls, calls to MTD terminal, and join transfer calls.

CONTACTS /Total/WCDCallIn

Total number of incoming calls since CEM was started. This contains only incoming calls coming from Call Dispatcher.

CONTACTS /Current/Calls

Current number of calls. Contains all kinds of outgoing calls and incoming calls that are coming from or going to Call Dispatcher.

CONTACTS /Current/CallIn

Current number of incoming calls. This contains also calls transferred internally in CEM from application to other.

CONTACTS /Current/Chats

Current number of chat requests.

CONTACTS /Total/Chats

Total number of chat requests since CEM restart.

CONTACTS/Total/Activities

Total number of e-mail and Action Item routing requests since CEM was started.

CONTACTS/Current/Activities

Current number of active e-mail and Action Item routing requests.

AGENTS/Total/Logins

Number of agents logged on since CEM was started. Contains CMC, ETC, and external agents too.

AGENTS/Current/Logins

Number of agents currently logged on. Contains CMC, ETC, and external agents too.

RESOURCES/Current/DynamicThreadsFree

CEM uses dynamic thread pool for state machines. This is the current number of the free threads in the pool.

RESOURCES/Current/DynamicThreadsUsed

CEM uses dynamic thread pool for state machines. This is the current number of the used threads in the pool.

RESOURCES/Current/Components

Number of internal CEM StateMachine components.

RESOURCES/Current/InternalComponents:

RESOURCES/Current/Components

RESOURCES/Current/PythonThreadsTotal

RESOURCES/Current/DynamicThreadsFree + RESOURCES/Current/DynamicThreadsUsed

RESOURCES/Current/UnallocatedEventsQueue

Number of unallocated contacts in queue.

Table 4. Error Counters on CEM Server

Counter

Description

ERR/Error

Number of error lines (ERR>) written to trace log file since CEM started.

ERR/Exception

Number of exception (EXC>) lines written to trace log file since CEM started.

ERR/Warning

Number of exception (WRN>) lines written to trace log file since CEM started.

ERR/CallInRejected

Calls CEM has rejected for technical reason, like Congestion, unknown number etc.

ERR/Connection/ODBC

Number of errors when accessing database.

ERR/Connection/AgentServer

Number of errors in connection to AgentServer. May contain also other errors disturbing the connection with the component.

ERR/Connection/DataCollector

Number of errors in connection to DataCollector. May contain also other errors disturbing the connection with the component.

ERR/Connection/CallDispatcher

Number of errors in connection to CallDispatcher. May contain also other errors disturbing the connection with the component.

ERR/Connection/ChatServer

Number of errors in connection to ChatServer. May contain also other errors disturbing the connection with the component.

ERR/Connection/CemServer

Number of errors in connection to other CEM servers. May contain also other errors disturbing the connection with the component.

ERR/Connection/AgentLost

Agent terminal (for example CDT) connection lost without proper shutdown events.

ERR/Connection/AgentRecovery

Recovery from unexpected agent terminal connection breakage.

Table 5. Timers on CEM Server

Counter

Description

TIMER/OneSecondSleep

How long one second sleep takes in CEM. As Python interpreter actually can execute only one thread at a time this timer tells pretty well about the current load on CEM server.

TIMER/Connection/PollChangeTrack

Timer for executing query for new records in the ChangeTrack table.

TIMER/Connection/GetAgentData

Timer for reading agent data from database.

TIMER/Connection/SOAPCall

Timer for SOAP calls to external services.

Metrics from Chat Server

Table 6. Timers on Chat Server

Counter

Description

CHS_CurrentDiscussions, HS_CurrentInstantMessageDiscussions

Current number of discussions (normal and instant=agent-to-agent).

CHS_TotalDiscussions, CHS_TotalInstantMessageDiscussions

Total number of discussions (normal and instant=agent-to-agent).

CHS_TotalMessages

Total number of posted client-to-agent chat comments.

CHS_TotalInstantMessageMessages

Total number of posted agent-to-agent chat comments.

CHS_TotalDiscussionsRejectedNoSubscription

Number of discussions rejected, no valid subscription found.

CHS_TotalDiscussionsAcceptedByAgent

Number of discussions accepted by agent.

CHS_TotalDiscussionsRejectedByAgent

Number of discussions rejected by agent.

CHS_TotalDiscussionsRerouted

Number of discussions rerouted by CEM.

CHS_TotalErrorsReported

Number of errors.

MessagesSentDirectlyAS

Number of messages sent normally (no buffering).

CHS_NetworkDisconnections

Number of lost connections.

CHS_NetworkConnections

Number of connections and reconnections.

CHS_MaxQueuedMessages

Maximum size of the internal message queue.

CHS_MaxQueuedDatabaseMessages

Maximum size of the internal database message queue.

Added in SP08.

Metrics from Media Routing Server
Table 7. Counters on Media Routing Server (MRS)
CounterDescription
MRS_Active_PrompsNumber of prompts that MRS is currently playing
MRS_HUBs_in_useNumber of MRS hubs that are currently in use for ongoing calls
MRS_RecordingsNumber of recordings MRS is currently performing
Metrics from SBR
Table 8. Counters on SIP Bridge (SBR)
CounterDescription
SBR_CurrentCallsNumber of current calls
SBR_CurrentIncomingCallsNumber of incoming calls currently ongoing
SBR_CurrentOutgoingCallsNumber of outgoing calls currently ongoing
SBR_RejectedIncomingCallsTotal number of rejected incoming calls since component restart