9 Troubleshooting

Overview

Introduction

This chapter explains the important processes on each of the server components in Convergent Charging Controller, and describes a number of example troubleshooting methods that can help aid the troubleshooting process before you raise a support ticket.

Possible Problems

Problem scenarios

This table describes problems and their resolution.

Problem Solution
New Rating configuration is not being used.

Check timestamp Tariff configuration last saved, and the value of cacheRefreshInterval in eserv.config section CCS.smcbMacroNodes.

If SMCB should have re-read the configuration, check syslog for errors. If symptoms persist, restart the SLEE and check.

Rating Cache is updated every period (alarm 1003 is logged). Update the statistics on the SMF (using updateStats.sh or update an entry using the screens) and allow the data to be replicated.

Balance type problems

The CCS and BE sections of eserv.config have items that do not directly affect SMCB, but have an effect on the other parts of the system that calculate how much should be charged for the request that SMCB sends the billing engine.

This table describes balance type problems and their resolution.

Problem Solution
The value of the balance type(s) does not change as expected. Check parameters listed below.

This table describes the parameters in eserv.config relevant to SMCB and how they affect charging.

Parameter Purpose of Parameter Possible effect

CCS.ccsRewards.

balanceTypes.

allowed

Lists the Ids of the balance types that can be used for rewards, on a per Service Provider basis Another balance type to the one you are using may also go up in value. If you are using the same balance type then it will appear to go up more than you expect. Check the CCS Rewards screen for configuration.

CCS.ccsRewards.

balanceTypes.

expenditure

Lists the ID of the balance type that records the monthly expenditure, on a per Service Provider basis Only the monthly expenditure should increase as a result of this item. However, if there is another unexpected increase in value for a balance type, check the balance type ID matches the monthly expenditure ID for that Service Provider.

CCS.ccsVWARS

Activation.

balanceTypes.

freeSmsType

Set the balance type ID to use for the FreeSMS credits, on a per Service Provider basis Only the FreeSMS balance type should increase as a result of this item. However, if there is another unexpected increase in value for a balance type, check the balance type ID matches the FreeSMS ID for that Service Provider.

CCS.reservation

Handler.

overrideDiscount

Type

Sets the behavior of the discounts in CCS. If the charge is not as expected, check the discounts setup for that Service Provider, and the expected behavior of them from this item.

CCS.reservation

Handler.

refundBalanceTypes.

balanceTypeId

Sets the Balance Type ID the CCS refunds behavior should use, on a per Service Provider basis. The ID listed is credited when the CCS refunds functionality is used. Check the correct balance type ID is being used.

BE message problems

This table lists messages to BE problems.

Problem Solution
The messages to the BE do not appear to get through. Check parameters listed below.

This table describes the parameters in eserv.config relevant to SMCB and how they affect messages to BE.

Parameter Purpose of Parameter Possible effect

CCS.ccsActions.

maxOutstanding

BeClientMsgs

Maximum outstanding messages beClient will hold before it rejects a request without querying the BEs. Reservations or confirmations to the BE receive an error code of General Error or Could not contact BE. Resolve by increasing the value (more memory use) and restart SLEE.

CCS.ccsService

Library.

IncomingCallBar

Enable

If set to True then if the Call Barring is enabled on the calling number Short Messages do not reach SMCB FN, as the service loader rejects them before the call plan is run. Check the account and account type call barring screens.

CCS.reservation

Handler.

maxReservation

Length

The time the BE will hold a Tariff Reservation before the BE will release it. If the time between the Tariffed reservation and confirmation/revoke is greater than this period, an error is returned saying the Reservation does not exist.

CCS.reservation

Handler.

greedyReservation

LengthLimit

Minimum time for the Tariffed reservation. If a Tariffed reservation is requested for less than this time then the reservation time returned is this minimum, and not the value requested.

CCS.namedEvent

Handler.maxWallet

LockLength

How long a Named Event Reservation will lock the wallet. If a Named Event Reservation is not acknowledged in this time, then the reservation is canceled. This could happen when the BEs are heavily loaded and take longer than this length to Ack the reservation.

CCS.namedEvent

Handler.cascade

The cascade ID to use when the “promotional use” flag is False. When the promotional use flag is false, the cost of the Named Event is charged in the balance type order of the defined cascade. See CCS Named Event screen and Edit Product Type Chargeable Events screen (for per product type overrides).

CCS.namedEvent

Handler.

promo_cascade

The cascade ID to use when the “promotional use” flag is True When the promotional use flag is true, the cost of the Named Event is charged in the balance type order of the defined cascade. See CCS Named Event screen and Edit Product Type Chargeable Events screen (for per product type overrides).

CCS.namedEvent

Handler.reservation

Period

How long a Named Event reservation will last If a Named Event Reservation is not confirmed or revoked in this time the confirmation/reservation will fail.

CCS.namedEvent

Handler.minResync

ReservationLength

Named Event reservations of less than this period will not be copied to the other BE during a BE failover. If a BE failover happens between a reservation and confirmation/revoke, an error is returned saying “reservation does not exist” as it has not been copied to the other BE to handle. This is a trade-off for failover performance.