|
Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.
|
Изменения (3)
просмотр истории страницы{toc} |
h1. Для чего нужен nas_event_daemon |
... |
h1. Отладка |
h2. Проверьте запущен ли демон Выполните команду "ps aux | grep nas_event_daemon" в терминале, вывод должен быть приблизительно следующим: {code}# ps aux | grep nas_event_daemon root 13560 0.0 0.0 106184 1608 ? Ss 10:40 0:00 /bin/bash /usr/local/sbin/nas_event_daemon root 14291 0.0 0.0 103320 920 pts/0 S+ 10:40 0:00 grep nas_event_daemon {code} Первая строка "*/bin/bash /usr/local/sbin/nas_event_daemon*" говорит о том что демон запущен. h2. Проверьте стек событий на отправку |
Узнать количество команд в стеке с группировкой по типу команды можно выполнив скрипт *event_count.sh*: {code}chroot /app/asr_billing/ event_count.sh{code} |
... |
#* *NAS_ID* - ID NAS/BRAS #* *TRY_COUNT* - количество выполненных попыток отправки команд |
h3. Поиск причины переполнения стека В зависимости от ситуации и схемы интеграции с NAS, нормальным можно считать следующее количество событий: * Штатная работа - до 200 событий суммарно в events_stack и events_stack_compact * Массовая авторизация на NAS (например, после перезагрузки) - до 5 на абонента в суммарно в events_stack и events_stack_compact. Например, на NAS 1000 абонентов. Сразу после перезагрузки NAS может скопиться до 5000 событий из-за большого количества авторизаций в короткий срок. При скоплении событий в стеке, они должны отправляться на оборудование со скоростью около 1000 в минуту. Если медленней, то: * Попробуйте увеличить количество форков (описнао выше в статье) * Посмотрите лог отправки событий, возможно NAS слишком долго выполняет полученные команды. Отправьте команду вручную и проверьте скорость ответа программой *time*. На примере Mikrotik: {code}# time send_mikrotik_cmd -s 10.90.185.2 admin servicemode /queue simple remove comment=crb_10.88.0.15 ERROR: UnknownParameter message: 'unknown parameter', command: '/queue/simple/remove =comment=crb_10.88.0.15' exit code: 249 real 0m0.096s user 0m0.031s sys 0m0.008s{code} Время ответа не должно превышать 300 милисекунд. * Возможно БД билинга находится на медленном носителе или прочие аппаратные проблемы мешают работе биллинга. Проведите диагностику по статье "[CarbonBilling:Проблемы с оборудованием]" h2. Проверьте логи h3. Лог демона Он расположен по пути */app/asr_billing/var/log/nas_event_daemon.log* Каждые 60 секунд демон проверяет состояние настройки NAS-серверов в биллинге и синхронизирует настройки: запускает потоки на новые NAS, актуализирует данные по ранее созданным, останавливает потоки отправки на удаленные NAS. При запуске итерации в лог записывается строка с параметрами каждого NAS-сервера на который будут отправляться команды. Пример записи о NAS-сервере интегрированном по стандартной схеме Mikrotik-Simple: {code}2019-08-27 10:57:41 vm185-120 nas_event_daemon[32736]: Start work with nas nasid=1116 nas_ip=10.90.185.2 oss_pathname=/var/oss/core/Mikrotik-Simple script_name=<null>{code} * 2019-08-27 10:57:41 - дата и время записи * vm185-120 - hostname опреационной системы * nas_event_daemon[32736]: Start work with nas - запись о начале работы с NAS, 32736 - PID процесса демона * nasid=1116 - ID NAS в базе биллинга * nas_ip=10.90.185.2 - IP-адрес NAS * oss_pathname=/var/oss/core/Mikrotik-Simple - путь [директории OSS-схемы|CarbonBilling:Интеграция оборудования интернет] * script_name=<null> - путь до скрипта, если [стандартные OSS-схемы не используются|CarbonBilling:Интеграция оборудования интернет] Если в логе нет записи о начале работы с Вашим NAS: * Выбрана OSS схема, но не [инициализирована|CarbonBilling:Этап 2. Генерация конфигурации и upload на оборудование] * Возможно настройка не была завершена - не выбрана OSS схема или не указан скрипт управления если используетс ястарая схема интеграции * Нет файлов схемы или скрипта управления по указанному пути - такое может произойти если производили [перенос|CarbonBilling:Перенос на другой сервер или переустановка] на новый сервер h3. Лог NAS Логи по каждому NAS в отдельности сохраняются в папке */app/asr_billing/var/log/nas_event_daemon/*, например: {code}/app/asr_billing/var/log/nas_event_daemon/Test_NAS_10.20.11.15.log{code} Имя файла состоит из [наименования и IP-адреса NAS-сервера|CarbonBilling:Этап 1. Мастер Стандартной схемы NAS] В логе записываются команды вызываемые из скрипта управления оборудованием. {info}Их можно скопировать прямо из лога и выполнить в командной строке внутри контейнера биллинга, например: {code}chroot /app/asr_billing time send_mikrotik_cmd -s 10.90.185.2 admin servicemode /queue simple remove comment=crb_10.88.0.15{code} Это может сильно помочь в диагностике.{info} Так же в логе отражен ответ NAS-сервера. При возникновении каких-либо ошибок можно попробовать понять по документации NAS в чем именно была проблема. h3. Лог учетной записи Логи учтеных записей дублируют данные из лога NAS-сервера, в них пишутся только логи конкретной [учетной записи|CarbonBilling:Учетная запись. Создание и изменение.]. Они располагаются в папке */app/asr_billing/var/log/abonents/*. Рассмотрим на примере: {code}/app/asr_billing/var/log/abonents/1375/event_1424.log{code} * */app/asr_billing/var/log/abonents/* - папка с логами отправленных команд по абонентами и учетным записям * *1375* - ID абонента * event_*1424*.log - название файла, где 1424 - ID учетной записи. По этим логам можно попробовать диагностировать проблемы конкретного абонента, что может существенно снизить время поиска проблемы. |