Проверка статусов сервисов
В этом разделе описывается общая процедура действий и пункты для проверки при устранении неполадок на платформе Navixy. Он охватывает базовую диагностику Java-сервисов, веб-сервера и сервера базы данных. Знание того, как проверять и перезапускать сервисы, поможет понять причину проблемы и точнее её устранить.
Рекомендуется сначала ознакомиться с информацией на странице Компоненты системы чтобы иметь представление о конфигурации и расположении файлов журналов сервисов.
Общая проверка состояния
На актуальных инстансах Navixy On-premise, работающих на Linux, реализован скрипт, который выполняет быструю проверку состояния всех основных компонентов платформы: базы данных, веб-сайта и бэкенд-сервисов. Для его использования выполните вход под root и введите следующую команду в CLI вашего сервера:
check-navixyВывод покажет тип установки (на основе systemd или запущена в Docker) и состояние каждого из сервисов. Ожидаемый вывод должен быть следующим:

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

В зависимости от того, какой сервис дает сбой, следует обратиться к соответствующему разделу руководства или связаться с технической поддержкой для восстановления его работы.
The check-navixy скрипт доступен только для инстансов на базе Linux. Для Windows смотрите инструкции ниже.
Java‑сервисы
Вы можете проверить Java-сервисы (Navixy backend) по отдельности, чтобы получить более подробную информацию об их текущем состоянии и при необходимости перезапустить их.
Linux
На Linux Navixy использует systemd, который входит в состав наиболее распространённых дистрибутивов Linux и является альтернативой традиционным init.d-скриптам. Ранее для той же цели использовался runit, но он сейчас устарел.
Чтобы проверить состояния Java-сервисов Navixy, используйте следующие команды:
Когда всё работает нормально, вывод для каждой команды должен показывать active (running) статус, вместе с текущим временем работы, объёмом используемой памяти и другой технической информацией. Например, нормальный вывод для API-server выглядит так:
Также будут показаны последние записи журнала сервиса, которые могут быть чрезвычайно полезны при диагностике неполадок.
Когда какой-либо из сервисов не работает, команда вернёт inactive (dead) статус. Пример:
В этом случае необходимо изучить логи неработающего сервиса. По умолчанию все журналы находятся в каталоге /home/java/<service_name>/log/ директории.
Если сервис не удаётся запустить, в логах обычно появляются связанные ошибки. Попробуйте проверить информацию до записи Server stopped или любые недавние записи, начинающиеся с WARN или ERROR. Вы также можете попробовать перезапустить сервис и посмотреть, какие новые записи появятся с помощью команды tail -f log.txt.
Для получения информации о перезапуске сервисов обратитесь к соответствующей странице: Перезапуск инстанса - Linux.
Windows
В Windows Java-сервисы Navixy устанавливаются как обычные службы Windows NT. Чтобы получить доступ к службам, откройте services.msc оснастку, и вы найдёте в списке три службы Navixy:

Службы должны иметь Running статус. Если какой-либо из сервисов находится в ином состоянии, попробуйте запустить его и проверьте, начнёт ли он работать корректно. Если служба падает, причину следует искать в логах. Стандартное расположение журналов: C:\java\<service_name>\log\. Если сервис не удаётся запустить, в логах обычно появляются связанные ошибки. Попробуйте проверить информацию до записи Server stopped или любые недавние записи, начинающиеся с WARN или ERROR. Рекомендуется использовать продвинутые текстовые редакторы, такие как Notepad++ или Sublime Text, для просмотра логов. Стандартный Блокнот обычно не справляется с большими текстовыми файлами.
Для получения информации о перезапуске сервисов обратитесь к соответствующей странице: Перезапуск инстанса - Windows.
Веб-сервер
Если Java-сервисы запущены, но доступ к интерфейсу по-прежнему отсутствует, следует проверить, запущен ли веб-сервер Nginx.
Linux
На Linux-инстансе проверьте статус Nginx следующей командой:
Вывод должен показать active (running) статус, вместе с текущим временем работы, объёмом используемой памяти, другой технической информацией и последними записями журналов Nginx.
Если служба имеет inactive (dead) статус, попробуйте запустить её с помощью этой команды:
Убедитесь, что Nginx запустился и работает нормально, а если нет, проверьте возможные ошибки в его журнале.
Windows
В Windows Nginx не является службой, а представляет собой небольшое приложение, работающее в фоновом режиме. Чтобы проверить, запущено ли оно, откройте Диспетчер задач (вкладка "Подробности") и найдите процессы nginx.exe - обычно их два или более.

Если вы не можете найти nginx.exe в списке, попробуйте запустить его исполняемый файл из C:\nginx вручную или с помощью следующих команд в CMD:
Если Nginx запущен, но вы всё ещё не можете получить доступ к платформе, обратитесь к соответствующим руководствам по устранению неполадок панели администратора или пользовательского интерфейса .
База данных
Если вы подозреваете проблемы с подключением к базе данных (или обнаружили соответствующую информацию в логах сервисов), необходимо проверить её состояние. Navixy использует СУБД MySQL, поэтому прежде всего убедитесь, что сервер MySQL запущен. На Linux используйте следующую команду:
В Windows проверьте, что у MySQL статус Running в оснастке services.msc .
Если СУБД работает, но в логах всё ещё встречаются ошибки подключения к базе данных, попробуйте подключиться к MySQL под той же учётной записью, что и Java-сервисы. Например, откройте файл /home/java/api-server/conf/db.properties , получите из него логин и пароль к базе данных и используйте их для подключения к MySQL из оболочки:
Убедитесь, что и другие Java-сервисы также могут подключаться.
Если ваша база данных размещена на отдельном сервере, убедитесь, что соединение с ним доступно по стандартному порту MySQL 3306 (или по пользовательскому порту, если установка выполнена таким образом — проверьте файл db.properties любого из Java-сервисов).
Если в логах вы видите ошибки, связанные не с доступностью базы данных, а с выполнением определённых SQL-запросов, пожалуйста, сообщите об этом в техническую поддержку. Такие проблемы, как правило, слишком сложны для самостоятельного решения.
Свяжитесь с технической поддержкой
Шаги, показанные выше, являются очень базовыми для проверки платформы. Если вы не можете устранить проблему, пожалуйста, свяжитесь с нами по адресу [email protected]и опишите проблему подробно, предоставив логи и всю другую ценную информацию, которая у вас есть. Мы сделаем всё возможное, чтобы помочь.
Последнее обновление
Это было полезно?