5 Configuring the Rated Event Loader Infranet.properties File

Learn how to configure the Oracle Communications Billing and Revenue Management (BRM) Rated Event Loader (RE Loader) Infranet.properties file.

This information applies only to the original processing method.

Topics in this chapter:

See also:

Configuring the RE Loader Infranet.properties File

To configure RE Loader, you edit the RE Loader Infranet.properties file.

The Infranet.properties file contains configuration information for processing CDR files, such as the location of the RE Loader processing directory, how to connect to the BRM database, and how to process specific events.

Note:

The entry descriptions might include one or both of the following values:

  • Initial value: The value to which the RE Loader installation program sets the entry.

  • Default: The value that RE Loader uses when the entry is missing or has no value.

To configure your RE Loader Infranet.properties file:

  1. Open the BRM_home/apps/pin_rel/Infranet.properties file in a text editor.

  2. Edit the file.

  3. Save and close the file.

BRM Database Connection

Configure the following entries in the RE Loader Infranet.properties file to connect to the BRM database.

Table 5-1 Database Connection Entries

Entry Description

infranet.rel.dbtype

Specifies the BRM database type.

The initial value is oracle.

The default is ORACLE.

infranet.rel.dbname

Specifies the BRM database name.

Note: Your database name is the TNSNAMES alias in the Oracle_home/network/admin/tnsnames.ora file.

Ensure that this value is correct for your system.

infranet.rel.userid

Specifies the user ID for connecting to the BRM database.

Ensure that this value is correct for your system.

infranet.rel.password

Specifies the password for connecting to the BRM database.

Ensure that this value is correct for your system.

infranet.rel.dbhost

Specifies the database machine's host name.

infranet.rel.dbport

Specifies the database port number. The initial value and the default are 1433.

infranet.rel.partition_set_number

Specifies the partition set number, from 1 through 7. This entry applies only to BRM databases with multiple delayed partition sets. The initial value and the default are 1.

  • 1 uses delayed partition set P_1D to P_12D.

  • 2 uses delayed partition set P_1D to P_12D2.

  • 3 uses delayed partition set P_1D to P_12D3.

  • 4 uses delayed partition set P_1D to P_12D4.

  • 5 uses delayed partition set P_1D to P_12D5.

  • 6 uses delayed partition set P_1D to P_12D6.

  • 7 uses delayed partition set P_1D to P_12D7.

BRM Server Connection

Configure the following entries in the RE Loader Infranet.properties file to configure how log files are created.

Table 5-2 BRM Server Connection Entries

Entry Description

infranet.connection

Specifies the user login name. For example:

infranet.connection=pcp://root.0.0.0.1:password@localhost:11960/service/pcm_client 

RE Loader uses this Connection Manager (CM) connection to log audit information.

Important: RE Loader writes audit information to the database specified in this entry. If you use a multischema system, you might want to modify this entry to write audit information to the schema where the records are loaded.

infranet.login.type

Specifies whether RE Loader requires a login name and password to log in to BRM.

  • 0 specifies that a login name and password are not required.

  • 1 specifies that a login name and password are required.

The initial value is 1.

No default exists.

infranet.failover

In high-availability systems, specifies the secondary CM connection. For example:

infranet.failover.1 = pcp://root.0.0.0.db_no:password@failover_host:failover_port/service/pcm_client

infranet.rel.polling_interval

Specifies the interval, in milliseconds, that RE Loader checks the database to see whether another process is loading. The initial value and the default are 1000.

The polling interval depends on the number and size of your input files. If you have very large files, make the polling interval longer. If you have many small files, make the interval shorter.

infranet.rel.polling_time_out

Specifies the time, in milliseconds, that RE Loader waits to load events before exiting. The initial value and the default are 600000.

The time-out period depends on the number and size of your input files and how many parallel RE Loader processes are running. If you have very large files or many processes, make the time-out period longer.

infranet.rel.updater_threads

Specifies the number of threads dedicated to the update and preupdate stored procedures. You can specify a fixed number of threads or configure RE Loader to adjust the number of threads based on the number of database objects to update.

To specify a fixed number of threads, set the entry equal to the desired number of threads.

To configure RE Loader to automatically adjust the number of threads, set the entry to 0. RE Loader spawns the number of threads shown below:

Less than 1,000 objects: 2 threads

Between 1,000 and 200,000 objects: 4 threads

More than 200,000 objects: 8 threads

The initial value is 4.

The default is 1.

Note: Specifying a number of threads that exceeds the number of CPUs in your system may cause deadlock due to a lack of system resources. If you set the infranet.rel.updater_threads entry to a value greater than 8, RE Loader returns a warning message and continues processing.

infranet.rel.validate_dbnumber

Specifies whether RE Loader performs an extra validation step to ensure that it is loading a call detail record (CDR) file into the correct database schema. The initial value and the default are true.

Important: Use this option only for debugging. In a production environment, set this to False. Setting it to True degrades performance while loading data into the database.

See "Turning Off Database Verification to Improve Processing Performance".

infranet.rel.validate_indexes

Specifies whether RE Loader verifies that the database indexes are correct before loading data into the database.

The initial value is false.

The default is true.

Important: Use this option only for debugging. In a production environment, set this to false. Setting it to true degrades performance while loading data into the database. See "Turning Off Index Verification to Improve Database Loading Performance".

infranet.rel.max_increment_by

Specifies the number of database schemas in your system. This value is used by the POID generation algorithm to ensure that POIDs are unique across all database schemas in your system.

The initial value and the default are 20.

See "Preventing POID Errors in Multischema Systems".

infranet.rel.sort.limit

Defines the maximum number of CDRs that the preprocessing script can sort by account ID. This improves performance later during the balance updating process.

If the number of CDRs in the input file is greater than the infranet.rel.sort.limit value, the preprocessing script does not sort the CDRs.

The initial value is 100000.

The default is 500000.

RE Loader Daemon

To run the RE Loader daemon, add or modify the RE Loader daemon Infranet.properties file entries shown in Table 5-3.

Table 5-3 RE Loader Daemon Entries

Entry Description

batch.check.interval

Specifies the time interval, in seconds, to monitor files from the output directory. The default is 5.

batch.file.rename.extension

Specifies the file name extension that the RE Loader daemon uses to rename the interim files before processing them. The default is .bc.

batch.start.highload.time

Specifies the start time of your system's busiest period. Specify the hour, minute, and second, in hhmmss format, using the 24-hour clock.

batch.end.highload.time

Specifies the start time of your system's slowest period. Specify the hour, minute, and second, in hhmmss format, using the 24-hour clock.

batch.lock.socket.addr

Specifies the port address of the process.

batch.rel.archiveDir

Specifies the full path to the directory where a successfully processed file is archived. This is the default archive directory for all the event handlers.

batch.rel.rejectDir

Specifies the full path to the directory where an unsuccessfully processed file is stored. This is the default reject directory for all the event handlers.

batch.random.events

Specifies the name of the event to process. If you have two or more types of events, separate each with a comma, but no blank space. For example, TEL,SMS,GPRS.

event.max.at.highload.time

Specifies the highest number of the RE Loader threads permitted to run simultaneously for this event during the high-load time (that is, from batch.start.highload.time to batch.end.highload.time).

For example, if event.max.at.highload.time is 2, two threads are permitted to run simultaneously for this event during the high-load time.

event.max.at.lowload.time

Specifies the highest number of the RE Loader threads permitted to run simultaneously for this event during the low-load time (that is, from batch.end.highload.time to batch.start.highload.time).

For example, if event.max.at.lowload.time is 2, two threads are permitted to run simultaneously for this event during the low-load time.

event.file.location

Specifies the full path name of the directory to monitor for the arrival of new files that match the pattern in event.file.pattern.

event.file.pattern

Specifies the file name pattern to look for. You can use an asterisk (*) to represent zero or more characters in the file name. No other wildcards are supported.

event.archiveDir

(Optional) Specifies the full path to the directory where a successfully processed file is archived for a particular event handler. When multiple event handlers are configured, configure this entry to specify the directory that archives files from a particular event handler.

event.rejectDir

(Optional) Specifies the full path to the directory where an unsuccessfully processed file is stored for a particular event handler. When multiple event handlers are configured, configure this entry to specify the directory that stores files from a particular event handler.

event.file.type

Specifies the type of input CDR file.

  • ECE_PRE_SPLIT specifies that RE Loader uses ECE generated preprocessed control files and data files.

  • STANDARD specifies that RE Loader uses pipeline generated input files.

The default is STANDARD.

Note: You cannot specify both ECE_PRE_SPLIT and STANDARD in the same Infranet.properties file.

RE Loader Processing

Configure the following entries in the RE Loader Infranet.properties file to configure how RE Loader retrieves CDR files and loads events. Set the default configuration entries shown in Table 5-4. The configuration information in this section applies to all events except for those defined in the storable class-specific section.

Table 5-4 Default Configuration Entries

Entry Description

infranet.rel.default.interim_directory

Specifies the RE Loader processing directory. This is the location where RE Formatter loads the CDR files.

The initial value is BRM_home/apps/pin_rel.

The default is ./.

infranet.rel.default.supported_creation_processes

Specifies which creation processes are supported. As initially configured, RE Loader supports all creation processes:

  • PIN_REL_TRANSFORM_CDR specifies that the file was last processed by the pin_rel_transform_cdr.pl script and therefore contains discount events.

  • SUSPENSE_CREATE specifies that the RE Loader process creates new suspense records in the suspended usage table.

  • SUSPENSE_UPDATE specifies that the RE Loader process updates existing suspense records in the suspended usage table.

By default, RE Loader supports only the PIN_REL_TRANSFORM_CDR process.

infranet.rel.default.failure_script

Specifies the script called when RE Loader attempts to reload events that previously failed to load into the database. The initial value and the default are pin_rel_handle_interim_files.pl.

infranet.rel.default.failure_flags

Specifies the flag passed to the failure script.

You can specify the following flags in the default pin_rel_handle_interim_files.pl failure script:

  • 0 to do nothing.

  • 1 to rename the interim files by appending .saved.timestamp to the file name.

  • 2 to delete the temporary files.

  • 3 to move the unsuccessfully processed data files generated by ECE to the reject subdirectory.

The initial value and the default are 1.

infranet.rel.default.preprocess_script

Specifies the name of the preprocessing script. The initial value and the default are pin_rel_preprocess_cdr.pl.

infranet.rel.default.preprocess_flags

Specifies the flag passed to the preprocessing script. The initial value and the default are 0.

infranet.rel.default.load_util

Specifies the name of the load utility.

Important: If you use Oracle SQL Loader, you must use conventional-path loading. BRM does not support direct-path loading. You must also use the APPEND option in your RE Loader control files. Do not use the TRUNCATE option. Specify the conventional-path loading mode as follows:

sqlldr direct=false

The initial value and the default are sqlldr direct=false streamsize=5000000 readsize=10000000.

infranet.rel.default.preupdater_sproc

Specifies the name of the preupdate stored procedure.

The initial value and the default are pin_rel.pin_rel_pre_updater_sp.

infranet.rel.default.preupdater_batch_size

Specifies the size of the preupdate batch.

The initial value and the default are 5.

infranet.rel.default.preupdater_flags

Specifies the flag passed to the preupdate stored procedure. The initial value and the default are 1.

infranet.rel.default.updater_sproc

Specifies the name of the update stored procedure.

The initial value and the default are pin_rel.pin_rel_updater_sp.

infranet.rel.default.updater_batch_size

Specifies the size of the update batch.

The initial value and the default are 5.

infranet.rel.default.updater_flags

Specifies the flag passed to the update stored procedure. The initial value and the default are 1.

infranet.rel.default.success_script

Specifies the script called when RE Loader successfully loads a batch of events into the BRM database. The initial value and the default are pin_rel_handle_interim_files.pl.

infranet.rel.default.success_flags

Specifies the flag passed to the success script.

You can specify the following flags in the default pin_rel_handle_interim_files.pl script:

  • 0 to do nothing.

  • 1 to rename the interim files by appending .saved.timestamp to the file name.

  • 2 to delete the temporary files.

The initial value and the default are 2.

infranet.rel.default.storable_class

Specifies the storable class you are loading. The initial value and the default are /event/delayed/session/gprs.

Important: If you use Oracle SQL Loader, use the APPEND option in your RE Loader control files. Do not use the TRUNCATE option.

infranet.rel.default.creation_process

Specifies whether the file contains prerated, rerated, or discount events:

  • PIN_REL_TRANSFORM_CDR specifies that the file was last processed by the pin_rel_transform_cdr.pl script and therefore contains discount events.

Important: RE Loader can dynamically source the creation process from the event record header file. Uncomment this entry only if all of your event record files come from the same creation process.

infranet.rel.default.ece_control_file_directory

Specifies the location of the control files generated by BRM Elastic Charging Engine (ECE).The default is BRM_home/apps/pin_rel.

infranet.rel.default.ece_data_file_directory

Specifies the location of the data files generated by ECE.The default is BRM_home/apps/pin_rel.

infranet.rel.ece_preprocessed

Specifies whether RE Loader uses ECE generated preprocessed control files and data files:

  • TRUE specifies that RE Loader uses ECE generated preprocessed control files and data files.

  • FALSE specifies that RE Loader uses pipeline generated input files.

The default is FALSE.

Loading Event Records

Configure the following entries in the RE Loader Infranet.properties file to configure how ER Loader handles event records.

Table 5-5 RE Loader Event Handling Configuration Entries

Entry Description

infranet.rel.use_end_time

Specifies whether RE Loader uses the start time or end time of the rated event for deciding the billing cycle.

  • 1 specifies that RE Loader uses the end time of the rated event for deciding the billing cycle. The initial value and the default are 1.

  • 0 specifies that RE Loader uses the start time of the rated event for deciding the billing cycle.

infranet.rel.default.header.record_type

Specifies the header record type. The initial value and the default are 010.

infranet.rel.default.detail.record_type

Specifies the detail record type. The initial value and the default are 020.

infranet.rel.default.trailer.record_type

Specifies the trailer record type. The initial value and the default are 090.

infranet.rel.field.delimiter

Specifies the delimiter symbol. The initial value and the default are \t for tabs.

infranet.rel.header.position.storable_class

Specifies which field in the event record file contains the storable class name. The initial value and the default are 20.

Note: When you set this field to 0, RE Loader uses the default storable class specified in infranet.rel.default.storable_class.

infranet.rel.header.position.creation_process

Specifies which field in the event record file contains the name of the creation process (for example, whether the file contains prerated, rerated, or discount events). The initial value and the default are 18.

Note: You can specify 0 if you do not need this field validated.

infranet.rel.header.position.sender

Specifies which field in the event record file contains the sender. The initial value and the default are 3.

infranet.rel.header.position.recipient

Specifies which field in the event record file contains the recipient. The initial value and the default are 4.

infranet.rel.header.position.file_sequence

Specifies which field in the event record file contains the file sequence number. The initial value and the default are 5.

Note: You can specify 0 if you do not need this field validated.

infranet.rel.header.position.creation_timestamp

Specifies which field in the event record file contains the creation timestamp. The initial value and the default are 7.

Note: You can specify 0 if you do not need this field validated.

infranet.rel.trailer.position.record_count

Specifies the field position of the field that contains the total number of detail records in the output file.

The initial value and the default are 7. The field position starts with 1.

infranet.rel.file_extension.disc.transform_script

By default, this entry is commented out.

The initial value is pin_rel_transform_cdr.pl.

No default exists.

infranet.rel.file_extension.disc.transform_flags

By default, this entry is commented out.

The initial value is 0.

No default exists.

Storable Class Configuration

To override the default settings for the specified storable class, set the storable class-specific Infranet.properties entries shown in Table 5-6.

For each storable class, only the infranet.rel.storable_class.classname.number_of_tables and infranet.rel.storable_class.classname.table.N.name entries are mandatory. RE Loader uses the default settings for any undefined storable class-specific entries.

When editing these entries:

  • Create a set of entries for each event you want to load.

  • Replace classname with the appropriate storable class name. For example, use event_delayed_session_gprs for the /event/delayed/session/gprs storable class.

  • Create a set of *.table.N.* entries for each table. For example, if the storable class contains three tables, create a set of *.table.1.* entries, a set of *.table.2.* entries, and a set of *.table.3.* entries.

Table 5-6 Storable Class-Specific Configuration Entries

Entry Description

infranet.rel.storable_class.classname.interim_directory

RE Loader processing directory. This is the location where preprocessed events are temporarily stored before they are loaded.

infranet.rel.storable_class.classname.supported_creation_processes

Specifies whether the file contains prerated, rerated, or discount events.

infranet.rel.storable_class.classname.failure_script

Specifies the script to call when RE Loader attempts to load events that previously failed to load into the database.

infranet.rel.storable_class.classname.failure_flags

Specifies the flag to pass to the failure script.

infranet.rel.storable_class.classname.preprocess_script

Specifies the name of the preprocessing script.

infranet.rel.storable_class.classname.preprocess_flags

Specifies the flag to pass to the preprocessing script.

infranet.rel.storable_class.classname.number_of_tables

Specifies the number of tables in the storable class.

Important: This entry is mandatory for all types of events.

infranet.rel.storable_class.classname.table.N.name

Specifies the name of a storable class table.

Important: This entry is mandatory for all types of events.

infranet.rel.storable_class.classname.table.N.load_util

Specifies the name of the load utility.

Important: If you use Oracle SQL Loader, you must use conventional-path loading. BRM does not support direct-path loading. You must also use the APPEND option in your RE Loader control files. Do not use the TRUNCATE option. Specify the conventional-path loading mode as follows:

sqlldr direct=false

infranet.rel.storable_class.classname.table.N.control_file

Specifies the control file to use when loading the data file into the database.

infranet.rel.storable_class.classname.preupdater_sproc

Specifies the name of the preupdater stored procedure.

infranet.rel.storable_class.classname.preupdater_batch_size

Specifies the preupdater batch size.

infranet.rel.storable_class.classname.preupdater_flags

Specifies the flag to pass to the preupdater stored procedure.

infranet.rel.storable_class.classname.updater_sproc

Specifies the name of the updater stored procedure.

infranet.rel.storable_class.classname.updater_batch_size

Specifies the updater batch size.

infranet.rel.storable_class.classname.updater_flags

Specifies the flag to pass to the updater stored procedure.

infranet.rel.storable_class.classname.success_script

Specifies the script to call when RE Loader successfully loads a data file into the BRM database.

infranet.rel.storable_class.classname.success_flags

Specifies the flag to pass to the success script when RE Loader successfully loads a data file into the BRM database.

RE Loader Log Files

Configure the following entries in the RE Loader Infranet.properties file to configure how log files are created.

Table 5-7 RE Loader Log File Configuration Entries

Entry Description

infranet.log.file

Specifies the name of the RE Loader log file.

The initial value is rel.pinlog.

No default exists.

infranet.log.name

Specifies the name of the application.

The initial value is REL for RE Loader.

No default exists.

infranet.log.level

Specifies the log reporting level:

  • 1 specifies error-level reporting.

  • 2 specifies warning-level reporting.

  • 3 specifies debug-level reporting.

The initial value is 1.

The default is String.valueOf(ErrorLog.Error) (equivalent to 1).

See "Setting the Reporting Level for Logging Messages" in BRM System Administrator's Guide.

infranet.log.logallebuf

Specifies whether RE Loader automatically logs all EbufExceptions.

The initial value is true.

No default exists.

infranet.rel.custom_error_codes

Specifies the name of the custom error code file.

The initial value is CustomErrorCodes.properties.

No default exists.

To move this file from its default location, you must create a symbolic link between the name of the file and its new location. To create this link, go to the BRM_home/apps/pin_rel directory and enter the following at the command prompt:

$ ln -s path_to_where_file_was_moved /CustomErrorCodes.properties ./CustomErrorCodes.properties