Проблемы запуска SberMobile Server
SberMobile Server может отображать сообщение об ошибке или же запускаться успешно, но не принимать входящие соединения от устройств или клиентов. Это означает, что возможно есть серьезные ошибки во время запуска сервера. Проверьте файл журнала SberMobile Serverа, чтобы найти причину ошибки. Этот файл по умолчанию называется server.log
и находится в директории инсталляции SberMobile Serverа. См раздел Настройка журналирования.
Иногда критические ошибки, отображаемые в извещении об ошибке, вызваны небольшой проблемой, которую можно диагностировать при помощи файла журнала.
Лицензия повреждена
Сообщение об ошибке появляющется на SberMobile Server, запущенном на Linux или Mac OS без корневых полномочий. Для исправления данной ситуации перезапустите сервер с корневыми полномочиями.
Для Mac OS (с учетом того, что приложение установлено в папке /Application/SberMobile/
):
|
Для Linux:
su
service thalamus_server_service restart
Появление сообщения: "не удалось запустить JVM. Главный метод мог сгенерировать исключение".
Это сообщение означает, что критическая ошибка произошла во время запуска JVM. Чтобы увидеть само сообщение об ошибке, которое позволит диагностировать проблему, используйте загрузчик thalamus_server_console
, чтобы запустить SberMobile Server.
Для Windows окно консоли может исчезнуть раньше того, как Вы успеете прочитать сообщение. В этом случае следует запустить интерпретатор командной строки, чтобы активировать Для этого следует перейти в Start Menu > Run, набрать |
Появление сообщения: "невозможно зарезервировать достаточное пространство для кучи объектов"
Когда Вы попытаетесь запустить SberMobile Server, Вы можете увидеть следующее сообщение:
Error occurred during initialization of VM
Could not reserve enough space for object heap
The JVM could not be started. The main method may have thrown an exception.
Это означает, что Виртуальная машина Java не может назначить объем памяти, заданный параметром загрузчика -Xmx (максимальная память) в одном непрерывном блоке. Существует несколько возможных решений:
Уменьшить значение параметра
-Xmx
, если Ваш SberMobile Server не слишком загружен.Попытаться высвободить часть памяти путем отмены загрузки приложений, перезагружающих машину.
Выделить дополнительную память компьютеру, на котором запущен SberMobile Server.
На ПК с Windows некоторые приложения могут регистрировать собственные динамические библиотеки (DLLs), располагающиеся в памяти по определенному абсолютному адресу. Это делит память на несколько блоков и не позволяет JVM SberMobile Server назначать один крупный блок памяти. Чтобы решить эту проблему, следует использовать редактор реестра для удаления всех введенных данных с
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsNTCurrentVersionWindowsAppInit_DLLs
. Сначала следует сделать резервную копию!
Появление сообщения об ошибке запуска сервиса базы данных
Эта ошибка означает, что сервер не смог установить соединение с базой данных. Обычно основная причина ошибки содержится в сообщении об ошибке. Если основную причину нельзя определить после прочтения сообщения об ошибке запуска сервера, попробуйте выполнить следующее:
Отключить пул соединений с БД
Запусить сервер и дождаться появления сообщения об ошибке
Найти окончание файла журнала сервера (
server.log
по умолчанию), чтоб определить основную причину проблем с БД.Если Вы используете сервер баз данных mysql, поставляющийся совместно с SberMobile, скорее всего не запустился сервис MySQL. Проверьте файлы
SberMobilemysqldata*.err
на наличие ошибок. Поскольку сервер баз данных mysql, поставляющийся совместно с SberMobile, настроен на высокую производительность, он может быть неспособен назначать достаточный объем буферной памяти на некоторых ПК. В этом случае следует уменьшить значения параметровinnodb_buffer_pool_size
иinnodb_buffer_pool_size
в конфигурационном файле MySQL (SberMobilemysqlmy.ini
).
Сервер был запущен, но клиенты не могут подключиться
Если SberMobile Server был запущен, но к нему невозможно подключиться при помощи SberMobile IIoT Platform Client и Web UI, возможно, сервер все еще находится в процессе загрузки. Проверьте файл журнала сервера (server.log
), чтобы узнать, не выполняет ли сервер какую-либо длительную операцию, такую как, например, обслуживание БД. Пожалуйста, свяжитесь с группой тех поддержки SberMobile, если на загрузку сервера уходит больше 3-5 минут.
Неправильная версия java (JRE/JDK) используется %ls%ом для linux
Откройте файл запуска SberMobile Server (это shell-скрипт) для редактирования и отмените преобразование строки INSTALL4J_JAVA_HOME_OVERRIDE
в комментарии. Укажите правильный путь JRE/JDK в этой строке:
#!/bin/sh
# Uncomment the following line to override the JVM search sequence
INSTALL4J_JAVA_HOME_OVERRIDE=/usr/java/path
# Uncomment the following line to add additional VM parameters
Ошибка "java.lang.OutOfMemoryError: Metaspace"
В случае, когда на хост-машине достаточно ресурсов для выполнения SberMobile, но регистрируется ошибка Java.lang.OutOfMemoryError: Metaspace
, минимальное значение параметра Max Metaspace может быть недостаточным для конкретной конфигурации сервера. Чтобы решить эту проблему, установите свойство -XX:MaxMetaspaceSize
в файле server.vmoptions на 512m
или выше.
Ошибка “java.lang.UnsatisfiedLinkError: libXtst.so.6” при запуске сервера
Эта ошибка может возникать в случаях, когда SberMobile установлен на 64-битной ОС с 32-битной средой выполнения Java. В большинстве случаев она может быть решена установкой недостающих библиотек. В Debian-подобных операционных системах это можно сделать с помощью следующей команды:
sudo apt-get install libc6-i386 libstdc++6:i386 libxrender1:i386 libxtst6:i386 libxi6:i386