BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 03 июл 2025, 17:00

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 15 ] 
Автор Сообщение
 Заголовок сообщения: RADIUS сервер не стартует из-за Exception
СообщениеДобавлено: 21 дек 2010, 22:38 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
v.4.6
Код:
# cat error.log
collector 2010-12-21 16:24:41,730 ERROR [main] LoggingPrintStream - java.io.IOException: Function not implemented
collector 2010-12-21 16:24:41,731 ERROR [main] LoggingPrintStream -     at sun.nio.ch.EPollArrayWrapper.epollCreate(Native Method)
collector 2010-12-21 16:24:41,731 ERROR [main] LoggingPrintStream -     at sun.nio.ch.EPollArrayWrapper.<init>(EPollArrayWrapper.java:69)
collector 2010-12-21 16:24:41,731 ERROR [main] LoggingPrintStream -     at sun.nio.ch.EPollSelectorImpl.<init>(EPollSelectorImpl.java:52)
collector 2010-12-21 16:24:41,732 ERROR [main] LoggingPrintStream -     at sun.nio.ch.EPollSelectorProvider.openSelector(EPollSelectorProvider.java:18)
collector 2010-12-21 16:24:41,732 ERROR [main] LoggingPrintStream -     at java.nio.channels.Selector.open(Selector.java:209)
collector 2010-12-21 16:24:41,732 ERROR [main] LoggingPrintStream -     at ru.bitel.common.io.DatagramChannelListener.<init>(DatagramChannelListener.java:51)
collector 2010-12-21 16:24:41,732 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.server.util.ip.flow.FlowListener.<init>(FlowListener.java:30)
collector 2010-12-21 16:24:41,733 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.modules.dialup.radius.DialUpFlowListener.<init>(DialUpFlowListener.java:50)
collector 2010-12-21 16:24:41,733 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.modules.dialup.radius.DialUpFlowListener$3.<init>(DialUpFlowListener.java:235)
collector 2010-12-21 16:24:41,733 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.modules.dialup.radius.DialUpFlowListener.newInstance(DialUpFlowListener.java:235)
collector 2010-12-21 16:24:41,733 ERROR [main] LoggingPrintStream -     at bitel.billing.server.processor.dialup.DialUpProcessor.addFlowListener(DialUpProcessor.java:664)
collector 2010-12-21 16:24:41,733 ERROR [main] LoggingPrintStream -     at bitel.billing.server.processor.dialup.DialUpProcessor.init(DialUpProcessor.java:595)
collector 2010-12-21 16:24:41,733 ERROR [main] LoggingPrintStream -     at bitel.billing.server.processor.DefaultProcessor.setInf(DefaultProcessor.java:103)
collector 2010-12-21 16:24:41,734 ERROR [main] LoggingPrintStream -     at bitel.billing.server.radius.Radius.initProcessor(Radius.java:72)
collector 2010-12-21 16:24:41,734 ERROR [main] LoggingPrintStream -     at bitel.billing.server.radius.Radius.<init>(Radius.java:43)
collector 2010-12-21 16:24:41,734 ERROR [main] LoggingPrintStream -     at bitel.billing.server.radius.Radius.main(Radius.java:94)
processor 2010-12-21 16:24:41,735 ERROR [main] LoggingPrintStream - java.lang.RuntimeException: Error init
processor 2010-12-21 16:24:41,735 ERROR [main] LoggingPrintStream -     at ru.bitel.common.io.DatagramChannelListener.<init>(DatagramChannelListener.java:60)
processor 2010-12-21 16:24:41,735 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.server.util.ip.flow.FlowListener.<init>(FlowListener.java:30)
processor 2010-12-21 16:24:41,735 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.modules.dialup.radius.DialUpFlowListener.<init>(DialUpFlowListener.java:50)
processor 2010-12-21 16:24:41,735 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.modules.dialup.radius.DialUpFlowListener$3.<init>(DialUpFlowListener.java:235)
processor 2010-12-21 16:24:41,735 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.modules.dialup.radius.DialUpFlowListener.newInstance(DialUpFlowListener.java:235)
processor 2010-12-21 16:24:41,736 ERROR [main] LoggingPrintStream -     at bitel.billing.server.processor.dialup.DialUpProcessor.addFlowListener(DialUpProcessor.java:664)
processor 2010-12-21 16:24:41,736 ERROR [main] LoggingPrintStream -     at bitel.billing.server.processor.dialup.DialUpProcessor.init(DialUpProcessor.java:595)
processor 2010-12-21 16:24:41,736 ERROR [main] LoggingPrintStream -     at bitel.billing.server.processor.DefaultProcessor.setInf(DefaultProcessor.java:103)
processor 2010-12-21 16:24:41,736 ERROR [main] LoggingPrintStream -     at bitel.billing.server.radius.Radius.initProcessor(Radius.java:72)
processor 2010-12-21 16:24:41,736 ERROR [main] LoggingPrintStream -     at bitel.billing.server.radius.Radius.<init>(Radius.java:43)
processor 2010-12-21 16:24:41,737 ERROR [main] LoggingPrintStream -     at bitel.billing.server.radius.Radius.main(Radius.java:94)
processor 2010-12-21 16:24:41,737 ERROR [main] Radius - Error of init processor: Error init


v5.0
Код:
# cat error.log
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream - java.io.IOException: Function not implemented
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at sun.nio.ch.EPollArrayWrapper.epollCreate(Native Method)
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at sun.nio.ch.EPollArrayWrapper.<init>(EPollArrayWrapper.java:69)
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at sun.nio.ch.EPollSelectorImpl.<init>(EPollSelectorImpl.java:52)
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at sun.nio.ch.EPollSelectorProvider.openSelector(EPollSelectorProvider.java:18)
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at java.nio.channels.Selector.open(Selector.java:209)
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at ru.bitel.common.io.DatagramChannelListener.<init>(DatagramChannelListener.java:51)
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at ru.bitel.bgbilling.server.util.ip.flow.FlowListener.<init>(FlowListener.java:30)
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at ru.bitel.bgbilling.modules.dialup.radius.DialUpFlowListener.<init>(DialUpFlowListener.java:50)
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at ru.bitel.bgbilling.modules.dialup.radius.DialUpFlowListener$3.<init>(DialUpFlowListener.java:235)
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at ru.bitel.bgbilling.modules.dialup.radius.DialUpFlowListener.newInstance(DialUpFlowListener.java:235)
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at bitel.billing.server.processor.dialup.DialUpProcessor.addFlowListener(DialUpProcessor.java:729)
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at bitel.billing.server.processor.dialup.DialUpProcessor.init(DialUpProcessor.java:660)
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at bitel.billing.server.processor.DefaultProcessor.setInf(DefaultProcessor.java:103)
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at bitel.billing.server.radius.Radius.initProcessor(Radius.java:72)
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at bitel.billing.server.radius.Radius.<init>(Radius.java:43)
collector 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at bitel.billing.server.radius.Radius.main(Radius.java:94)
processor 12-21/16:25:27 ERROR [main] LoggingPrintStream - java.lang.RuntimeException: Error init
processor 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at ru.bitel.common.io.DatagramChannelListener.<init>(DatagramChannelListener.java:60)
processor 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at ru.bitel.bgbilling.server.util.ip.flow.FlowListener.<init>(FlowListener.java:30)
processor 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at ru.bitel.bgbilling.modules.dialup.radius.DialUpFlowListener.<init>(DialUpFlowListener.java:50)
processor 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at ru.bitel.bgbilling.modules.dialup.radius.DialUpFlowListener$3.<init>(DialUpFlowListener.java:235)
processor 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at ru.bitel.bgbilling.modules.dialup.radius.DialUpFlowListener.newInstance(DialUpFlowListener.java:235)
processor 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at bitel.billing.server.processor.dialup.DialUpProcessor.init(DialUpProcessor.java:660)
processor 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at bitel.billing.server.processor.dialup.DialUpProcessor.addFlowListener(DialUpProcessor.java:729)
processor 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at bitel.billing.server.processor.DefaultProcessor.setInf(DefaultProcessor.java:103)
processor 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at bitel.billing.server.radius.Radius.<init>(Radius.java:43)
processor 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at bitel.billing.server.radius.Radius.main(Radius.java:94)
processor 12-21/16:25:27 ERROR [main] LoggingPrintStream -      at bitel.billing.server.radius.Radius.initProcessor(Radius.java:72)
processor 12-21/16:25:27 ERROR [main] Radius - Error of init processor: Error init


версии последние с сайта

все это запускается на
Код:
# uname -rs
FreeBSD 8.1-RELEASE-p2

Код:
# java -version
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
Java HotSpot(TM) Server VM (build 17.1-b03, mixed mode)

это линуховая ява в режиме эмуляции линуха

при этом сервер запускается без проблем!
Код:
# ./server_status.sh
BGBillingServer v 4.6 build 691 from 07.12.2010 17:17:54
Started: 21.12.2010 16:28:59    Uptime: 0 d 00:00:08
Memory total: 31 850 496; max: 238 616 576; free: 24 934 536
Connections pool to Master status Idle: 1; Active: 0; maxActive: 300; maxIdle: 20


а вот радиус и коллектор (ниже лог коллектора v4.6) стартануть не могут :(
Код:
# cat error.log
collector 2010-12-21 16:35:29,857 ERROR [main] LoggingPrintStream - java.io.IOException: Function not implemented
collector 2010-12-21 16:35:29,857 ERROR [main] LoggingPrintStream -     at sun.nio.ch.EPollArrayWrapper.epollCreate(Native Method)
collector 2010-12-21 16:35:29,857 ERROR [main] LoggingPrintStream -     at sun.nio.ch.EPollArrayWrapper.<init>(EPollArrayWrapper.java:69)
collector 2010-12-21 16:35:29,857 ERROR [main] LoggingPrintStream -     at sun.nio.ch.EPollSelectorImpl.<init>(EPollSelectorImpl.java:52)
collector 2010-12-21 16:35:29,857 ERROR [main] LoggingPrintStream -     at sun.nio.ch.EPollSelectorProvider.openSelector(EPollSelectorProvider.java:18)
collector 2010-12-21 16:35:29,857 ERROR [main] LoggingPrintStream -     at java.nio.channels.Selector.open(Selector.java:209)
collector 2010-12-21 16:35:29,857 ERROR [main] LoggingPrintStream -     at ru.bitel.common.io.DatagramChannelListener.<init>(DatagramChannelListener.java:51)
collector 2010-12-21 16:35:29,857 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.server.util.ip.flow.FlowListener.<init>(FlowListener.java:30)
collector 2010-12-21 16:35:29,857 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.modules.ipn.collector.IPNFlowListener.<init>(IPNFlowListener.java:32)
collector 2010-12-21 16:35:29,857 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.modules.ipn.collector.IPNFlowListener$3.<init>(IPNFlowListener.java:122)
collector 2010-12-21 16:35:29,857 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.modules.ipn.collector.IPNFlowListener.newInstance(IPNFlowListener.java:122)
collector 2010-12-21 16:35:29,857 ERROR [main] LoggingPrintStream -     at bitel.billing.server.netflow.ipn.Collector.<init>(Collector.java:124)
collector 2010-12-21 16:35:29,857 ERROR [main] LoggingPrintStream -     at bitel.billing.server.netflow.ipn.Collector.main(Collector.java:236)
collector 2010-12-21 16:35:29,858 ERROR [main] LoggingPrintStream - java.lang.RuntimeException: Error init
collector 2010-12-21 16:35:29,858 ERROR [main] LoggingPrintStream -     at ru.bitel.common.io.DatagramChannelListener.<init>(DatagramChannelListener.java:60)
collector 2010-12-21 16:35:29,858 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.server.util.ip.flow.FlowListener.<init>(FlowListener.java:30)
collector 2010-12-21 16:35:29,858 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.modules.ipn.collector.IPNFlowListener.<init>(IPNFlowListener.java:32)
collector 2010-12-21 16:35:29,858 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.modules.ipn.collector.IPNFlowListener$3.<init>(IPNFlowListener.java:122)
collector 2010-12-21 16:35:29,858 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.modules.ipn.collector.IPNFlowListener.newInstance(IPNFlowListener.java:122)
collector 2010-12-21 16:35:29,858 ERROR [main] LoggingPrintStream -     at bitel.billing.server.netflow.ipn.Collector.addFlowListener(Collector.java:215)
collector 2010-12-21 16:35:29,858 ERROR [main] LoggingPrintStream -     at bitel.billing.server.netflow.ipn.Collector.<init>(Collector.java:124)
collector 2010-12-21 16:35:29,858 ERROR [main] LoggingPrintStream -     at bitel.billing.server.netflow.ipn.Collector.main(Collector.java:236)
collector 2010-12-21 16:35:29,857 ERROR [main] LoggingPrintStream -     at bitel.billing.server.netflow.ipn.Collector.addFlowListener(Collector.java:215)


с родной явой все запускается, но т.к. она старая захотелось яву поновее, а на фре она доступна только в режиме эмуляции линуха, которая в общем то работает нормально, во всяком случае линоховый софт прекрасно в таком "линухе" себя чувствует

P.S. на портах радиуса и коллектора ничего не висит, так что ошибка, похоже, не в этом


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 22 дек 2010, 04:35 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
юзать линукс? :-D

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 22 дек 2010, 14:26 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
В JRE для linux я вижу два провайдера для работы с channel selector'ами
Цитата:
sun.nio.ch.EPollSelectorProvider
035: * An implementation of Selector for Linux 2.6+ kernels that uses
036: * the epoll event notification facility.

sun.nio.ch.PollSelectorProvider
035: * An implementation of Selector for Solaris.
Можно указывать другой провайдер в строке запуска:
Цитата:
-Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.PollSelectorProvider
Только похоже ни один из этих провайдеров не подойдет:
http://www.opennet.ru/man.shtml?topic=e ... &russian=2
Цитата:
The epoll API is Linux-specific. Some other systems provide similar mechanisms, for example, FreeBSD has kqueue, and Solaris has /dev/poll.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 22 дек 2010, 18:15 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
важное замечание/дополнение - когда netflow коллектор в конфиге закоменчен (т.е. не стартует/включается) радиус стартует, а вот как только убираешь коммент с коллектора - все, затык :( получается что проблема именно в коде коллектора - это доказывается тем то что не стартует не только радиус с включенным коллектором, но и коллектор модуля ipn :(

вставка в параметры
Код:
-Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.PollSelectorProvider

на 4.6 приводит к этому:
Код:
# cat error.log
processor 2010-12-22 12:11:47,859 ERROR [main] LoggingPrintStream - java.lang.RuntimeException: Error init SocketListener on port=2001
processor 2010-12-22 12:11:47,859 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.server.util.ip.flow.FlowListener.init(FlowListener.java:51)
processor 2010-12-22 12:11:47,859 ERROR [main] LoggingPrintStream -     at bitel.billing.server.processor.dialup.DialUpProcessor.addFlowListener(DialUpProcessor.java:666)
processor 2010-12-22 12:11:47,859 ERROR [main] LoggingPrintStream -     at bitel.billing.server.processor.dialup.DialUpProcessor.init(DialUpProcessor.java:595)
processor 2010-12-22 12:11:47,859 ERROR [main] LoggingPrintStream -     at bitel.billing.server.processor.DefaultProcessor.setInf(DefaultProcessor.java:103)
processor 2010-12-22 12:11:47,859 ERROR [main] LoggingPrintStream -     at bitel.billing.server.radius.Radius.initProcessor(Radius.java:72)
processor 2010-12-22 12:11:47,859 ERROR [main] LoggingPrintStream -     at bitel.billing.server.radius.Radius.<init>(Radius.java:43)
processor 2010-12-22 12:11:47,859 ERROR [main] LoggingPrintStream -     at bitel.billing.server.radius.Radius.main(Radius.java:94)
processor 2010-12-22 12:11:47,859 ERROR [main] LoggingPrintStream - Caused by: java.net.SocketException: No buffer space available
processor 2010-12-22 12:11:47,860 ERROR [main] LoggingPrintStream -     at sun.nio.ch.Net.setIntOption0(Native Method)
processor 2010-12-22 12:11:47,861 ERROR [main] LoggingPrintStream -     at sun.nio.ch.Net.setIntOption(Net.java:157)
processor 2010-12-22 12:11:47,861 ERROR [main] LoggingPrintStream -     at sun.nio.ch.DatagramChannelImpl$1.setInt(DatagramChannelImpl.java:449)
processor 2010-12-22 12:11:47,861 ERROR [main] LoggingPrintStream -     at sun.nio.ch.SocketOptsImpl.setInt(SocketOptsImpl.java:46)
processor 2010-12-22 12:11:47,862 ERROR [main] LoggingPrintStream -     at sun.nio.ch.SocketOptsImpl.receiveBufferSize(SocketOptsImpl.java:130)
processor 2010-12-22 12:11:47,862 ERROR [main] LoggingPrintStream -     at sun.nio.ch.OptionAdaptor.setReceiveBufferSize(OptionAdaptor.java:122)
processor 2010-12-22 12:11:47,862 ERROR [main] LoggingPrintStream -     at sun.nio.ch.DatagramSocketAdaptor.setReceiveBufferSize(DatagramSocketAdaptor.java:266)
processor 2010-12-22 12:11:47,863 ERROR [main] LoggingPrintStream -     at ru.bitel.bgbilling.server.util.ip.flow.FlowListener.init(FlowListener.java:42)
processor 2010-12-22 12:11:47,863 ERROR [main] LoggingPrintStream -     ... 6 more
processor 2010-12-22 12:11:47,863 ERROR [main] Radius - Error of init processor: Error init SocketListener on port=2001

а на 5.0 к этому:
Код:
# cat error.log
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream - java.lang.RuntimeException: Error init SocketListener on port=2001
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      at ru.bitel.bgbilling.server.util.ip.flow.FlowListener.init(FlowListener.java:51)
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      at bitel.billing.server.processor.dialup.DialUpProcessor.addFlowListener(DialUpProcessor.java:731)
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      at bitel.billing.server.processor.dialup.DialUpProcessor.init(DialUpProcessor.java:660)
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      at bitel.billing.server.processor.DefaultProcessor.setInf(DefaultProcessor.java:103)
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      at bitel.billing.server.radius.Radius.initProcessor(Radius.java:72)
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      at bitel.billing.server.radius.Radius.<init>(Radius.java:43)
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      at bitel.billing.server.radius.Radius.main(Radius.java:94)
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream - Caused by: java.net.SocketException: No buffer space available
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      at sun.nio.ch.Net.setIntOption0(Native Method)
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      at sun.nio.ch.Net.setIntOption(Net.java:157)
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      at sun.nio.ch.DatagramChannelImpl$1.setInt(DatagramChannelImpl.java:449)
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      at sun.nio.ch.SocketOptsImpl.setInt(SocketOptsImpl.java:46)
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      at sun.nio.ch.SocketOptsImpl.receiveBufferSize(SocketOptsImpl.java:130)
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      at sun.nio.ch.OptionAdaptor.setReceiveBufferSize(OptionAdaptor.java:122)
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      at sun.nio.ch.DatagramSocketAdaptor.setReceiveBufferSize(DatagramSocketAdaptor.java:266)
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      at ru.bitel.bgbilling.server.util.ip.flow.FlowListener.init(FlowListener.java:42)
processor 12-22/12:12:54 ERROR [main] LoggingPrintStream -      ... 6 more
processor 12-22/12:12:54 ERROR [main] Radius - Error of init processor: Error init SocketListener on port=2001


вопрос - что делать то? ситуацию надо как-то решать ...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 22 дек 2010, 20:23 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Так это не давно что-ли началось?
В коллекторе уже давно для работы с netflow/radius используется java.nio.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 22 дек 2010, 20:49 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
это началось ровно в тот момент когда я все же решил присоеденится к бета-тестерам пользователям 5.1 и решил что родная фряшная ява это конечно хорошо, но т.к. боги велят разработчики говорят что нужна свежая, а так же помня про глюки с эндорсед либами я решил использовать рекомендуемую, оригинальную линуховую яву, ну а сделать это проще всего (без установки самого линуха) в режиме эмуляции линуха ... эмуляция работает, ява в ней тоже работает, а вот БГ радиус не хочет :(
вообще идея была простой - практически ничего не меняя (сервер тот же самый, фряшный) обновится с 4.6 до 5.0, потом с 5.0 уйти на 5.1, но увы и ах - пока это не получается :(


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 22 дек 2010, 21:23 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
snark писал(а):
бета-тестерам пользователям 5.1

Изображение
Added: Хотя что я смеюсь. Сам же им являюсь Изображение
Хотя в большинстве своем все отлично. Но не будем радовать разработчиков

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 23 дек 2010, 03:27 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
А поддержки epoll в режиме эмуляции linux нет?
Он эмулирует 2.6?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 23 дек 2010, 17:14 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
Amir писал(а):
А поддержки epoll в режиме эмуляции linux нет?

ХЗ если честно, щас буду уточнять ...

Amir писал(а):
Он эмулирует 2.6?

походу да
Код:
# cat /compat/linux/proc/version
Linux version 2.6.16 (des@freebsd.org) (gcc version 4.2.1 20070719  [FreeBSD])

Код:
# sysctl -a | grep compat.linux
compat.linux.oss_version: 198144
compat.linux.osrelease: 2.6.16
compat.linux.osname: Linux

но есть одно НО! у меня сейчас стоит порт для эмуляции линуха, но он не для разработки
Код:
# cat /usr/ports/emulators/linux_base-f10/pkg-descr
This port contains packages from a near-minimal installation of Fedora 10
Linux.  These packages, in conjunction with the linux kernel module,
form the basis of the Linux compatibility environment. It is designed to
provide a nice user experience by using the FreeBSD configuration for
corresponding Linux stuff where possible. Because of this any work which
needs to chroot into the linux base may not work as expected (no fallthrough
to the FreeBSD config possible).

This port is only available for the i386/amd64 architecture (i386/32 bit mode).

If you want to run X11 applications, install the x11/linux-xorg-libs port.

For cross-development this port is not suitable, you should use a linux_dist
port instead in this case.

сегодня попробую поиграться с портом который ставит внутри фряхи целую генту
Код:
# cat /usr/ports/emulators/linux_dist-gentoo-stage3/pkg-descr
This port installs the stage3 distribution of Gentoo Linux.

WWW:  http://www.gentoo.org/

по сути это
Makefile писал(а):
This port is a complete Linux distribution you can use
on a FreeBSD system. The use of this port as a linux_base
port is very discouraged but you can enforce it to install
as a linux_base if you set WITH_LINUXBASE.

но в то же время если поставить WITH_LINUXBASE он ругнется
Makefile писал(а):
Note that this port doesn't completely suit our ports
infrastructure. It's very good for a standalone Linux
distribution on a FreeBSD system you can use for
cross-developing and cross-building, etc., but using it as a
linux_base port is not quite adequate.
If you experience troubles with it, please use the
default linux_base port.

в общем будем посмотреть ... хотя в генту обещают даже полную поддержку portage :)
Код:
# cat /usr/ports/emulators/linux_dist-gentoo-stage3/files/pkg-message.in
...
* To download Portage, do "chroot %%PREFIX%%/%%PREFIX_SUBDIR%% emerge --sync" as root.  Then you
* may want to do "chroot %%PREFIX%%/%%PREFIX_SUBDIR%% /usr/portage/scripts/bootstrap.sh" to
* rebuild binutils, gcc, gettext, and glibc.  See
* <URL:http://www.gentoo.org/doc/en/gentoo-x86-install.xml> for more complete
* instructions.

BTW, linprocfs и linsysfs у вас ни при делах?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 23 дек 2010, 18:45 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Цитата:
BTW, linprocfs и linsysfs у вас ни при делах?
В смысле?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 23 дек 2010, 19:01 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
Amir писал(а):
Цитата:
BTW, linprocfs и linsysfs у вас ни при делах?
В смысле?

ну ... я понимаю что явно оно в БГБ не используется, но может как-то со стороны? может ява оттуда что-то нужное ей берет? просто вопрос в том надо ли вообще смотреть в эту сторону или нет? ;)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 23 дек 2010, 23:19 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
продолжаем разговор ...

идея с генту на фре провалилась, т.к. порт помечен как BROKEN, но я не стал отчаиваться и сделал как рекомендовали тут, т.е. вставил в netflow_ipn.properties сторчку:
Код:
netflow.receive.socket.buffer.size=100000

и о чудо - ipn коллектор завелся:
Код:
# ./netflow_status.sh
Traffic collector for IPN v 4.6 build 229 from 25.10.2010 17:26:02
Started: 23.12.2010 16:47:05    Uptime: 0 d 00:00:05
Memory total: 31 850 496; max: 238 616 576; free: 24 213 608
FlowListener: queue_size: 0; threads_active: 0; largest: 0; core: 10; pool_size: 0; recv_socket_buf_size: 50 000; recv_buf_size: 8 388 608; packets: 0
Flow loader: ru.bitel.bgbilling.server.util.ip.datalog.hourly.IPHourlyDataLogger@1e232b5 [files: 0]

основываясь на мысли о том что БГБ пишут одни и те же люди и скорее всего код в обоих коллекторах (dialup и ipn) один и тот же (лично не писал бы 2 разных коллектора, а использовал один и тот же код для одинаковых целей) я решил вставить в radius.properties ту же самую строчку и ...
Код:
# ./radius_status.sh
version 4.6 build 256 from 24.11.2010 17:15:54
23.12.2010 16:47:12     0       0       0       0
Request accounts per minute start: 0; stop: 0; update: 0
Request auths per minute accept: 0; reject: 0
Netfow packets per minute: 0
Ignore per minute auth: 0; update: 0
Antispam ban count: 0; used per minute: 0
FlowListener: queue_size: 0; threads_active: 0; largest: 0; core: 10; pool_size: 0; recv_socket_buf_size: 50 000; recv_buf_size: 8 388 608; packets: 0
Started: 23.12.2010 16:42:05    Uptime: 0 d 00:05:07
Memory total: 31 850 496; max: 238 616 576; free: 25 955 352
Trees in cache: 0
Connections pool to Master status Idle: 1; Active: 0; maxActive: 1000; maxIdle: 20

Код:
# ./radius_status.sh
version 5.0 build 298 from 09.12.2010 18:59:44
23.12.2010 16:48:51     0       0       0       0
Request accounts per minute start: 0; stop: 0; update: 0
Request auths per minute accept: 0; reject: 0
Netfow packets per minute: 0
Ignore per minute auth: 0; update: 0
Antispam ban count: 0; used per minute: 0
FlowListener: queue_size: 0; threads_active: 0; largest: 0; core: 10; pool_size: 0; recv_socket_buf_size: 50 000; recv_buf_size: 8 388 608; packets: 0
Started: 23.12.2010 16:48:49    Uptime: 0 d 00:00:01
Memory total: 31 850 496; max: 238 616 576; free: 28 830 240
Trees in cache: 0
Connections pool to Master status Idle: 1; Active: 0; maxActive: 300; maxIdle: 20

ну вы поняли ;)

тем кто только подошел, напомню, это все происходит на:
Код:
# uname -rs
FreeBSD 8.1-RELEASE-p2

в режиме эмуляции линуха
Код:
# chroot /compat/linux/ bash
bash-3.2# uname -rs
Linux 2.6.16


теперь "внимание, вопрос"(с) - как именно осуществляется завязка на линух? раз запускается только при наличии:
Код:
-Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.PollSelectorProvider

типа того?
Код:
if (java OS == Linux)
{
    use epoll;
}

это не сильно принципиально, т.к. есть можность выбора (пока?), но все же думаю есть смысл подумать над тем что тут написано:
Цитата:
специфичные для определенных ОС решения, малопереносимы, но эффективны

ведь одна из основных прелестей БГБ - это мультиплатфоремнность ;)

хотелось бы узнать поподробнее что такое "netflow.receive.socket.buffer.size" и с чем его едят? какие параметры желательны? в общем хочется бОльше подробностей о тюнинге как радиуса так и коллекторов (dialup/ipn) ;)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 24 дек 2010, 17:35 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Цитата:
теперь "внимание, вопрос"(с) - как именно осуществляется завязка на линух? раз запускается только при наличии:
Код:
-Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.PollSelectorProvider
А без этого не работает?
В java почти все системные библиотеки работают через интерфейсы, т.е. переопределение через
Код:
-Djava.nio.channels.spi.SelectorProvider
будет возможно всегда.
Там и используются специфичные реализации, но т.к. версию для FreeBSD не выпускают - специфичной реализации для него нет.

netflow.receive.socket.buffer.size выставляет SO_RCVBUF.
Цитата:
* Sets the SO_RCVBUF option to the specified value for this
* <tt>DatagramSocket</tt>. The SO_RCVBUF option is used by the
* the network implementation as a hint to size the underlying
* network I/O buffers. The SO_RCVBUF setting may also be used
* by the network implementation to determine the maximum size
* of the packet that can be received on this socket.

Т.е. это значение должно использоваться как подсказка, а не обязательное и немножко не понятно, почему при высоких значениях падает на FreeBSD.
А в той теме было легко найти причину - исключение возникало прямо на установке SO_RCVBUF.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 24 дек 2010, 19:11 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
Amir писал(а):
Цитата:
запускается только при наличии:
Код:
-Djava.nio.channels.spi.SelectorProvider=sun.nio.ch.PollSelectorProvider

А без этого не работает?

в том то и дело что нет :(

Amir писал(а):
Там и используются специфичные реализации, но т.к. версию для FreeBSD не выпускают - специфичной реализации для него нет.

угу ... ява похоже видя что стартует в линухе начинает использовать более подходящий для данной ОС селектор, а т.к. в режиме эмуляции нет (пока?) прослойки позволяющей прозрачно транслировать epoll в kqueue то оно и не заработало ...

Amir писал(а):
А в той теме было легко найти причину - исключение возникало прямо на установке SO_RCVBUF.

да, найти было легко, но ... но эксепшн:
Код:
java.net.SocketException: No buffer space available

вылезал только после установки другого IO селектора, а до этого его небыло и соответственно было непонятно куда вообще смотреть :(

Amir писал(а):
netflow.receive.socket.buffer.size выставляет SO_RCVBUF.
Цитата:
* Sets the SO_RCVBUF option to the specified value for this
* <tt>DatagramSocket</tt>. The SO_RCVBUF option is used by the
* the network implementation as a hint to size the underlying
* network I/O buffers. The SO_RCVBUF setting may also be used
* by the network implementation to determine the maximum size
* of the packet that can be received on this socket.

Т.е. это значение должно использоваться как подсказка, а не обязательное и немножко не понятно, почему при высоких значениях падает на FreeBSD.

спасибо за разъяснение! буду разбираться что происходит с буферами в аккурат между фрей и работающем в нем линухе ... сама же фря на недостаток буферов не жалуется, значит что-то происходит на этапе эмуляции ну или в эмулироемом линухе оно попросту не настроено ...

в вики писать или по прежнему "официально не поддерживается"(с) ?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 20 янв 2011, 00:15 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
тут нашел интересный код в котором упоминается sun.nio.ch.KQueueSelectorProvider (используется для МАС а МАС ось основана на фре), но его использование вызывает ошибку :( жаль, а то можно было бы родным для фри kqueue пользоваться ...


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 15 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.053s | 45 Queries | GZIP : On ]