This is an old revision of the document!
11 dpiui related questions
1. Diagnostics of marketing campaigns
Actions to be performed on the DPIUI а) Check that the marketing campaign dates in the "from .. to" (day of the week) form and its action period in the "from 00:00 to 23:59" form are specified correctly in the marketing campaigns input form
б) synchronization log > 0? ls -la /var/log/advsync.log If the synchronization log is empty, check that there is a cron job: grep advsync /var/spool/cron/root it should be: */1 * * * * /var/www/html/dpiui/yii process/advsync >> /var/log/advsync.log check that the process is running, run: /var/www/html/dpiui/yii process/advsync if there are errors you need to check the installation в) if the log is not empty (is not 0), check in synchronization log how the campaigns are organized: grep adv_id= -A1 /var/log/advsync.log the output has to be like the following: adv_id=3, 2017-01-12, 2017-02-12, 2017-Feb-07 10:33, phttp= url: someinfo.mynet.ru/? adv_id=5, 2017-01-29, 2017-02-12, 2017-Feb-07 10:33, phttp= url: www.mynet.ru/? г) Check the DPI download counter: grep 'read t=' /var/log/advsync.log | tail -1 DPISubs have to be > 0, it means there are campaigs on the DPI read t=2017-Feb-07 10:38 DPISubs=6 LastRecs=6 DiffSubs=0 LastSubs=6 In this case, 6 subscribers for all campaigns have been loaded to the DPI. Actions to be performed on the DPI 0!) check that the ntf_server=<any_server.ru> option is specified int the /etc/dpi/fastdpi.conf otherwise, you should specify it and then restart the fastdpi service: service fastdpi restart This option is responsible for the notification option initialization, so it is mandatory. а) проверяем во временной директории файл subsurlsntf.lst: cat /tmp/dpi/subsurlsntf.lst 0 1198406 1 11984920 2 11983297 3 11.0.6.64 ... 1-е значение идентификатор по порядку в списке URL /var/lib/dpi/ntfurl.lst 2-е значение логин или IP абонента б) проверяем наличие файлов в директории DPI: ls -la /var/lib/dpi/ntf* -rw-r--r--. 1 root root 50264 Feb 7 19:25 /var/lib/dpi/ntfurl.bin -rw-r--r--. 1 root root 57732 Feb 7 19:25 /var/lib/dpi/ntfurl.idx -rw-rw-r--. 1 dpisu dpisu 1130487 Feb 7 19:25 /var/lib/dpi/ntfurl.lst файлы /var/lib/dpi/ntfurl.bin и /var/lib/dpi/ntfurl.idx получаются следующим образом: cat /tmp/dpi/subsurlsntf.lst | cat2dic ntfurl.bin ntfurl.idx проверьте что данные файлы совпадают с помощью diff файл /var/lib/dpi/ntfurl.lst текстовый, содержит список урлов, например: promo.mynet.ru/?reg=23&req=53BEEAD0-2ADC-4A2A-A247-E4BA76C90E07& promo.mynet.ru/?reg=66&req=543C1F6B-88B7-4895-9DA2-777E64A1CCFF& ... номер по порядку из данного файла используется в /tmp/dpi/subsurlsntf.lst нумерация начинается с 0 Если перечисленные в пункте файлы есть, и совпадают по diff, значит файлы для загрузки правильно подготовлены в) проверяем наличие услуг: fdpi_ctrl list all --service 50 Результат: Autodetected fastdpi params : dev='lo', port=29000 connecting 127.0.0.1:29000 ... ================================ TestUser 50 (0x2000000000000) 192.168.2.1 50 (0x2000000000000) 192.168.2.2 50 (0x2000000000000) 192.168.2.3 50 (0x2000000000000) 192.168.3.4 50 (0x2000000000000) ------------------ total: 5 Если получили подобный вывод и логины / IP совпадают с файлом /tmp/dpi/subsurlsntf.lst то услуги загружены верно.
2. Не работает нотификация, файлы в директории есть ls /var/lib/dpi/ntf*, услуги есть fdp_ctrl list all --service 50. что может быть еще ?
а) проверьте, что DPI загружает данные:
touch /var/lib/dpi/ntfurl* в fastdpi_alrt.log должно появиться сообщение: bl_updater_thread : Notifications(updatenotifications) list loaded with result, rc=0 : Success: loaded. если его нет то в версии DPI ошибка, обновитесь на версию 5.5 или выше
б) проверьте, что ориентация устройства верная (in_dev - в сторону абонентов / out_dev в сторону и-нет)
в) проверьте, что опция нотификации работает
3. Что делать если забыт пароль от DPI-UI? как сбросить пароль admin'а? При условии локального доступа к серверу и наличии доступа к таблицам БД ?
есть 2 варианта действий: 1. можно удалить пользователя с id=100001 запустить: /var/www/html/dpiui/yii install/createdb создаст дефолтного пользователя admin. 2. поменять пароль на дефолтный у пользователя 100001: "$2y$13$VQHo/VYEgYietJ5AdQ.ute/5RKJlAyC3zbtif5EMfY3DVVVkN9qiG"
4. на сервере с DPIUI быстро расходуется место в /var/www/html/dpiui/runtime/1/clickstream, можно как-то задать лимиты, сколько дней хранить данные / какой объём занимать ?
эти файлы можно удалить, например так: 15 4 * * * /bin/find /var/www/html/dpiui/runtime/*/clickstream -name url_\*.dump.gz -cmin +1440 -delete > /dev/null 2>&1 если команда не была прописана при инсталляции внесите в ручную в файл /var/spool/cron/root
5. не попадают данные по кликстриму в соответствующие таблицы, кликстрим принимается есть информация в буферном файле port.dump (например 1500.dump)
a) возьмите файл из директории кликстрима (параметр dumpfiledir=/var/www/html/dpiui/runtime/1/clickstream/) например - url_29072016_091016.dump.gz, сделайте gzip -d url_29072016_091016.dump.gz. Возьмите ссылку из конфигурации на исполняемый файл(processcmd=/var/www/html/dpiui/commands/processfile.sh), запустите с параметром распакованного ранее файла - /var/www/html/dpiui/commands/processfile.sh url_29072016_091016.dump Обычная проблема не сконфигурирован hostname об том будет соответствующий exception: - ERROR org.apache.spark.SparkContext - Error initializing SparkContext. java.net.UnknownHostException: fdpi.interface: fdpi.interface: Имя или служба не известны проверьте: ping `hostname` настройте правильно hostname и/или пропишите его в /etc/hosts - ERROR Exception in thread "main" java.lang.IllegalArgumentException: System memory 452132864 must be at least 4.718592E8. Please use a larger heap size. - при инициализации Spark, добавьте памяти требуется не менее 4Гб RAM Если есть другие исключения/ошибки сообщите в ТП. b) Если п. а) без ошибок прошел, то проверьте шаблоны поиска введите www.domen, domen в путь введите / Если не помогло a), b) то обратитесь в ТП
6. Не изменяются настройки в DPI конфигурации через dpiui, при их сохранении ошибок нет.
Вероятно поменяли пользователя для работы с устройством, например, root -> dpisu после такой замены на DPI требуется сделать: chown -R dpisu:dpisu /tmp/dpi chmod a+w -R /tmp/dpi