forum.bitel.ru http://forum.bitel.ru/ |
|
Нет списания за активацию агента http://forum.bitel.ru/viewtopic.php?f=37&t=5975 |
Страница 1 из 1 |
Автор: | Therin [ 10 окт 2011, 16:05 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
up |
Автор: | Therin [ 11 окт 2011, 11:07 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
Судя по ошибке, неправильно отрабатывает код в drweb.jar Код: if ((agent.isNewAgent()) && (tariffAVD.getSidForNew() != -1)) { sid = tariffAVD.getSidForNew(); } else { sid = tariffAVD.getSid(); } Хотя в таблице тарифов они есть Код: mysql> SELECT * FROM `bgbilling`.`drweb_tariffs_17`; +----+-----------------+-------------+-----+----------------+--------------+----------------+--------------+-------------+----------------+--------------+---------+ | id | title | group_title | sid | date_from_view | date_to_view | date_from_work | date_to_work | next_tariff | group_for_view | only_for_new | sid_new | +----+-----------------+-------------+-----+----------------+--------------+----------------+--------------+-------------+----------------+--------------+---------+ | 9 | Dr.Web �������� | AV+AS | 48 | NULL | NULL | NULL | NULL | 9 | | 0 | 48 | | 10 | Dr.Web ������� | AV+AS+PC | 49 | NULL | NULL | NULL | NULL | 9 | | 0 | 49 | | 8 | Dr.Web ������� | AV | 47 | NULL | NULL | NULL | NULL | 9 | | 0 | 47 | +----+-----------------+-------------+-----+----------------+--------------+----------------+--------------+-------------+----------------+--------------+---------+ 3 rows in set (0.00 sec) И агент тоже присутствует в базе. Код: mysql> SELECT * FROM `bgbilling`.`drweb_contract_agent_17`; +----+------+--------------------------------------+-------------+-------------+----------------------------------------------------------------------------------------------+------------+--------+-------------+-----------+-------------+------+------------+-------------+-----------+----------------+-----------+ | id | cid | agent_uuid | group_title | description | url | expires | status | block_begin | block_end | next_status | data | lock_agent | graceperiod | tariff_id | next_tariff_id | new_agent | +----+------+--------------------------------------+-------------+-------------+----------------------------------------------------------------------------------------------+------------+--------+-------------+-----------+-------------+------+------------+-------------+-----------+----------------+-----------+ | 11 | 1531 | 42460c66-9396-4665-89ba-84fe594cd720 | | test_2 | http://XXX.YYYYYY.ru:9080/avdeskuser/download.ds?id=42460c66-9396-4665-89ba-84fe594cd720 | 2011-10-31 | 1 | NULL | NULL | 0 | NULL | 0 | 0 | 8 | -1 | 1 | +----+------+--------------------------------------+-------------+-------------+----------------------------------------------------------------------------------------------+------------+--------+-------------+-----------+-------------+------+------------+-------------+-----------+----------------+-----------+ 1 row in set (0.00 sec) Разработчики ответьте уже что-нибудь. |
Автор: | Boris [ 12 окт 2011, 10:27 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
Тариф должен присутствовать первого числа месяца, т.к. в drweb нет смены тарифа по ходу месяца. Т.е. если он тсоит с 9го то это уже как бы на следующий месяц. А вот с null pointer пока не понятно, насколько я понял у вас пока в базе вообще один агент? |
Автор: | Therin [ 12 окт 2011, 13:46 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
Да в базе один агент, на тестовом договоре. Цитата: Тариф должен присутствовать первого числа месяца, т.к. в drweb нет смены тарифа по ходу месяца. Т.е. если клиент будет заведен в середине месяца и он активирует подписку, в момент активации у него ничего не спишется ? |
Автор: | Boris [ 12 окт 2011, 14:00 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
Therin писал(а): Т.е. если клиент будет заведен в середине месяца и он активирует подписку, в момент активации у него ничего не спишется ? Да, это особенность , что тарификация производится по тарифу на начало месяца, собственно как раз для этого и есть льготный период (наколько я знаю, за первый неполный месяц drweb не берет оплаты(хотя возможно это зависит от вашего с ними договора)), а если активация 29 произошла то спишем за весь месяц и через пару дней за следующий? В принципе можно сделать чтобы искал тариф первый в этом месяце, по которому тарифицируется. Если тариф с 1го, то задача "Начисления Dr.Web" все равно ошибки выдает, если ее раз в минуту поставить? По идее достаточно раз в день, и одну в первый час, первого числа месяца, для полного пере обсчета предыдущего месяца. Но все рано ошибок при периоде минута быть не должно. |
Автор: | Therin [ 12 окт 2011, 16:02 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
Boris писал(а): Therin писал(а): Т.е. если клиент будет заведен в середине месяца и он активирует подписку, в момент активации у него ничего не спишется ? Да, это особенность , что тарификация производится по тарифу на начало месяца, собственно как раз для этого и есть льготный период (наколько я знаю, за первый неполный месяц drweb не берет оплаты(хотя возможно это зависит от вашего с ними договора)), а если активация 29 произошла то спишем за весь месяц и через пару дней за следующий? В принципе можно сделать чтобы искал тариф первый в этом месяце, по которому тарифицируется. Если тариф с 1го, то задача "Начисления Dr.Web" все равно ошибки выдает, если ее раз в минуту поставить? По идее достаточно раз в день, и одну в первый час, первого числа месяца, для полного пере обсчета предыдущего месяца. Но все рано ошибок при периоде минута быть не должно. В документации сказано Цитата: Услуга активации - определяет услугу, по которой будет начисляться наработка в месяц активации агента (месяц первого платежа). Т.е. насколько я понимаю в месяц активации должен списывать по услуге, которая определена в тарифе модуля. Такая логика определена в документации, а какую услугу и какую цену за эту услугу в глобальном тарифе для пользователя выставить определяем мы. Получается, что биллинг этого не делает, хотя в 5.0 он в момент активации подписки снимал расход за услугу вне зависимости когда она была активирована ( мне кажется, что это не должно отличаться в разных версиях биллинга). |
Автор: | Boris [ 12 окт 2011, 16:14 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
Хорошо это поправлю. Если нет тарифа на первое число, то будет браться тот который можно использовать. Но менять тариф в середине месяца не получиться, т.е. если есть тариф на первое число, то будет браться из него . |
Автор: | Boris [ 13 окт 2011, 18:39 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
Поправил, обновитесь, попробуйте. |
Автор: | Therin [ 14 окт 2011, 09:24 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
Обновил модуль. Создал тестовый договор, при активации агента списание не прошло. Задача "Начисление DrWeb" также заканчивается ошибкой. Код: 10-14/10:11:00 DEBUG [Thread-6] TaskExecuter - Looking tasks 10-14/10:11:00 INFO [Thread-6] TaskExecuter - Starting periodic task ID: 7 ru.bitel.bgbilling.modules.drweb.server.tasks.Calculator 10-14/10:11:00 ERROR [pool-2-thread-3] LoggingPrintStream - java.lang.NullPointerException 10-14/10:11:00 ERROR [pool-2-thread-3] LoggingPrintStream - at ru.bitel.bgbilling.modules.drweb.server.tasks.Calculator.executeTask(Calculator.java:80) 10-14/10:11:00 ERROR [pool-2-thread-3] LoggingPrintStream - at ru.bitel.bgbilling.kernel.task.server.TaskBase.run(TaskBase.java:63) 10-14/10:11:00 ERROR [pool-2-thread-3] LoggingPrintStream - at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) 10-14/10:11:00 ERROR [pool-2-thread-3] LoggingPrintStream - at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 10-14/10:11:00 ERROR [pool-2-thread-3] LoggingPrintStream - at java.lang.Thread.run(Unknown Source) 10-14/10:11:00 INFO [pool-2-thread-3] Calculator - Task finished time=3 ms. При ручном начисление (если период действия тарифа с 14.10.2011) в логах ошибки: Код: scheduler 10-14/10:11:00 ERROR [pool-2-thread-3] LoggingPrintStream - java.lang.NullPointerException
scheduler 10-14/10:11:00 ERROR [pool-2-thread-3] LoggingPrintStream - at ru.bitel.bgbilling.modules.drweb.server.tasks.Calculator.executeTask(Calculator.java:80) scheduler 10-14/10:11:00 ERROR [pool-2-thread-3] LoggingPrintStream - at ru.bitel.bgbilling.kernel.task.server.TaskBase.run(TaskBase.java:63) scheduler 10-14/10:11:00 ERROR [pool-2-thread-3] LoggingPrintStream - at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) scheduler 10-14/10:11:00 ERROR [pool-2-thread-3] LoggingPrintStream - at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) scheduler 10-14/10:11:00 ERROR [pool-2-thread-3] LoggingPrintStream - at java.lang.Thread.run(Unknown Source) scheduler 10-14/10:12:00 ERROR [pool-2-thread-4] LoggingPrintStream - java.lang.NullPointerException scheduler 10-14/10:12:00 ERROR [pool-2-thread-4] LoggingPrintStream - at ru.bitel.bgbilling.modules.drweb.server.tasks.Calculator.executeTask(Calculator.java:80) scheduler 10-14/10:12:00 ERROR [pool-2-thread-4] LoggingPrintStream - at ru.bitel.bgbilling.kernel.task.server.TaskBase.run(TaskBase.java:63) scheduler 10-14/10:12:00 ERROR [pool-2-thread-4] LoggingPrintStream - at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) scheduler 10-14/10:12:00 ERROR [pool-2-thread-4] LoggingPrintStream - at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) scheduler 10-14/10:12:00 ERROR [pool-2-thread-4] LoggingPrintStream - at java.lang.Thread.run(Unknown Source) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - java.io.IOException: Stream closed scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at java.io.BufferedInputStream.getInIfOpen(Unknown Source) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at java.io.BufferedInputStream.fill(Unknown Source) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at java.io.BufferedInputStream.read1(Unknown Source) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at java.io.BufferedInputStream.read(Unknown Source) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at ru.bitel.common.Utils.readByBlock(Utils.java:1123) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at bitel.billing.server.tariff.TariffTreeBuilder.getModuleTariffConfig(TariffTreeBuilder.java:37) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at bitel.billing.server.tariff.TariffModuleTree.init(TariffModuleTree.java:80) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at bitel.billing.server.tariff.TariffModuleTree.load(TariffModuleTree.java:36) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at bitel.billing.server.tariff.TariffTreeSet.getModuleTree(TariffTreeSet.java:52) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at bitel.billing.server.tariff.TariffTreeSet.addTariffTree(TariffTreeSet.java:81) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at bitel.billing.server.contract.bean.ContractManager.getRealtimeTariffTreeSet(ContractManager.java:612) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at bitel.billing.server.contract.bean.ContractManager.getRealtimeTariffTreeSet(ContractManager.java:555) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at ru.bitel.bgbilling.modules.drweb.server.tasks.Calculator.executeTask(Calculator.java:86) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at ru.bitel.bgbilling.kernel.task.server.TaskBase.run(TaskBase.java:63) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at ru.bitel.bgbilling.kernel.task.server.TaskBase.startTask(TaskBase.java:99) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at ru.bitel.bgbilling.modules.drweb.server.tasks.Recalculator.executeTask(Recalculator.java:52) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at bitel.billing.server.task.bean.RunTask.run(RunTask.java:40) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] LoggingPrintStream - at java.lang.Thread.run(Unknown Source) scheduler 10-14/10:13:58 ERROR [pool-1-thread-1] Calculator - Wrong tariff response: accepted => false relevance => -1 REQ: sid => 47 time => 01.10.2011 00:00:00 tariff_id => 8 RESP: HIST: |
Автор: | Boris [ 14 окт 2011, 11:19 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
вы точно обновились, шедулер при этом останавливали? |
Автор: | Therin [ 14 окт 2011, 14:08 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
Обновлял без остановки. Сейчас остановил биллинг,шедулер,даталоадер и установил еще раз. Лог обновления Цитата: root@billing:/usr/local/BGBillingServer# ./bg_installer.sh drweb_5.1_55.zip! 10-14/14:46:22 INFO [main] DefaultServerSetup - Binding javax.jms.ConnectionFactory[org.apache.activemq.ActiveMQConnectionFactory@509f5011] to java:comp/env/mq/connectionFactory 10-14/14:46:22 DEBUG [main] JNDIReferenceFactory - Creating reference: org.apache.activemq.ActiveMQConnectionFactory,org.apache.activemq.ActiveMQConnectionFactory@509f5011 10-14/14:46:22 INFO [main] DefaultServerSetup - Init DB connection pools 10-14/14:46:22 INFO [main] DefaultServerSetup - Binding JDBC pool "master" to java:comp/env/jdbc/master 10-14/14:46:23 INFO [main] DefaultServerSetup - Init trash pools.. Module: drweb already installed. Data extract finished... Extract data => OK Database updated... Install ticket inserted.. Base update => OK Reinit module instanses REINIT module => 17 Module Instance init => OK Executing call AddSchedulerTasks; param: drweb.sc Scheduled class ru.bitel.bgbilling.modules.drweb.server.tasks.ProlongerAVDAgent already exists! Scheduled class ru.bitel.bgbilling.modules.drweb.server.tasks.Calculator already exists! Result => true Executing call PutFile; param: drweb.xml:actions Result => true Executing call PutFile; param: drweb-license.pdf:webroot Result => true Execute calls => OK File's copy finished... File copy => OK Module drweb was successfull installed! Please, restart BGBilling server. При запуске задачи "Начисление DrWeb" раз в минуту Код: 10-14/14:49:00 INFO [pool-2-thread-1] Setup - Load config for mid=17
10-14/14:49:00 ERROR [pool-2-thread-1] LoggingPrintStream - java.lang.NullPointerException 10-14/14:49:00 ERROR [pool-2-thread-1] LoggingPrintStream - at ru.bitel.bgbilling.modules.drweb.server.tasks.Calculator.executeTask(Calculator.java:82) 10-14/14:49:00 ERROR [pool-2-thread-1] LoggingPrintStream - at ru.bitel.bgbilling.kernel.task.server.TaskBase.run(TaskBase.java:63) 10-14/14:49:00 ERROR [pool-2-thread-1] LoggingPrintStream - at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) 10-14/14:49:00 ERROR [pool-2-thread-1] LoggingPrintStream - at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 10-14/14:49:00 ERROR [pool-2-thread-1] LoggingPrintStream - at java.lang.Thread.run(Unknown Source) 10-14/14:49:00 INFO [pool-2-thread-1] Calculator - Task finished time=23 ms. 10-14/14:50:00 DEBUG [Thread-6] TaskExecuter - Looking tasks 10-14/14:50:00 INFO [Thread-6] TaskExecuter - Starting periodic task ID: 7 ru.bitel.bgbilling.modules.drweb.server.tasks.Calculator 10-14/14:50:00 ERROR [pool-2-thread-2] LoggingPrintStream - java.lang.NullPointerException 10-14/14:50:00 ERROR [pool-2-thread-2] LoggingPrintStream - at ru.bitel.bgbilling.modules.drweb.server.tasks.Calculator.executeTask(Calculator.java:82) 10-14/14:50:00 ERROR [pool-2-thread-2] LoggingPrintStream - at ru.bitel.bgbilling.kernel.task.server.TaskBase.run(TaskBase.java:63) 10-14/14:50:00 ERROR [pool-2-thread-2] LoggingPrintStream - at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) 10-14/14:50:00 ERROR [pool-2-thread-2] LoggingPrintStream - at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 10-14/14:50:00 ERROR [pool-2-thread-2] LoggingPrintStream - at java.lang.Thread.run(Unknown Source) 10-14/14:50:00 INFO [pool-2-thread-2] Calculator - Task finished time=9 ms. |
Автор: | Boris [ 14 окт 2011, 15:24 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
а вы можете дать доступ, чтобы у вас на базе посмотреть? |
Автор: | Therin [ 14 окт 2011, 15:41 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
ssh или клиентом ? |
Автор: | Boris [ 14 окт 2011, 16:01 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
лучше ssh но в крайнем случае и клиента хватит , в личку |
Автор: | Therin [ 14 окт 2011, 16:41 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
В личку кинул. Проверил на 711 сборке сервера (стоит на тестовом стенде). Задача "Начисление .." выполняется без ошибок. Только заметил, что стоимость услуги отображается в наработке, но не учтена в исходящем остатке т.е. (входящий остаток 1000, наработка 1, исходящий остаток 1000 ). |
Автор: | Therin [ 17 окт 2011, 15:10 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
Что нибудь прояснилось ? |
Автор: | Boris [ 17 окт 2011, 15:30 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
чейчас зайду к вам, посмотрю. |
Автор: | Therin [ 20 окт 2011, 15:21 ] |
Заголовок сообщения: | Re: Нет списания за активацию агента |
После обновления до 57 билда все работает. Спасибо. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |