forum.bitel.ru
http://forum.bitel.ru/

Установка InetOption в тарифе
http://forum.bitel.ru/viewtopic.php?f=44&t=6880
Страница 1 из 1

Автор:  borisk [ 20 июн 2012, 12:18 ]
Заголовок сообщения:  Установка InetOption в тарифе

Добрый день!

Помогите, пожалуйста, разобраться. Установил в тарифе InetOption (см. скриншот). Я хочу чтобы эта опция применялась в serviceModify. Но почему-то она там не работает. А если повесить опцию прямо на сервис - то все замечательно работает. Для получения опций использую метод e.getNewOptions(). Так вот в случае если опция прописана в тарифе - метод возвращает пустой список.

Автор:  Amir [ 20 июн 2012, 13:19 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

А где скриншот?

Автор:  borisk [ 20 июн 2012, 17:01 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Ой

Автор:  Amir [ 20 июн 2012, 17:05 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

После изменения тарифа нажимаете правой кнопкой на корень поддерева Inet - Оповестить об изменениях?
Когда ожидаете, что вызовется serviceModify с этой опцией? Т.е. после какого действия у вас вызывается serviceModify?

Автор:  borisk [ 20 июн 2012, 18:02 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

"оповестить об изменениях" у меня почему-то не активно

Я на самом сервисе выполняю включить/отключить и ожидаю что опция из тарифа будет передаваться. Нет?

Автор:  Amir [ 20 июн 2012, 18:12 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Цитата:
Я на самом сервисе выполняю включить/отключить и ожидаю что опция из тарифа будет передаваться. Нет?
Должно.
Цитата:
"оповестить об изменениях" у меня почему-то не активно
Возможно при изменении так не сделали - в приложениях остался кэш старого дерева. В модуле inet кэш сохранятся до перезагрузки или до этого оповещения, чтобы была возможность нормально отредактировать и сбросить кэш уже после всех изменений. Т.е. после каждого изменения тарифа необходимо вызывать Оповестить об изменениях.
Если какую-нибудь ветку поправите - должно стать активным. Попробуйте что-нибудь изменить туда-обратно и вызвать Оповестить об изменениях.

Автор:  borisk [ 20 июн 2012, 20:33 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Цитата:
Должно.

Увы. Специально вывожу e.getNewOptions().toString() - список пустой

"Оповестить об изменениях" тоже сделал - не помогло.

Код:
Информация о версии:

  Клиент: вер. 5.2 сборка 999 от 09.06.2012 16:54:03
    os: Windows XP; java: Java HotSpot(TM) Client VM, v.1.6.0_31
  Сервер: вер. 5.2 сборка 1215 от 14.06.2012 22:10:08
    os: FreeBSD; java: OpenJDK 64-Bit Server VM, v.1.6.0_32
    ВНИМАНИЕ: Виртуальная машина OpenJDK 64-Bit Server VM не рекомендуется

  card вер. 5.2 сборка 178 от 05.06.2012 16:47:51
  email вер. 5.2 сборка 166 от 08.06.2012 13:41:32
  inet вер. 5.2 сборка 914 от 15.06.2012 15:53:18
  ipn вер. 5.2 сборка 229 от 08.06.2012 13:41:33
  npay вер. 5.2 сборка 182 от 02.06.2012 03:52:05


Третьи стороны:

  Fugue Icons. Copyright © 2011 Yusuke Kamiyamane. All rights reserved.
    http://p.yusukekamiyamane.com/
  Silk icon set. Copyright © Mark James. All rights reserved.
    http://www.famfamfam.com/lab/icons/silk/

Автор:  Amir [ 20 июн 2012, 20:37 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Можете дать доступ?

Автор:  borisk [ 20 июн 2012, 20:45 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

В личке

Автор:  Amir [ 21 июн 2012, 18:17 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Основная причина в том, что не было активного учетного периода.
Учетный период активируется при авторизации или при наличии трафика для статических адресов. Т.е. как только произошла бы активация (появился трафик) - опции сменились и произошел вызов serviceModify.
Сейчас добавил учетный период вручную. Также опции, находящиеся в одной родительской ветке перетирают друг-друга. Поэтому опция 4MB, установленная в сервисе всегда перетрет другие опции ВЛ: Ограничение скорости.

Автор:  borisk [ 21 июн 2012, 19:16 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Ну про перетирание опций понятно. Я их от безысходности поставил. А вот про учетные периоды и трафик. Вообще очень интересно - клиент рабочий и трафик должен быть. Полез смотреть - в bgaccounting последние логи от 20го июня. Перезапустил bgaccounting - сессии появились. На будущее - если такая ситуация с bgaccounting повториться, какую информацию и где надо собрать?

Автор:  Amir [ 21 июн 2012, 19:40 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Все логи приложения нужны будут. Не нашел, где у вас activemq стоит, где его конфиги. Конфиг у нас брали последний? Возможно с activemq связано.
viewtopic.php?f=1&t=6695&hilit=activemq
Также должны быть большие лимиты
http://wiki.bgbilling.ru/index.php/Ошибка_в_логе_%22Too_many_open_files%22
Если проблемы с памятью, возможно нужно увеличить:
ошибка OutOfMemory: -Xmx512m
ошибка OutOfMemory: DirectBuffer Memory: -XX:MaxDirectMemory=256M

Автор:  borisk [ 21 июн 2012, 20:38 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

activemq - /usr/local/etc/activemq
Да, пример конфига брал ваш

Ни ошибки файлов, ни памяти пока не видел
в общем понаблюдаю, если будут проблемы - сразу к вам :)

Автор:  borisk [ 22 июн 2012, 15:07 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Посмотрите сейчас, пожалуйста, ID договора 14. Добавил сервис, даже учетный период добавил, и точно знаю что трафик есть.... а состояние сервиса все равно "удален". Как правильно то делать? Если это важно - услугу добавлял в состоянии договора "в подключении", а после сделал договор "активен"

Автор:  borisk [ 22 июн 2012, 15:23 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

После перезагрузки bgaccounting появились какие-то сессии, но почему-то в состоянии "отключено", хотя трафик по ним считается. Логи до перезагрузки bgaccounting сохранил в каталоге /usr/local/BGBilling/BGInetAccounting/log/old

Автор:  Amir [ 22 июн 2012, 17:09 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

В inet-access.xml accounting.deviceTypeIds был не правльный - 3. Должен быть 1, т.е. коды типов устройств - BGInetAccounting.
Похоже из-за этого.

Автор:  borisk [ 22 июн 2012, 17:57 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

А теперь появились вот такие вот строки, что это значит?
Код:
access 06-22/17:55:29  WARN [access-p-5-t-1] SessionCountManager - inetServRuntime:27 is null
access 06-22/17:56:01  WARN [access-p-5-t-1] SessionCountManager - inetServRuntime:27 is null
access 06-22/17:56:33  WARN [access-p-5-t-1] SessionCountManager - inetServRuntime:27 is null

Автор:  Amir [ 22 июн 2012, 18:02 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Похоже когда-то удалили сервис, на котором была активная сессия. Сейчас сессия висит в базе.
На последних билдах сервис с активной сессией удалить уже нельзя.

Автор:  borisk [ 22 июн 2012, 18:48 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

А можно это как-то вычистить?

Автор:  Amir [ 22 июн 2012, 18:58 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Удалил. В inet_session_ и inet_connection_ была запись с servId, которого нет.

Автор:  borisk [ 27 июн 2012, 13:21 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Ну вот сейчас опять. Пытаемся завести нескольких реальных клиентов и обкатать на них биллинг. Завели CID 21 - трафик есть, сессий нет. Специально ничего не трогаю и не перезагружаю. Посмотрите pls в чем проблема.

Автор:  Amir [ 27 июн 2012, 14:19 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Похоже, что добавили устройство, но не сделали Перечитать конфигурацию на серверах и добавили сервис. Access и Accounting соответственно не знают, что у них есть такое устройство, соответственно сервис на нем. После того, как сделал перечитать конфигурацию, сервис переключился в состояние включен.

Автор:  borisk [ 27 июн 2012, 14:28 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Спасибо. Буду стараться не забывать

Автор:  borisk [ 27 июн 2012, 15:00 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Решил проверить - а где вы увидели сессию? В клиенте я не вижу ни активных сессий, ни в истории сессий. И такая история со всеми договорами после CID: 21. Конфигурацию на серверах перечитывал.

Автор:  Amir [ 27 июн 2012, 15:38 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Я смотрел только Access. Возможно на Accounting тоже из-за этого - когда добавляли сервис, он не знал, что эти сервисы принадлежат ему, поэтому не добавил к себе. При "перечитать конфигурацию" он узнал о новом устройстве, но при этом он не пересчитывает из базы сервисы.
Хотя пересохранение сервиса должно было помочь, но не помогло - помогла только перезагрузка.
Посмотрите, когда будете добавлять следующее устройство (только с использованием перечитать конфигурацию до добавления сервиса) - появятся ли сессии или нет.

Автор:  borisk [ 27 июн 2012, 15:49 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Понял

Автор:  borisk [ 27 июн 2012, 18:04 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Вот специально создал договор 31. Специально убедился, что после создания нового устройства нажал "перечитать конфигурацию". В Access сессия появилась сразу, а в Accounting только после перезагрузки.

Автор:  Amir [ 27 июн 2012, 18:39 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Выложили обновление модуля.

Автор:  borisk [ 28 июн 2012, 20:16 ]
Заголовок сообщения:  Re: Установка InetOption в тарифе

Опять появился
Код:
access 06-28/20:15:13  WARN [access-p-5-t-1] SessionCountManager - inetServRuntime:49 is null
access 06-28/20:15:13  WARN [access-p-5-t-1] SessionCountManager - inetServRuntime:50 is null


Может расскажете в какую таблицу лезть и что исправлять? Но лучше если система сама как-то научится исправлять такое ;)

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/