Skip Headers
Oracle® Communications Services Gatekeeper System Administrator's Guide
Release 5.1

E37531-01
Go to Documentation Home
Home
Go to Table of Contents
Contents
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
PDF · Mobi · ePub

3 Operation and Maintenance: General

This chapter gives an overview of the mechanisms available for controlling Oracle Communications Services Gatekeeper.

Administration Console Overview

Services Gatekeeper Administration Console provides a graphical user interface for configuring, managing, and provisioning Services Gatekeeper. The Administration Console is an extension of the WebLogic Server Administration Console.

At least one Network Tier server must be started before you log in to the WebLogic Server Administration Console. Services Gatekeeper servers started after you log in to the Administration Console are not displayed in the Administration Console. To see them, you must log in again.

Starting and Using the Administration Console

Start the Administration Console by entering this URL in a supported Web browser:

http://server_address:port/console

Where:

server_address is the instance you have set up as your Administration Server, usually the IP address of the system. localhost works if you are running the Administration Console on the same system as the Administration Server.

port is the port to connect to. The default is 8001.

Log with your credentials.

Note:

If this is the first time Services Gatekeeper is started, use the username weblogic and password weblogic,which is the recommended value for the installation and initial domain configuration stage.After you have logged in, create an administrative user using the instructions in "Managing Management Users and Management User Groups", and remove the user weblogic. Either remove or change password for the WebLogic Server user, see the on-screen help text on the Administration Console user interface.

All Services Gatekeeper configuration and monitoring is provided through the following nodes in the left pane of the console, in the Domain Structure group:

Use the WebLogic Server administration console to configure SIP settings. See Oracle Communications Converged Application Server documentation.

Figure 3-1 Domain Structure – Links to Administration Console for Oracle Communications Services Gatekeeper

Description of Figure 3-1 follows
Description of "Figure 3-1 Domain Structure – Links to Administration Console for Oracle Communications Services Gatekeeper"

MBeans pane

The MBeans pane contains a tree structure of all management objects applicable for the selected Oracle Communications Services Gatekeeper server.

By clicking on a management object, the corresponding Configuration and Provisioning page for the management object is displayed immediately below the MBean pane: see the Oracle Communications Services Gatekeeper System Administration Guide section "Configuration and Provisioning".

Configuration and Provisioning

The Configuration and Provisioning pane contains two tabs:

  • Attributes

  • Operations

The Attributes tab displays a list of attributes, either read-only or read-write for the managed object.

Note:

In this document, read-only attributes are indicated by (r) after the name.

Read-write attributes have a check-box next to them.

To change an attribute:

  1. Select the check box.

  2. Enter the new value in the entry field.

  3. Click Update Attributes.

Figure 3-3 Example Configuration and Provisioning Pane Attributes Tab

Description of Figure 3-3 follows
Description of "Figure 3-3 Example Configuration and Provisioning Pane Attributes Tab"

The Operations tab contains a list with the operations for the managed object.

Operations either display data, set data, or perform an actual task.

To perform an operation:

  1. Select the operation from the Select An Operation list.

    The fields for the operation are displayed.

  2. Enter the information in the fields.

  3. Click Invoke.

Figure 3-4 Example Configuration and Provisioning Pane Operations Tab

Description of Figure 3-4 follows
Description of "Figure 3-4 Example Configuration and Provisioning Pane Operations Tab"

WebLogic Oracle Communications Services Gatekeeper Alarms Pane

The Oracle Communications Services Gatekeeper Alarms pane displays alarms emitted.

It is possible to filter the output to the page on a set of criteria; see Table 3-1.

The list is returned by clicking Get Alarms.

Table 3-1 Oracle Communications Services Gatekeeper Alarms Pane

Filter on... Input

Severity

From the Severity list, select which severity level to display. The options are:

  • ALL

  • WARNING

  • MINOR

  • MAJOR

  • CRITICAL

Source

From the Server list, select the server from which to display alarms. The options are:

  • ALL, for all servers

  • <Server name>, for an individual server

Identifier.

See Oracle Communications Services Gatekeeper Alarm Handling Guide for alarm identifiers. Use 0 (zero) to wildcard.

From

In the From, field, enter the start time for the time interval. The options are:

  • Exact time.

  • No given start time. Leave empty.

Exact times are formatted as YYYY-MM-DD hh:mm:ss, where:

  • YYYY is the year. Four digits required.

  • MM is the month (1 through 12).

  • DD is the day (1 through 31). Upper limit depends on month and year.

  • hh is the hour (0 through 23).

  • mm is the minute (0 through 59).

  • ss is the second (0 through 59).

Note: There must be a space separating YYYY-MM-DD and hh:mm:ss.

To

In the To, field, enter the end time for the time interval. The options are:

  • Exact time.

  • No given start time. Leave empty.

Exact times are formatted as YYYY-MM-DD hh:mm:ss, where:

  • YYYY is the year. Four digits required.

  • MM is the month (1 through 12).

  • DD is the day (1 through 31). Upper limit depends on month and year.

  • hh is the hour (0 through 23).

  • mm is the minute (0 through 59).

  • ss is the second (0 through 59).

Note: There must be a space separating YYYY-MM-DD and hh:mm:ss.

Offset

In the Offset field, enter the start offset in the list of alarms entries matching the criteria.

Integer. 0 (zero) is the first entry.

Max

In the field Max field, enter the maximum number of alarm entries to return.

Integer.


Oracle Communications Services Gatekeeper CDRs Pane

The Services Gatekeeper Charging Data Records (CDRs) pane displays CDRs that have been generated.

It is possible to filter the output to the page on a set of criteria, see Table 3-2.

The list is returned by clicking Get CDRs.

Table 3-2 Oracle Communications Services Gatekeeper CDRs Pane

Filter on... Input

Service Name

In the Service Name field, enter the name of the service name for which CDRs are required. The service name is the service type defined for the network protocol plug-in.

A blank entry indicates the wildcard character.

Application Id

In the Application Id field, enter the application ID to filter on.

A blank entry indicates the wildcard character.

Service Provider Id

In the Service Provider Id field, enter the service provider ID to filter on.

A blank entry indicates the wildcard character.

From

In the From field, enter the start time for the time interval. The options are:

  • Exact time.

  • No given start time. Leave empty.

Exact times are formatted as YYYY-MM-DD hh:mm:ss, where:

  • YYYY is the year. Four digits required.

  • MM is the month (1 through 12).

  • DD is the day (1 through 31). Upper limit depends on month and year.

  • hh is the hour (0 through 23).

  • mm is the minute (0 through 59).

  • ss is the second (0 through 59).

Note: There must be a space separating YYYY-MM-DD and hh:mm:ss.

To

In the To field, enter the end time for the time interval. The options are:

  • Exact time.

  • No given start time. Leave empty.

Exact times are formatted as YYYY-MM-DD hh:mm:ss, where:

  • YYYY is the year. Four digits required.

  • MM is the month (1 through 12).

  • DD is the day (1 through 31). Upper limit depends on month and year.

  • hh is the hour (0 through 23).

  • mm is the minute (0 through 59).

  • ss is the second (0 through 59).

Note: There must be a space separating YYYY-MM-DD and hh:mm:ss.

Offset

Enter the start offset in the list of CDR entries matching the criteria. Enter integer values. 0 (zero) is the first entry.

Max

Enter the maximum number of CDR entries to return. Enter integer values.


Converged Application Server Administration Console for SIP-based Services

There is an administration console for the Oracle Communications Converged Application Server. This handles setting for Converged Application Server and the SIP Servlet parts of Services Gatekeeper communication services.

Click Domain Name > SipServer to open the Converged Application Server administration console.

Java Management Extensions

Services Gatekeeper exposes its management interfaces as Java Management Extensions (JMX) MBeans.

These MBeans come in two types:

  • Standard MBeans

  • Configuration MBeans

    Note:

    A link to Javadoc for OAM can be found in the Reference topic page in the Oracle Communications Services Gatekeeper documentation set. See the reference section for each OAM service for the fully qualified MBean names and information about how they map to managed objects in the Services Gatekeeper Administration Console.

Following is an example of connecting to the MBean server and performing an operation on the JMX interfaces.

The MBean object name is versioned. The MBean name includes the version number for the release. External JMX clients need to be updated according to the release number.

Example 3-1 Example of using JMX to manage Oracle Communications Services Gatekeeper

import java.io.IOException;

import java.net.MalformedURLException;

import java.util.Hashtable;

import javax.management.MBeanServerConnection;

import javax.management.MalformedObjectNameException;

import javax.management.ObjectName;

import javax.management.remote.JMXConnector;

import javax.management.remote.JMXConnectorFactory;

import javax.management.remote.JMXServiceURL;

import javax.naming.Context;

public class TestMgmt {

  private static MBeanServerConnection connection;

  private static JMXConnector connector;

/*

  * Initialize connection to the Domain Runtime MBean Server

  */

  public static void initConnection(String hostname, String portString,

                                    String username, String password) throws IOException,

      MalformedURLException {

    String protocol = "t3";

    Integer portInteger = Integer.valueOf(portString);

    int port = portInteger.intValue();

    String jndiroot = "/jndi/";

    String mserver = "weblogic.management.mbeanservers.domainruntime";

    JMXServiceURL serviceURL = new JMXServiceURL(protocol, hostname,

        port, jndiroot + mserver);

    Hashtable h = new Hashtable();

    h.put(Context.SECURITY_PRINCIPAL, username);

    h.put(Context.SECURITY_CREDENTIALS, password);

    h.put(JMXConnectorFactory.PROTOCOL_PROVIDER_PACKAGES,

        "weblogic.management.remote");

    connector = JMXConnectorFactory.connect(serviceURL, h);

    connection = connector.getMBeanServerConnection();

  }

  public static void main(String[] args) throws Exception {

    String hostname = args[0];   //hostname of the admin server

    String portString = args[1]; //port of the admin server

    String username = args[2];

    String password = args[3];

    String mbserverName = args[4];  //NT server name

    String operationName = "addRoute";

    String id = "Plugin_px21_multimedia_messaging_mm7";

    String addressExpression = ".*";

    String[] params = new String[]{id, addressExpression};

    String[] signature = new String[]{"java.lang.String", "java.lang.String"};

    ObjectName on;

    try {

      on = new ObjectName("com.bea.wlcp.wlng:Name=wlng,InstanceName=PluginManager,Type= com.bea.wlcp.wlng.plugin.PluginManagerMBean,Location=" + mbserverName);

    } catch (MalformedObjectNameException e) {

      throw new AssertionError(e.getMessage());

    }

    initConnection(hostname, portString, username, password);

    //invoke the operation

    Object result = connection.invoke(on, operationName, params, signature);

    System.out.println(result.toString());  //displays the result

    connector.close();

  }

}

If setting an attribute or calling an operation fails, a com.bea.wlcp.wlng.api.management.ManagementException, or a subclass of this exception is thrown. The following subclasses are defined:

DuplicateKeyException – Thrown when the operation creates a duplicate key.

InputManagementException – Thrown for invalid user input.

KeyNotFoundException – Thrown when the operation cannot find the specified key.

A JMX client must have the same version of exception classes available; otherwise the client will throw ClassNotFoundException.

Middleware_Home/ocsg_pds_5.1/lib/wlng/oam.jar contains custom classes for OAM and return types.

Middleware_Home/ocsg_pds_5.1/doc/javadoc_oam contains Javadoc for OAM.

WebLogic Scripting Tool (WSLT)

The following section gives examples of how to use the WebLogic Scripting Tool (WLST) in both interactive and script mode when configuring and managing Services Gatekeeper.

For information about WebLogic Server and WLST, see "Using the WebLogic Scripting Tool" in Oracle® Fusion Middleware Oracle WebLogic Scripting Tool at:

http://download.oracle.com/docs/cd/E15523_01/web.1111/e13715/using_wlst.htm

The following topics are covered in this section of the Oracle Communications Services Gatekeeper System Administration Guide:

Working in Interactive Mode

This section gives examples of how to use WLST in interactive mode.

Starting WLST and connecting to Services Gatekeeper

  1. Make sure the correct Java environment is set:

    UNIX: Domain_Home/bin/setDomainEnv.sh

    Windows: Domain_Home\bin\setDomainEnv.cmd

  2. Start WLST:

    java weblogic.WLST

  3. Connect to the server to manage:

    connect('username','password','t3://host:port')

  4. Change to the custom tree where Oracle Communications Services Gatekeeper MBeans are located:

    custom()

    cd('com.bea.wlcp.wlng')

  5. Display a list of the Mbeans:

    ls()

    The MBean names are also displayed in each Configuration and Provisioning page for the management objects in the Oracle Communications Services Gatekeeper Administration Console.

  6. Select the MBean to change:

    cd('com.bea.wlcp.wlng:Name=wlng_nt,Type=MBean_name')

    For example, to select the MBean for the EDRService, use:

    cd('com.bea.wlcp.wlng:Name=wlng,InstanceName=EdrService,Type=com.bea.wlcp.wlng.edr.management.EdrServiceMBean')

Exiting WLST

  1. Disconnect from Oracle Communications Services Gatekeeper:

    disconnect()

  2. Exit the WLST shell:

    exit()

Changing an attribute

  1. Select the MBean to change attribute for.

  2. Set the attribute:

    set('name_of_attribute',value_of_attribute)

    For example, to change the attribute BatchSize to 2001 in the managed object EDRService: set('BatchSize', 2001)

    The attribute values for an MBean can be displayed using ls().

Invoking an operation

  1. Select the MBean to invoke an operation on.

  2. Define the parameters as an array.

  3. Define the data types as an array.

  4. Invoke the operation.

For example, to invoke the displayStatistics method in the EDRService MBean:

cd('com.bea.wlcp.wlng:Name=wlng,InstanceName=EdrService,Type=com.bea.wlcp.wlng.edr.management.EdrServiceMBean')
objs = jarray.array([],java.lang.Object)
strs = jarray.array([],java.lang.String)
print(invoke('displayStatistics',objs,strs))

This operation has no arguments.

For example, to add a route using the MBean for the Plug-in Manager:

cd('com.bea.wlcp.wlng:Name=wlng,InstanceName=PluginManager,Type=com.bea.wlcp.wlng.plugin.PluginManagerMBean ')
objs=jarray.array(['Plugin_px21_multimedia_messaging_mm7','.*'],Object)
strs=jarray.array(['java.lang.String', 'java.lang.String'],String)
invoke('addRoute', objs, strs)

The method addRoute takes two arguments, and the values of the parameters are stated in the same order as the parameters are defined in the signature of the method.

Note:

For a method that has input parameters and a string return value, the invoke command can be executed as follows:
objs = jarray.array([java.lang.String('stringInput1'),java.lang.String('stringInput2'), java.lang.String('StringInput3')],java.lang.Object)
strs = jarray.array(['java.lang.String', 'java.lang.String', 'java.lang.String'],java.lang.String)
invoke('methodName',objs,strs)

Scripting WLST

When using WLST together with scripts, WLST is invoked as follows:

java weblogic.WLST script_name.py argument_1 argument_2 ...argument_n

The arguments can be retrieved from within the scripts in the array sys.argv[], where sys.argv[0] is the script name, sys.argv[1] is the second argument and so on. It may be useful to specify login information and connection information as arguments to the scripts.

The following script connects to Oracle Communications Services Gatekeeper and changes to an MBean defined by argument.

Example 3-2 Example of script

userName = sys.argv[1]
passWord = sys.argv[2]
url="t3://"+sys.argv[3]+":"+sys.argv[4]
objectName = sys.argv[5]
objectName = "com.bea.wlcp.wlng:Name=nt,Type=" + sys.argv[5] 
print objectName
connect(userName, passWord, url)
custom()
cd('com.bea.wlcp.wlng')
cd(objectName)

For example, to invoke the script:

java weblogic.WLST script1.py weblogic weblogic localhost 7001 com.bea.wlcp.wlng:Name=wlng,InstanceName=PluginManager,Type=com.bea.wlcp.wlng.plugin.PluginManagerMBean

Database Maintenance

This section lists the three database tables that you should clean periodically and provides and example script for doing so.

About Cleaning Database Tables

Table 3-3 lists the database tables that you must periodically clean to prevent them from growing too large and adversely affecting performance. See your database documentation for instructions on deleting rows from these tables.

Table 3-3 Database Table Cleaning Intervals

Type of Database Table Table Recommended Cleaning Interval

Services Gatekeeper

SLEE_ALARM

Every two months

Services Gatekeeper

SLEE_CHARGING

See "About Cleaning the SLEE_CHARGING Table" for details.

Services Gatekeeper

SLEE_STATISTICS_DATA

Every month

EDR Analytics

TRANSACTION_HISTORY

Daily if used. See the Oracle Communications Services Gatekeeper System Administrator's Guide section "About Cleaning EDR Analytics Tables" for details.

EDR Analytics

TRANSACTION_PARAMETER_HISTORY

Daily if used. See the Oracle Communications Services Gatekeeper System Administrator's Guide section "About Cleaning EDR Analytics Tables" for details.

EDR Analytics

TRANSACTION_INVALID_HISTORY

Daily if used. See the Oracle Communications Services Gatekeeper System Administrator's Guide section "About Cleaning EDR Analytics Tables" for details.

EDR Analytics

TRANS_PARA_INVALID_HISTORY

Daily if used. See the Oracle Communications Services Gatekeeper System Administrator's Guide section "About Cleaning EDR Analytics Tables" for details.


About Cleaning EDR Analytics Tables

You are only required to clean the EDR analytics tables listed in Table 3-3 if you use the EDR analytics feature and have EdrAanalyticMBean.StoreHistory is set true. The cleaning interval depends on the amount of traffic stored in your database, but these tables usually grow quickly and require daily maintenance.

About Cleaning the SLEE_CHARGING Table

The SLEE_CHARGING table cleaning interval depends on the amount of charging traffic, so it is difficult to specify a recommended interval. There is usually one row in this table per plug-in transaction. A row can contain up to 300 bytes of data.

Typically operators export charging data from the SLEE_CHARGING table to a file either by using a scheduled script or by integrating with a billing system such as Oracle Communications Billing and Revenue Management.

Charging data is contained in charging data records (CDRs), which are a type of event data record (EDR). Typically CDRs are integrated by means of EDR listeners. You can also listen for alarms by setting up an SNMP/EDR listener. If you do this, you could disable CDR and alarm storage in the database by setting the EDR Service's StoreAlarms or Store CDRs attributes to false. However, Oracle recommends storing alarms for some period of time, for trouble-shooting purposes. See the Oracle Communications Services Gatekeeper System Administrator's Guide sections Attribute: StoreCDRs and Attribute: StoreAlarms.

For general information about EDRs, CDRs, and alarms see Oracle Communications Services Gatekeeper System Administrator's Guide Chapter 8, "Managing and Configuring EDRs, CDRs and Alarms." For more detailed information about creating an EDR listener see “Creating an EDR Listener and Generating SNMP MIBs” in the Platform Development Studio Developer's Guide.

For information about setting the expiration of data stored in the database tables, see the Oracle Communications Services Gatekeeper System Administrator's Guide section Storage Data Expiration.

If your Services Gatekeeper implementation has extremely high traffic, such that these three tables are updated with millions of records per day, Oracle recommends that you create a script to clean them and run it ever 2-3 hours. This script would ideally copy all data that arrived after the last cleaning to another table and then delete everything currently in the table. This may not require any server restart.

Creating a Script to Clean SLEE_CHARGING

To clean SLEE_CHARGING, create a shell script or PERL/SQL combination like the following:

  1. Create a table called SLEE_CHARGING_BACKUP to use as a repository for SLEE_CHARGING data.

  2. Create an SQL query that:

    1. Selects all data in SLEE_CHARGING more than 15 minutes old.

      For example, if you run the script every 3 hours, the script would capture 2 hours and 45 minutes worth of data. The exact timing is up to you.

    2. Insert the selected data/rows into SLEE_CHARGING_BACKUP.

    3. Delete the same data from original table

The steps a and b can easily be combined in one SQL query, for example:

insert into slee_charging_bkup(list all columns~ )
select list all the columns~
from slee_charging
where stored_ts millisecs calculated~

Create a similar statement like the one below to archive the data into a new table called SLEE_STATISTICS_DATA:

create table slee_statistics_data_tmp1(
slee_name,
timestamp,
type_id,
transactions,
source_entity,
source_app_id,
datetime,
primary key ( timestamp, type_id )
)
organization index
nocompress
as select slee_name, timestamp, type_id, transactions, source_entity, source_app_id,
to_date(to_char(timestamp'1970-01-01 00:00:00.00' + numtodsinterval(timestamp/1000,'SECOND'), 
'DD-MON-YYYY HH24:MI:SS'),'DD-MON-YYYY HH24:MI:SS') from slee_statistics_data;