BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 26 июн 2025, 21:10

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




Начать новую тему Ответить на тему  [ Сообщений: 90 ]  На страницу Пред.  1, 2, 3
Автор Сообщение
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 09 фев 2015, 17:41 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
По коду вроде бы не влияет на ответ абоненту - при запросе DHCP от абонента просто DHCP-логи не пишутся.
Т.е. помоему выражение ничего не работает не совсем корректно
Однако ошибка может конечно плохо влиять в других местах, когда нужно открыть новый файл.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 09 фев 2015, 18:47 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Платон мне друг :) но истина...
Нет, именно ничего не работает - абоненты не получают ip адреса, рвут на части техподдержку, а техподдержка меня... Я не преувеличиваю, действительно тяжко бывает во время проблемы. Да еще и она, зараза, обычно бывает вечером или в выходные.
Хорошо хоть не часто бывает.


Последний раз редактировалось survivor 09 фев 2015, 18:51, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 09 фев 2015, 18:51 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
звучит конечно глупо - но никак не могу подключиться к серверу из jconsole, после переноса. До переноса - все работало, даже графики в mrtg рисовались для ip пулов (из jmx).
При переносе просто скопировал джаву, и целиком папки биллинга. IP и iptables на новом сервере идентичные. Но не подключается зараза к jmx и все.
Файлы jmx.access и jmx.password те же. В netstat видно что порты слушаются, tcpdump при подключении показывает, что связь с сервером есть, лог iptables молчит.

Как еще протраблшутить jmx?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 09 фев 2015, 19:10 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Цитата:
Посмотрел получше по поводу сообщения о кол-ве в ошибке - там не совсем просто - нужно использовать класс, которого может не быть в OpenJDK (а некоторые все-таки его используют, хотя мы и рекомендуем Oracle JDK). Т.е. может начать вообще падать при создании лога просто из-за отсутствия класса.


Но у меня Oracle JDK


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 09 фев 2015, 19:25 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Здесь решили проблему ssh туннелем и использованием jvisualvm вместо jconsole, у jvisualvm есть Add JMX Connection (последний ответ):
http://stackoverflow.com/questions/2062 ... e-jmx-host

Цитата:
Но у меня Oracle JDK
Но у кого-то может оказаться OpenJDK и у них все сломается :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 09 фев 2015, 19:42 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Ураа! Я нашел решение!
Нужно добавить параметр: -Djava.rmi.server.hostname=SERVER_IP
Надо в вики добавить...
Вот отсюда взял: http://stackoverflow.com/questions/1162 ... ect-to-jmx
теперь jconsole подключается


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 09 фев 2015, 19:45 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Цитата:
Но у кого-то может оказаться OpenJDK и у них все сломается

вот я эгоист ))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 09 фев 2015, 19:52 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Цитата:
Далее смотрим пункт java.lang - OperatingSystem - Attributes, там MaxFileDescriptorCount, OpenFileDescriptorCount.


Посмотрел - и в BGInetAccess и BGInetAccounting стоит MaxFileDescriptorCount = 32768
А OpenFileDescriptorCount = 177 для BGInetAccess и 85 для BGInetAccounting


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 09 фев 2015, 19:54 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
пожалуй не буду пока обновляться, как проблема повторится (если повторится, все-таки я переехал на более свежий линукс), посмотрю эти значения.
Amir, большое спасибо за советы!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 09 фев 2015, 20:01 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Может быть можно значения OpenFileDescriptorCount приложений добавить в mrtg?
Чтобы, если снова появится, быть уверенным и знать, какое приложение решило вдруг открыть много файлов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 09 фев 2015, 20:07 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
ага, так и сделаю


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 10 фев 2015, 12:33 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
пока вот...


Вложения:
openedfiles-auto-preview.png
openedfiles-auto-preview.png [ 14.64 КБ | Просмотров: 12234 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 11 фев 2015, 04:22 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
А теперь?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 11 фев 2015, 15:07 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
вчера пришлось перезагружать биллинг (по другим причинам), после перезагрузки количество открытых файлов уменьшилось, сейчас опять растет. Жду когда проблема проявится...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 12 фев 2015, 16:43 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Так и постоянно растет? Или все-таки циклически?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 17 фев 2015, 13:58 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Пока все в норме:


Вложения:
openedfiles-auto-preview.png
openedfiles-auto-preview.png [ 15.22 КБ | Просмотров: 12192 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 26 фев 2015, 20:32 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Напишу пожалуй в эту тему, хотя и проблема напрямую с заголовком не связана. Возможно есть какая-то взаимосвязь.

Началось сегодня с того, что поступили жалобы от техподдержки, что абоненты получают IP адреса (т.е. создается первая сессия в биллинге), а инета нет (не создается вторая сессия и не стартует ISG). В логах обнаружились ошибки:
Код:
dhcp 02-26/15:00:31 ERROR [dhcpLstnr-p-9-t-2] InetDhcpProcessor - 7
java.lang.ArrayIndexOutOfBoundsException: 7
        at ru.bitel.bgbilling.modules.inet.api.server.InetUtils.parseInt(InetUtils.java:560)
        at ru.bitel.bgbilling.modules.inet.runtime.device.AbstractInetDeviceRuntime.getOption82InterfaceId(AbstractInetDeviceRuntime.java:299)
        at ru.bitel.bgbilling.modules.inet.runtime.device.InetDeviceRuntime.getOption82InterfaceId(InetDeviceRuntime.java:1)
        at ru.bitel.bgbilling.modules.inet.dhcp.InetDhcpDevice.findServRuntime(InetDhcpDevice.java:402)
        at ru.bitel.bgbilling.modules.inet.dhcp.InetDhcpProcessor.processOption82RequestImpl(InetDhcpProcessor.java:204)
        at ru.bitel.bgbilling.modules.inet.dhcp.InetAbstractDhcpProcessor.processOption82Request(InetAbstractDhcpProcessor.java:504)
        at ru.bitel.bgbilling.modules.inet.dhcp.InetAbstractDhcpProcessor.processRequest(InetAbstractDhcpProcessor.java:253)
        at ru.bitel.bgbilling.kernel.network.dhcp.DhcpListenerWorker.runImpl(DhcpListenerWorker.java:89)
        at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:86)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
        at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:46)
dhcp 02-26/15:00:33 ERROR [dhcpLstnr-p-9-t-33] InetDhcpProcessor - 7


Приаттачу картинку, где видно что абонент как-будто получил два IP адреса (две соответствующие сессии), а ISG сессия "отключена".


Вложения:
bgb1.jpg
bgb1.jpg [ 329.35 КБ | Просмотров: 12177 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 26 фев 2015, 20:36 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Перезагрузил биллинг, начались другие проблемы:

Код:
02-26/18:04:51  INFO [rdsLstnr-p-7-t-10] InetRadiusProcessor - REQUEST_AFTER_PREPROCESS:
Packet type: Access-Request
Identifier: 231
Authenticator: {D5 4A 36 E8 99 4E AE 38 BC F2 F6 3D 18 32 32 26}
Attributes:
  User-Name=109.XXX.56.222
  NAS-Identifier=R31
  NAS-Port-Id=0/2/0/1001
  User-Password=cisco
  Event-Timestamp=1424959491
  NAS-IP-Address=10.100.198.31
  NAS-Port=150720560
  Service-Type=5
  Framed-IP-Address=109.XXX.56.222
  NAS-Port-Type=33
  cisco-NAS-Port=0/2/0/1001
  cisco-SSG-Account-Info=S109.XXX.56.222

02-26/18:04:51 DEBUG [rdsLstnr-p-7-t-10] RadiusProcessor - Create new radius session.
02-26/18:04:51 DEBUG [rdsLstnr-p-7-t-10] InetRadiusHelperProcessor - Search serv by key 109.XXX.56.222
02-26/18:04:51 DEBUG [rdsLstnr-p-7-t-10] InetRadiusHelperProcessor - Connection entry not found, use default search
02-26/18:04:51  INFO [rdsLstnr-p-7-t-10] InetNas - Search by username=109.XXX.56.222
02-26/18:04:51  INFO [rdsLstnr-p-7-t-10] InetRadiusProcessor - [username=109.XXX.56.222] InetServ not found.
02-26/18:04:51  INFO [rdsLstnr-p-7-t-10] InetRadiusProcessor - Return code=1
02-26/18:04:51  INFO [rdsLstnr-p-7-t-10] InetRadiusProcessor - RESPONSE_BEFORE_POSTPROCESS:
Packet type: Access-Reject
Identifier: 231
Authenticator: {}
Attributes:
  Reply-Message=1

Process time auth: 2

02-26/18:04:51 DEBUG [rdsLstnr-p-7-t-10] ProcessorRequest - Sending to /10.100.198.31:1645
02-26/18:04:51  INFO [rdsLstnr-p-7-t-10] InetRadiusListenerWorker - RESPONSE:
Packet type: Access-Reject
Identifier: 231
Authenticator: {11 A1 11 D3 77 0C EA D0 9B F3 78 B5 E0 C2 9D EA}
Attributes:
  Reply-Message=1

Process time auth: 4


Т.е. биллинг не находит L2 сессию для данного IP и отказывает брасу в ISG сессии для данного клиента. Хотя L2 сессия есть, вот она на скриншоте:


Вложения:
bgb2.jpg
bgb2.jpg [ 253.78 КБ | Просмотров: 12177 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 26 фев 2015, 20:40 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Цитата:
java.lang.ArrayIndexOutOfBoundsException: 7
at ru.bitel.bgbilling.modules.inet.api.server.InetUtils.parseInt(InetUtils.java:560)
at ru.bitel.bgbilling.modules.inet.runtime.device.AbstractInetDeviceRuntime.getOption82InterfaceId(AbstractInetDeviceRuntime.java:299)
at ru.bitel.bgbilling.modules.inet.runtime.device.InetDeviceRuntime.getOption82InterfaceId(InetDeviceRuntime.java:1)
Здесь ошибка разбора опции 82 из DHCP-пакета - была попытка вытащить номер порта, но настройки не совпадают с тем что пришло в option82.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 26 фев 2015, 20:43 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Если dhcp сессию в биллинге сбросить (завершить зависшее соединение) и заставить абонента перезапросить IP, то все выправляется.
Интересно что если ждать больше времени dhcp lease time (ведь по его истечению абонент должен перезапросить адрес), проблема сама собой не решается. Т.е. требуется индивидуальное решение для каждого.

При этом в activemq нет pending queue, вообще activemq на отдельном сервере, mysql тоже на отдельном сервере, везде минимальный load average. В сети вроде как ничего не происходило.

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

  Клиент: вер. 6.1.814 / 04.12.2014 20:01:21
    os: Windows 7; java: Java HotSpot(TM) 64-Bit Server VM, v.1.7.0_71
  Сервер: вер. 6.1.1007 / 04.12.2014 22:20:07
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.7.0_65

  card: вер. 6.1.202 / 19.11.2014 14:51:32
  inet: вер. 6.1.635 / 04.12.2014 22:20:25
  npay: вер. 6.1.181 / 19.11.2014 14:51:58
  reports: вер. 6.1.195 / 21.11.2014 19:30:55
  subscription: вер. 6.1.29 / 27.08.2014 16:19:48


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 26 фев 2015, 20:45 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Цитата:
Здесь ошибка разбора опции 82 из DHCP-пакета - была попытка вытащить номер порта, но настройки не совпадают с тем что пришло в option82

т.е. это не критично? Но ведь dhcp сессия создавалась, значит опция 82 разбиралась... хотя это возможно были разные клиенты - те из-за которых возник этот лог и те у которых были проблемы...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 26 фев 2015, 20:46 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
При старте InetAccess ошибок не было? В его логах при старте есть подряд строчки
InetConnectionKeyMap ... Restored connection add ...
?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 26 фев 2015, 20:50 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
После старта error.log чистый. А записей вида "INFO [main] InetConnectionKeyMap - Restored connection add " огромное количество.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 26 фев 2015, 20:51 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Меня честно говоря напрягает вторая ситуация - когда dhcp сессия есть, а радиус не пускает, говорит "Connection entry not found"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 26 фев 2015, 20:55 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Цитата:
А записей вида "INFO [main] InetConnectionKeyMap - Restored connection add " огромное количество.
А с этим IP-адресом, которому говорит Connection entry not found - есть Restored connection add?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 26 фев 2015, 20:59 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
нет, с этим IP нету


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 26 фев 2015, 21:09 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Пока не понял почему он туда не попал, должен был быть как-раз в среди Restored connection add, раз DHCP сессия была.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 26 фев 2015, 21:21 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
Зато этот IP в логах встречается в access.log:

access.log:access 02-26/17:10:49 DEBUG [main] InetConnectionManager - Restore connection: InetConnection [id=359227-0, iface=247:1, sessId=426161f8, start=15.02.2015 17:17:33, uname=null, addr=109.XXX.56.222]
access.log:access 02-26/17:10:49 DEBUG [main] InetConnectionManager - Restore connection: InetConnection [id=359228-0, iface=2:146870809, sessId=0/2/0/1001_08C11219, start=15.02.2015 17:17:41, uname=109.XXX.56.222, addr=109.XXX.56.222]

Но среди "INFO [main] InetConnectionKeyMap - Restored connection add" в radius.log его нет

Биллинг я перезагружал примерно в 17:10


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 26 фев 2015, 21:31 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Можете логи InetAccess отправить в личку?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: java.io.IOException: Too many open files (CRM)
СообщениеДобавлено: 26 фев 2015, 21:42 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 24 июн 2009, 17:49
Сообщения: 640
Карма: 10
логи выслал, доступ тоже сейчас сделаю


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 90 ]  На страницу Пред.  1, 2, 3

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


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

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


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

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