BILLmanager 5 Documentation

The service stops spontaneously

Problem

This situation may occur in case:

  • the client has exceeded the limit specified in the addon settings;
  • not enough funds to make the payment.

Solution

The client has exceeded the limit specified in the addon settings

  1. Check in the tariff plan settings or service settings what value is specified in the limit.
  2. Check the service history for when and by whom it was disabled. For example, if in the service history it was stopped by pmispmgr5 service.postsuspend, you can view the /usr/local/mgr5/var/pmispmgr5.log at the time of stopping and check the cause.
    The moment of service stopping due to exceeding the limit of the addon in the /usr/local/mgr5/var/billmaintain.log will appear as follows:

    Service stopping in the log
    Mar 3 00:24:36 [9686:1] rpc EXTINFO Query('func=service.statdaily&item=323911&statdate=2020%2D03%2D02')
    Mar 3 00:24:36 [9686:1] libmgr ERROR Error: Type: 'stat_addon_over_limit' Object: '' Value: ''
    Mar 3 00:24:37 [9686:1] sbin_utils INFO QUERY: func=service.autosuspend&item=323911&stat=on
    Note:
    If the limit is exceeded, the client must receive a notification.

Not enough funds for payment

  1. Check the balance, time of last topup, notifications.
  2. Check billmaintain.log for any errors.

    An example of a query with error
    May  5 00:19:17 [8821:1] rpc EXTINFO Query('func=service.billdaily&item=310598&from=daily')
    May  5 00:19:17 [8821:1] rpc DEBUG mgrclient.cpp:215 Result xml: 
    <doc><error type="not_enough_money" lang="en" code="1"><param name="amount">0.1048</param><param name="have">0.00</param><param name="currency">EUR</param><param name="deficit">0.1048</param><param name="limit">0.00</param><param name="reserved">0.00</param><param name="available">0.00</param><stack><action level="30" user="root">service.billdaily</action></stack><group>insufficient funds to complete the operation. Required amount  __amount__ __currency__. Your current balance: __have__ __currency__, credit limit __limit__ </group><msg>insufficient funds to complete the operation. Required amount  0.1048 EUR. Your current balance: 0.00 EUR, credit limit 0.00 </msg></error></doc>
    
    May  5 00:19:17 [8821:1] backtrace EXTINFO mgr_client::Result::Result(mgr_xml::Xml const&, bool, bool) (lib/libmgr.so.5.246.2 + 0x370) [*0x7f451f67d8e6]
    May  5 00:19:17 [8821:1] backtrace EXTINFO mgr_client::Local::DoQuery(std::string const&) (lib/libmgr.so.5.246.2 + 0x5d6) [*0x7f451f678c9b]
    May  5 00:19:17 [8821:1] backtrace EXTINFO mgr_client::Client::Query(std::string const&) (lib/libmgr.so.5.246.2 + 0x42b) [*0x7f451f9fa36a]
    May  5 00:19:17 [8821:1] backtrace EXTINFO sbin::ClientQuery(std::string const&) (libexec/billmaintain.so + 0x4a) [*0x7f451f9fa75f]
    May  5 00:19:17 [8821:1] backtrace EXTINFO sbin::ClientQuerySafe(std::string const&) (libexec/billmaintain.so + 0x5f) [*0x7f451f9b04bf]
    May  5 00:19:17 [8821:1] backtrace EXTINFO BillItem(int, bool, std::string const&) (libexec/billmaintain.so + 0x10f) [*0x7f451f9d280b]
    May  5 00:19:17 [8821:1] backtrace EXTINFO BillDaily() (libexec/billmaintain.so + 0xadb) [*0x7f451f9d5b90]
    May  5 00:19:17 [8821:1] backtrace EXTINFO ??? (libexec/billmaintain.so + 0x2090) [*0x401359]
    May  5 00:19:17 [8821:1] backtrace EXTINFO ??? (/usr/local/mgr5/sbin/billmaintain + 0x0) [*0x7f451fc56555]
    May  5 00:19:17 [8821:1] backtrace EXTINFO ??? (/lib64/libc.so.6 + 0xf5) [*0x4015f7]
    May  5 00:19:17 [8821:1] backtrace EXTINFO ??? (/usr/local/mgr5/sbin/billmaintain + 0x0) [*(nil)]
    May  5 00:19:17 [8821:1] libmgr ERROR Error: Type: 'not_enough_money' Object: '' Value: ''