Используем модуль тв для смотрешки.
Периодически перестаёт работать тв аккаунтинг. При этом процесс не падает. В логах начинает спамить NP. Синхронизация со смотрёшкой из-за этого тоже перестаёт работать.
На сколько я заметил, это начинается после того, как добавляешь абоненту подписку после перерыва в несколько дней (делаем мы это пока что довольно редко)
Алгоритм такой:
Перезапускаю аккаунтинг. Всё начинает работать. Те договоры, которые не смогли синхронизироваться со смотрешкой из-за падения, успешно синхронизируются после перезапуска. Если заводить новые подписки то тоже всё работает. Так продолжается около недели. Потом, допустим, день-два новых подключений нет. Всё это время аккаунтиг пишет в лог обычные логи:
Код:
mq 10-22/10:13:14 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusChangedTopicEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394668
mq 10-22/10:13:14 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusChangedTopicEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394668
mq 10-22/10:13:14 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394662
mq 10-22/10:13:14 INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Caught event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394662
mq 10-22/10:13:14 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394662
mq 10-22/10:13:14 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394662
mq 10-22/10:13:14 INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Caught event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394662
mq 10-22/10:13:14 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394662
mq 10-22/10:13:15 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192395137
mq 10-22/10:13:15 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192395137
mq 10-22/10:18:34 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusChangedTopicEvent] moduleId: 0; pluginId: no; cid: 541; scid: -1; userId: 0; timestamp: 1540192714078
mq 10-22/10:18:34 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusChangedTopicEvent] moduleId: 0; pluginId: no; cid: 541; scid: -1; userId: 0; timestamp: 1540192714078
Но как только заводишь нового абонента - он начинает спамить NP:
Код:
mq 10-22/15:16:54 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 751; scid: -1; userId: 0; timestamp: 1540210614986
mq 10-22/15:17:05 INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Caught event: Event[ru.bitel.bgbilling.modules.tv.api.common.event.TvAccountModifiedEvent] moduleId: 9; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210625381
mq 10-22/15:17:05 INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Adding new accountRuntime: 133
mq 10-22/15:17:05 INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Loading TvAccount from database.
mq 10-22/15:17:05 INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Adding TvAccountRuntime: 133
mq 10-22/15:17:05 INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - ContractId: 1497; tvAccountId: 133
Аккаунт 123456
Products [] TariffModuleTreeSet []
Device state: 0; serviceIds:
mq 10-22/15:17:05 INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Caught event: Event[ru.bitel.bgbilling.modules.tv.access.event.TvAccountDeviceStateAndOptionsModifiedEvent] moduleId: 9; pluginId: no; cid: global; scid: -1; userId: -1; deviceId: 2; tvAccountId: 133; state: 1; optionIds: ; timestamp: 1540210625948
accounting 10-22/15:17:08 INFO [tvApplication-p-3-t-2] TvAccountRuntimeMap - Adding new accountRuntime: 133
accounting 10-22/15:17:08 INFO [tvApplication-p-3-t-2] TvAccountRuntimeMap - Loading TvAccount from database.
accounting 10-22/15:17:08 INFO [tvApplication-p-3-t-2] TvAccountRuntimeMap - Adding TvAccountRuntime: 133
accounting 10-22/15:17:08 INFO [tvApplication-p-3-t-2] TvAccountRuntimeMap - ContractId: 1497; tvAccountId: 133
Аккаунт 123456
Products [] TariffModuleTreeSet []
Device state: 1; serviceIds:
mq 10-22/15:17:33 INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Caught event: Event[ru.bitel.bgbilling.kernel.tariff.server.event.ContractTariffChangedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 0; timestamp: 1540210653463
accounting 10-22/15:17:43 INFO [accwrkr-1-p-7-t-1] EventTrackingWorker - Processed 1 inetServs for 1 ms.
mq 10-22/15:17:51 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210671254
mq 10-22/15:17:51 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210671254
accounting 10-22/15:17:53 INFO [accwrkr-1-p-7-t-1] EventTrackingWorker - Processed 1 inetServs for 2 ms.
mq 10-22/15:17:58 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210677931
mq 10-22/15:17:58 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210677931
accounting 10-22/15:18:03 INFO [accwrkr-1-p-7-t-1] EventTrackingWorker - Processed 1 inetServs for 2 ms.
mq 10-22/15:18:04 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210683942
mq 10-22/15:18:04 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210683942
mq 10-22/15:18:10 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210689971
mq 10-22/15:18:10 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210689971
accounting 10-22/15:18:13 INFO [accwrkr-1-p-7-t-1] EventTrackingWorker - Processed 1 inetServs for 2 ms.
mq 10-22/15:19:09 INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Caught event: Event[ru.bitel.bgbilling.kernel.tariff.server.event.ContractTariffChangedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 0; timestamp: 1540210749462
accounting 10-22/15:19:13 ERROR [accwrkr-1-p-7-t-1] WorkerTask -
java.lang.NullPointerException
at ru.bitel.bgbilling.modules.tv.accounting.worker.TvAccountTrackingWorker.process(TvAccountTrackingWorker.java:181)
at ru.bitel.bgbilling.modules.tv.accounting.worker.TvAccountTrackingWorker.process(TvAccountTrackingWorker.java:126)
at ru.bitel.bgbilling.modules.tv.accounting.worker.EventTrackingWorker.process(EventTrackingWorker.java:198)
at ru.bitel.bgbilling.modules.tv.accounting.worker.EventTrackingWorker.runImpl(EventTrackingWorker.java:158)
at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:87)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:46)
accounting 10-22/15:19:43 ERROR [accwrkr-1-p-7-t-1] WorkerTask -
java.lang.NullPointerException
at ru.bitel.bgbilling.modules.tv.accounting.worker.TvAccountTrackingWorker.process(TvAccountTrackingWorker.java:181)
at ru.bitel.bgbilling.modules.tv.accounting.worker.TvAccountTrackingWorker.runImpl(TvAccountTrackingWorker.java:101)
at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:87)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:46)
mq 10-22/15:20:00 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1418; scid: -1; userId: 0; timestamp: 1540210800190
mq 10-22/15:20:00 INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1418; scid: -1; userId: 0; timestamp: 1540210800190
accounting 10-22/15:20:43 ERROR [accwrkr-1-p-7-t-1] WorkerTask -
java.lang.NullPointerException
at ru.bitel.bgbilling.modules.tv.accounting.worker.TvAccountTrackingWorker.process(TvAccountTrackingWorker.java:181)
at ru.bitel.bgbilling.modules.tv.accounting.worker.TvAccountTrackingWorker.runImpl(TvAccountTrackingWorker.java:101)
at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:87)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:46)
Я не исключаю возможности, что оператор заводит подписку как-то неправильно. Может быть, забывает выставить тариф. Но это не должно приводить к тому, что аккаунтинг перестаёт работать вообще.
Код:
Сервер: вер. 7.0.1409 / 03.09.2018 20:20:58
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
tv: вер. 7.0.302 / 05.09.2018 21:00:55