forum.bitel.ru http://forum.bitel.ru/ |
|
Перезагрузка устройства http://forum.bitel.ru/viewtopic.php?f=44&t=6866 |
Страница 1 из 1 |
Автор: | borisk [ 17 июн 2012, 21:39 ] |
Заголовок сообщения: | Перезагрузка устройства |
Добрый день! Что-то у меня не получается заново вызывать активацию сервисов при перезагрузке устройства. Подскажите, что я забыл? Видно, что система понимает перезагрузку устройства: Код: connection 06-17/21:32:23 INFO [sa-p-9-t-90] FreeBSDDeviceManager - UPTIME: 45 connection 06-17/21:32:23 INFO [sa-p-9-t-90] DeviceManageWorker - Hardware reboot detected connection 06-17/21:32:23 INFO [sa-p-9-t-9] ServiceActivatorSet - Connecting to device connection 06-17/21:32:23 INFO [sa-p-9-t-9] ServiceActivatorDeviceWorker - Do task deviceId: 11; Event[ru.bitel.bgbilling.modules.inet.access.sa.event.InetSaDeviceInitEvent] moduleId: 5; pluginId: no; cid: global; scid: -1; userId: 0; deviceId: 11; timestamp: 1339947143834 connection 06-17/21:32:23 INFO [sa-p-9-t-9] ServiceActivatorDeviceWorker - Do InetSaDeviceInitEvent task connection 06-17/21:32:28 INFO [sa-p-9-t-9] ServiceActivatorSet - Disconnecting from device Но вот serviceCreate после этого не вызываются, в то время как при ручном добавлении/удалении сервисов все отрабатывает. В конфигурации типа устройства: Код: # Пауза между выполнениями команды после ошибки manage.error.pause=5 # Пауза между получением uptime manage.uptime.pause=120 # Пауза после ошибки, возникшей при получении uptime manage.uptime.error.pause=120 # Синхронизировать ли сервисы при обнаружении перезагрузки, 0 - не синхронизировать (по умолчанию), 1 - синхронизировать # (для обнаружения перезагрузки в типе устройства должен быть установлен обработчик управления устройством) sa.device.sync.onReboot=1 # Вызывать ли при синхронизации для каждого сервиса, 0 - только serviceCreate или 1 (по умолчанию) - # сначала serviceCancel, а затем serviceCreate #sa.device.sync.cancelBeforeCreate=1 Информация о версии: Клиент: вер. 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 |
Автор: | Amir [ 18 июн 2012, 14:51 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
Перезагружается именно то устройство, к которому привязаны сервисы? |
Автор: | borisk [ 18 июн 2012, 17:20 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
Я еще не очень разобрался в логике работы Inet. Поэтому опишу на пальцах: Дерево устройств такое: RDG (абстрактный корень) -> FreeBSD-gw (для него как раз написаны классы активации сервисов и uptime) -> MES-3528 (шаблон физического коммутатора куда подключаются пользователи). В договоре услуга привязывается именно к MES-3528 (я потом планирую реализовать DHCP+Opt82) Перезагружается, соответственно, FreeBSD-gw |
Автор: | borisk [ 20 июн 2012, 18:04 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
up? |
Автор: | Amir [ 21 июн 2012, 18:22 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
Посмотрели - сейчас переинициализируются только сервисы, привязанные к перезагрузившемуся устройству. В течении пары дней постараемся сделать, чтобы для дочерних устройств также отрабатывало. |
Автор: | borisk [ 02 июл 2012, 13:50 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
up. Очень актуально ![]() |
Автор: | Amir [ 02 июл 2012, 15:37 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
Выложили обновление, попробуйте. |
Автор: | borisk [ 02 июл 2012, 19:30 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
Теперь вызывается serviceCreate, но e.getNewService().getChildren() == null Как мне получить доступ к вложенным сервисам? |
Автор: | Amir [ 03 июл 2012, 13:12 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
Выложили обновление, попробуйте. |
Автор: | borisk [ 03 июл 2012, 18:48 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
Ура! С первого взгляда вроде заработало. Теперь буду крутить, разные каверзы пробовать. |
Автор: | aiwbend [ 08 авг 2012, 08:59 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
А можно как нибудь синхронизировать 1 определенный сервис? |
Автор: | Amir [ 09 авг 2012, 17:41 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
Т.е. вызвать serviceCancel - serviceCreate? Сейчас нет, только sericeModify при пересохранении сервиса. А нужно? |
Автор: | aiwbend [ 10 авг 2012, 13:36 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
Amir писал(а): Т.е. вызвать serviceCancel - serviceCreate? Сейчас нет, только sericeModify при пересохранении сервиса. А нужно? У нас при serviceCancel - serviceCreate удаляется или добавляется(с поднятием сессии) абонент на насе. В случае если абонента по каким либо причинам нет (отреджектило например) приходится либо рукам на насе его поднимать либо пересоздавать сервис либо синхронизировать все сервисы на устройстве чтобы вызвать serviceCreate. Вот подумал если бы в сервисе была его синхронизация, было бы удобнее исправлять такие проблемы. хотя мб я все вижу не так как было задумано. |
Автор: | Amir [ 10 авг 2012, 14:09 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
А у вас какая схема работы? Вообще, по логике работы модуля, serviceCreate должен вызываться один раз, когда добавили сервис (или начался его период действия), serviceCancel - когда удалили сервис (кончился его период действия), serviceModify часто - когда кончились/появились деньги (или поменялся статус договора/сервиса, а также при редактировании его в клиенте биллинга) и когда поменялся набор опций из тарифа. В случае, когда в типе сервиса стоит инициация сессии по сигналу (PPTP/DHCP.82/ISG/CLIPS, т.е. когда возможно одновременно несколько сессий) также вызываются для каждой сессии connectionModify и connectionClose. |
Автор: | aiwbend [ 10 авг 2012, 15:28 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
Amir писал(а): А у вас какая схема работы? Вообще, по логике работы модуля, serviceCreate должен вызываться один раз, когда добавили сервис (или начался его период действия), serviceCancel - когда удалили сервис (кончился его период действия), serviceModify часто - когда кончились/появились деньги (или поменялся статус договора/сервиса, а также при редактировании его в клиенте биллинга) и когда поменялся набор опций из тарифа. В случае, когда в типе сервиса стоит инициация сессии по сигналу (PPTP/DHCP.82/ISG/CLIPS, т.е. когда возможно одновременно несколько сессий) также вызываются для каждой сессии connectionModify и connectionClose. Значит логику я понимаю правильно. У нас при заведении сервиса создается сабскрайбер на RB, при удалении удаляется, при serviceModify он реавторизуется запрашивая актуальные атрибуты. Бывают случаи что абонента реджектит по каким либо причинам, в нашем случае это не допустимо. Я чтобы не лезть на железку просто синхронизирую сервисы на устройстве после устранения причины реджекта, тем самым пересоздаю их на RB и все становится хорошо. Вот и подумал что здорово было бы в таких случаях вызывать serviceCancel-serviceCreate на определенном сервисе, чтобы не дергались рабочие. Но думаю в моем случае лучше полностью исключить реджект. В данный момент почему то с radius.disable.accessCodes=1,2,3,4,10,11,12,20,44,45,62 при Reply-Message=1 абонент получает Access-Reject, остальные вроде все получают Accept как и предполагалось. Reply-Message=1 возвращается если указать период сервиса в который не входит настоящая дата, в этом случае должен сработать serviceCancel и удалить абонента с шейпера - в этом мы уже разобрались, жду обновления после которого думаю все заработает гладко. Вот так вот все наложилось друг на друга, хотя всеравно странно что radius.disable.accessCodes не реагирует на Reply-Message=1 . |
Автор: | Amir [ 10 авг 2012, 17:13 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
Цитата: В данный момент почему то с radius.disable.accessCodes=1,2,3,4,10,11,12,20,44,45,62 при Reply-Message=1 В логах что? IP-адрес для такого случая выдает InetAccess? radius.disable.ipCategories указаны?
|
Автор: | aiwbend [ 13 авг 2012, 08:57 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
Amir писал(а): Цитата: В данный момент почему то с radius.disable.accessCodes=1,2,3,4,10,11,12,20,44,45,62 при Reply-Message=1 В логах что? IP-адрес для такого случая выдает InetAccess? radius.disable.ipCategories указаны?Цитата: radius 08-13/09:50:16 INFO [rdsLstnr-p-8-t-6] InetNas - Search by username=6 radius 08-13/09:50:16 INFO [rdsLstnr-p-8-t-6] InetRadiusProcessor - [username=6] InetServ not found. radius 08-13/09:50:16 INFO [rdsLstnr-p-8-t-6] InetRadiusProcessor - Return code=1 connection 08-13/09:50:16 INFO [sa-p-12-t-4] ServiceActivatorSet - Connecting to device connection 08-13/09:50:16 INFO [sa-p-12-t-4] ServiceActivatorDeviceWorker - Do task deviceId: 2; Event[ru.bitel.bgbilling.modules.inet.access.sa.event.InetSaAccountingEvent] moduleId: 2; pluginId: no; cid: 6; scid: -1; userId: 0; type: 2; deviceId: 2; connectionId: 404; timestamp: 1344826216130 connection 08-13/09:50:16 INFO [sa-p-12-t-4] InetApplication - TariffOptionMap: {} connection 08-13/09:50:16 INFO [sa-p-12-t-4] ServiceActivatorDeviceWorker - Command result event: ServiceActivatorEvent type=5; inetServId: 5; call: true; oldState: -1; newState: -1; oldOptionSet: 2; newOptionSet: 2 connection 08-13/09:50:16 INFO [sa-p-12-t-4] ServiceActivatorDeviceWorker - Processing deviceId:2; command ServiceActivatorEvent type=5; inetServId: 5; call: true; oldState: -1; newState: -1; oldOptionSet: 2; newOptionSet: 2 connection 08-13/09:50:16 INFO [sa-p-12-t-4] ServiceActivatorSet - Invoking onAccountingStop connection 08-13/09:50:16 INFO [sa-p-12-t-4] SmartEdgeServiceActivator - MY SCRIIIIPT! onAccountingStop connection 08-13/09:50:16 INFO [sa-p-12-t-4] ServiceActivatorDeviceWorker - Process event type[5] result=true radius 08-13/09:50:16 INFO [rdsLstnr-p-8-t-6] InetRadiusListenerWorker - RESPONSE: Packet type: Access-Reject Identifier: 155 Authenticator: {86 6A 8B B3 CD 8A 5C 06 93 4B 98 8B 35 A2 9A E6} Attributes: Reply-Message=1 Process time auth: 84 connection 08-13/09:50:20 INFO [sa-p-12-t-1] ServiceActivatorSet - Disconnecting from device connection 08-13/09:50:20 INFO [sa-p-12-t-1] SmartEdgeServiceActivator - MY SCRIIIIPT! disconnect connection 08-13/09:50:21 INFO [sa-p-12-t-4] ServiceActivatorSet - Disconnecting from device connection 08-13/09:50:21 INFO [sa-p-12-t-4] SmartEdgeServiceActivator - MY SCRIIIIPT! disconnect Да адрес дает InetAccess, но мы поставили флаг radius.disable.mode=1 будет ли отрабатывать radius.disable.ipCategories с ним? Если поставить radius.disable.ipCategories тоже шлет Access-Reject. |
Автор: | Amir [ 13 авг 2012, 17:21 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
По Reply-Message=1 отписал сюда: viewtopic.php?f=44&t=7090&p=55168#p55168 |
Автор: | Amir [ 13 авг 2012, 17:22 ] |
Заголовок сообщения: | Re: Перезагрузка устройства |
При radius.disable.mode=1 адрес должен выдавать точно тот же, как если бы не было никакой ошибки (недостаточно денег и т.п.). Т.е. в этом случае radius.disable.ipCategories не нужен. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |