Проверка статусов сервисов

В этом разделе описывается общая процедура действий и пункты для проверки при устранении неполадок на платформе Navixy. Он охватывает базовую диагностику Java-сервисов, веб-сервера и сервера базы данных. Знание того, как проверять и перезапускать сервисы, поможет понять причину проблемы и точнее её устранить.

Рекомендуется сначала ознакомиться с информацией на странице Компоненты системы чтобы иметь представление о конфигурации и расположении файлов журналов сервисов.

Общая проверка состояния

На актуальных инстансах Navixy On-premise, работающих на Linux, реализован скрипт, который выполняет быструю проверку состояния всех основных компонентов платформы: базы данных, веб-сайта и бэкенд-сервисов. Для его использования выполните вход под root и введите следующую команду в CLI вашего сервера:

check-navixy

Вывод покажет тип установки (на основе systemd или запущена в Docker) и состояние каждого из сервисов. Ожидаемый вывод должен быть следующим:

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

В зависимости от того, какой сервис дает сбой, следует обратиться к соответствующему разделу руководства или связаться с технической поддержкой для восстановления его работы.

circle-info

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.

circle-info

Для получения информации о перезапуске сервисов обратитесь к соответствующей странице: Перезапуск инстанса - Linux.

Windows

В Windows Java-сервисы Navixy устанавливаются как обычные службы Windows NT. Чтобы получить доступ к службам, откройте services.msc оснастку, и вы найдёте в списке три службы Navixy:

Проверка статусов служб - Windows

Службы должны иметь Running статус. Если какой-либо из сервисов находится в ином состоянии, попробуйте запустить его и проверьте, начнёт ли он работать корректно. Если служба падает, причину следует искать в логах. Стандартное расположение журналов: C:\java\<service_name>\log\. Если сервис не удаётся запустить, в логах обычно появляются связанные ошибки. Попробуйте проверить информацию до записи Server stopped или любые недавние записи, начинающиеся с WARN или ERROR. Рекомендуется использовать продвинутые текстовые редакторы, такие как Notepad++ или Sublime Text, для просмотра логов. Стандартный Блокнот обычно не справляется с большими текстовыми файлами.

circle-info

Для получения информации о перезапуске сервисов обратитесь к соответствующей странице: Перезапуск инстанса - Windows.

Веб-сервер

Если Java-сервисы запущены, но доступ к интерфейсу по-прежнему отсутствует, следует проверить, запущен ли веб-сервер Nginx.

Linux

На Linux-инстансе проверьте статус Nginx следующей командой:

Вывод должен показать active (running) статус, вместе с текущим временем работы, объёмом используемой памяти, другой технической информацией и последними записями журналов Nginx.

Если служба имеет inactive (dead) статус, попробуйте запустить её с помощью этой команды:

Убедитесь, что Nginx запустился и работает нормально, а если нет, проверьте возможные ошибки в его журнале.

Windows

В Windows Nginx не является службой, а представляет собой небольшое приложение, работающее в фоновом режиме. Чтобы проверить, запущено ли оно, откройте Диспетчер задач (вкладка "Подробности") и найдите процессы nginx.exe - обычно их два или более.

Проверка статуса Nginx - Windows

Если вы не можете найти nginx.exe в списке, попробуйте запустить его исполняемый файл из C:\nginx вручную или с помощью следующих команд в CMD:

circle-info

Если 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-сервисов).

circle-info

Если в логах вы видите ошибки, связанные не с доступностью базы данных, а с выполнением определённых SQL-запросов, пожалуйста, сообщите об этом в техническую поддержку. Такие проблемы, как правило, слишком сложны для самостоятельного решения.

Свяжитесь с технической поддержкой

Шаги, показанные выше, являются очень базовыми для проверки платформы. Если вы не можете устранить проблему, пожалуйста, свяжитесь с нами по адресу [email protected]envelopeи опишите проблему подробно, предоставив логи и всю другую ценную информацию, которая у вас есть. Мы сделаем всё возможное, чтобы помочь.

Последнее обновление

Это было полезно?