13 Monitoring Statistics and Resource Limits

This chapter describes the implementation and management of statistics and resource limits in Oracle WebRTC Session Controller.

About WebRTC Session Controller Statistics

You configure your WebRTC Session Controller installation with license requirements, resource limits for the system and the application or tenant accessing the system and its services.

At runtime, when your customers access and use your WebRTC Session Controller system and the services you provide, you can access and monitor the following in WebRTC Session Controller:

About the Monitoring of Licenses

As a system administrator, you can ensure that WebRTC Session Controller is not exceeding the licensing limit for concurrent sessions and/or named users by monitoring the total number of concurrent sessions and/or named users in the system at any time.

In WebRTC Session Controller, concurrent sessions are the aggregate number of established virtual connections between two endpoints represented by subscriber devices or network switching equipment and traversing the licensed software at any one time.

A named user is an individual authorized by you to use the programs which are installed on a single server or multiple servers. This definition of a named user is valid regardless of whether the individual is actively using the programs at any given time. Additionally, WebRTC Session Controller counts a non human operated device that can access the programs as a named user in addition to all individuals authorized to use the programs.

WebRTC Session Controller supports the following licensing metrics at the system level:

  • Total number of active sessions

  • Total number of sub-sessions

  • Total number of uniquely-named users

  • High watermark for active sessions, sub sessions and named users

To monitor these metrics, see "Monitoring the Metrics".

About Resource Limits

WebRTC Session Controller Administration Console supports the configuration of resource limit entries, where each entry is given a unique name. Each resource limit entry consists of the following resource parameters to which limits can be set:

  • Number of active sessions allowed.

  • Number of sessions allowed per user.

  • Number of sub sessions allowed per session.

  • Number of sub sessions allowed per user.

Each tenant of an WebRTC Session Controller installation can configure and store a set of resource limit entries in the Signaling Engine. At the time that a tenant creates an entry for an application and configures the application profile for the application, the tenant selects a resource limit entry to associate with each application.

WebRTC Session Controller provides a default resource limit selection entry called, default. Use this resource limit entry to provide resource limits as a default selection for the applications a tenant configures in the application profile.

About the default Resource Limit Entry

When WebRTC Session Controller is installed, the four resource parameters for the default entry have their limits set to -1. A value of -1 for a resource entry parameter indicates that the resource parameter is allowed unlimited resource. WebRTC Session Controller does not track any resource parameter with its maximum limit set to -1.

You can edit the limits set for the default resource limit entry. When you do so, WebRTC Session Controller enforces the updated resource limits.

Note:

If you do not edit the installation configuration for default (with unlimited resources for all the parameters) as one of the resource limit entries and an application uses this default, then, none of the resource parameters use is tracked for the application.

About Statistics Counters

Table 13-1 lists the available WebRTC Session Controller statistics counters, including information on each statistic's type as well as in which statistics set each is available.

Table 13-1 WebRTC Session Controller Statistics Counters

Name Levels Where Applied Description

SESSION_COUNT

System, Application, Tenant, Application User, Tenant user

Number of active WebRTC Session Controller sessions

SESSION_PEAK

System

Maximum number of active WebRTC Session Controller sessions

SUB_SESSION_COUNT

System

Number of active sub sessions, for example SIP sessions.

SUB_SESSION_PEAK

System

Max number of active sub sessions, for example, SIP sessions.

SUB_SESSION_ATTEMPT_COUNT

System

The number of SIP session creation attempts where SipSession == INITIAL.

SUB_SESSION_SUCCESS_COUNT

System

The number of SIP sessions successfully created where SipSession == CONFIRMED.

SUB_SESSION_TERMINATE_COUNT

System

The number of SIP sessions terminated where SipSession == TERMINATED.

REGISTRATION_SUCCESS_COUNT

System

Number of successful registrations.

REGISTRATION_UNSUCCESS_COUNT

System

Number of unsuccessful registrations.

MEDIA_SESSION_COUNT

System

The number of active media sessions.

ACTIVE_USERS_COUNT

System

Number of active users

ACTIVE_USERS_PEAK

System

Maximum number of active users

SIP_MESSAGE_SEND_COUNT

System

The number of SIP messages sent by WebRTC Session Controller.

SIP_MESSAGE_RECV_COUNT

System

The number of SIP messages received by WebRTC Session Controller.

SIP_(method)_REQUEST_SEND_COUNT

System

The number of SIP requests for each method sent by WebRTC Session Controller.

SIP_(method)_REQUEST_RECV_COUNT

System

The number of SIP requests for each method received by WebRTC Session Controller.

SIP_(status)_RESPONSE_SEND_COUNT

System

The number of SIP responses of each status (1xx, 2xx, 3xx, 4xx, 5xx and 6xx) sent by WebRTC Session Controller.

SIP_(status)_RESPONSE_RECV_COUNT

System

The number of SIP responses of each status 1xx, 2xx, 3xx, 4xx, 5xx and 6xx) received by WebRTC Session Controller.


For a description about the MBeans employed to monitor these counters, see "About StatisticsRuntimeMBean" and "About the SipRuntimeMBean".

Configuring Resource Limits

You can configure resource limits for applications and for tenants in the Signaling Engine.

Configuring Resource Limits in the Signaling Engine

In the Signaling Engine tab of WebRTC Session Controller Administration Console, you create a set of resource limit entries, with each entry given a unique name. For each resource limit entry, you provide limits to the resource parameters.

For information on how to provide resource limit entries for the Signaling engine, see "Global Resource Limit Parameters of the Signaling Engine".

Configuring Resource Limits for Applications

The Resource Limits field in the Application Profiles tab of WebRTC Session Controller Administration Console, displays the set of saved resource limit entries that you created in the Signaling Engine tab. When you create the application profile for an application, you select the resource limit entry that best suits your application.

For information on how to assign a resource limit entry to your application, see "Providing the Profile Information for the Application".

Monitoring the Metrics

You can monitor these metrics:

Monitoring the System at RunTime

At runtime, you can get the statistics for:

  • Usage:

    • SESSION_COUNT

    • SESSION_PEAK

    • SUB_SESSION_COUNT

    • SUB_SESSION_PEAK

    • SUB_SESSION_ATTEMPT_COUNT

    • SUB_SESSION_SUCCESS_COUNT

    • SUB_SESSION_TERMINATE_COUNT

    • REGISTRATION_SUCCESS_COUNT

    • REGISTRATION_UNSUCCESS_COUNT

    • MEDIA_SESSION_COUNT

    • ACTIVE_USERS_COUNT

    • ACTIVE_USERS_PEAK

    See Table 13-1 for a description of the counters.

  • High Watermark counts for:

    • Active named users

    • Active sessions

    • Active sub sessions

To retrieve the above statistics, you use the StatisticsRuntimeMBean.

About StatisticsRuntimeMBean

As its name suggests, StatisticsRuntimeMBean is a runtime MBean that provides statistics. The following MBeans are available at runtime:

  • System level

    A single MBean instance that reports counters from the SYSTEM statistics set with the object name:

    oracle.wsc:Type=StatisticsRuntimeMBean,Location=[ServerName]]
    
  • Application level

    One mbean per application that reports counters from the Application statistics set with the Object name

    oracle.wsc:Type=StatisticsRuntimeMBean,Location=[ServerName],scope=application,application=[ApplicationName]]
    
  • Tenant level

    One mbean per tenant that reports counters from the TENANT statistics set with the Object name:

    oracle.wsc:Type=StatisticsRuntimeMBean,Location=[ServerName],scope=tenant,tenantProfile=[TenantProfileName]]]
    

You can access WebRTC Session Controller statistics counters and operations using JMX or the JConsole utility through this MBean.

For information on the methods of the StatisticsRunTimeMBean, see WebRTC Session Controller JavaScript API Reference.

Monitoring SIP Counters at Runtime

At runtime, SipRunTimeMBean enables you can retrieve the number for following:

  • SIP_MESSAGE_SEND_COUNT

  • SIP_MESSAGE_RECV_COUNT

  • SIP_(method)_REQUEST_SEND_COUNT

  • SIP_(method)_REQUEST_RECV_COUNT

  • SIP_(status)_RESPONSE_SEND_COUNT

  • SIP_(status)_RESPONSE_RECV_COUNT

About the SipRuntimeMBean

SipRuntimeMBean is a single mbean instance reflects SIP counters from the SYSTEM statistics set with the Object name

oracle.wsc:Type=SipRuntimeMBean,Location=[ServerName]]]]

For information on the methods of the SipRuntimeMBean, see WebRTC Session Controller JavaScript API Reference.

Monitoring High Watermark Log Messages

The High Watermark is the indicator which represents the highest value seen until now for a monitored entry. Suppose that the total count stored for a monitored entry goes from 1 to 10 to 5. The high watermark value for this entry is 10.

WebRTC Session Controller logs a high watermark message for the following:

  • Active sessions

  • Active sub sessions

  • Active named users

Example 13-1 lists some warning messages in a sample wsc.log file:

Example 13-1 Example High Watermark messages in the wsc.log file

WARN 2014-03-28 13:00:31,452 [pool-4-thread-1] (ats.StatsServiceImpl:  96) - New high watermark for active named user count: 42
WARN 2014-03-25 16:18:55,816 [pool-4-thread-1] (ats.StatsServiceImpl: 125) - New high watermark for active session count: 99

When the system reaches a new all time high value for any of the licence metrics, WebRTC Session Controller logs high watermark messages in the wsc.log file on the engine servers. The complete path to this file is domain_name/servers/server_name/logs/wsc.log file, where domain_name is the name of the WebRTC Session Controller domain and server_name is the name of the server.

You can audit the log files at a later time to see the maximum values that have been reached.

Note:

In a cluster configuration, WebRTC Session Controller resets the watermark values on a restart of the servers.

Disabling the Monitoring of System Statistics

WebRTC Session Controller collects statistics associated with licensing, by default. To disable the monitoring of system statistics, use the following system property when you start WebLogic server:

-Doracle.wsc.stats=false

For information about startup command options, see Table 3-6.