Если сервис запущен, то имя контейнера можно узнать с помощью команды docker ps. Если сервис не запущен, то можно создать экземпляр контейнера с помощью команды docker-compose create. В таком случае команда запускается с указанным при создании контейнера именем.
После извлечения скрипта из контейнера его необходимо сделать исполняемым с помощью команды:
$ sudo chmod +x ./check_wifi-cab.sh
Скрипт выполняет несколько http-запросов версии пакета eltex-wifi-cab по адресу, указанному в параметрах запуска скрипта. В случае, если скрипт получает три ошибки подряд, то он пытается выполнить перезапуск сервиса или docker-контейнера Личного кабинета. Логи результатов проверки и перезапуска записываются в файл в директории /var/log/eltex-wifi-cab/check/. Запуск скрипта возможен только с привилегиями суперпользователя.
Параметры
Параметр
Значение по умолчанию
Описание
CABINET_HOST
localhost
IP-адрес сервиса ЛК
CABINET_PORT
8083
Порт сервиса ЛК
CABINET_SERVICE
eltex-wifi-cab
Имя сервиса, если ЛК установлен из deb-пакета
CABINET_DOCKER_CONTAINER_NAME
eltex-wifi-cab
Имя докер контейнера, если ЛК запущен в контейнере
Запуск скрипта
Пример запуска скрипта c параметрами по умолчанию:
$ sudo /usr/lib/eltex-wifi-cab/check_wifi-cab.sh
Cabinet is working
$ sudo cat /var/log/eltex-wifi-cab/check/wifi-cab-check.27-11-2022.txt
----------------------------- (START) ------------------------------
27-11-2022 00:00:01: System information:
27-11-2022 00:00:01: Linux ubuntu 4.15.0-192-generic #203-Ubuntu SMP Wed Aug 10 17:40:03 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
27-11-2022 00:00:01: openjdk version "1.8.0_352"
OpenJDK Runtime Environment (build 1.8.0_352-8u352-ga-1~18.04-b08)
OpenJDK 64-Bit Server VM (build 25.352-b08, mixed mode)
27-11-2022 00:00:01: LoadAverage info
27-11-2022 00:00:01: 1min 5min 15min
27-11-2022 00:00:01: 0.26 0.26 0.20 2/1286 24737
27-11-2022 00:00:01: RAM MemFree: 168832 kB
Disk info
Disk Size Used Available Used % Mount
/dev/vda1 25G 9.6G 15G 40% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
/dev/vda15 105M 8.9M 96M 9% /boot/efi
27-11-2022 00:00:01: eltex-wifi-cab status: ● eltex-wifi-cab.service - Wi-Fi Customer Cab Service
Loaded: loaded (/usr/lib/systemd/system/eltex-wifi-cab.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2022-11-25 08:34:21 UTC; 1 day 15h ago
Main PID: 5648 (java)
Tasks: 63 (limit: 4915)
CGroup: /system.slice/eltex-wifi-cab.service
└─5648 /usr/bin/java -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/log/eltex-wifi-cab -XX:+UseG1GC -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=7 -XX:GCLogFileSize=5M -XX:+UseSt$
Nov 25 08:34:21 ubuntu systemd[1]: Started Wi-Fi Customer Cab Service.
Nov 25 08:34:24 ubuntu eltex-wifi-cab[5648]: . ____ _ __ _ _
Nov 25 08:34:24 ubuntu eltex-wifi-cab[5648]: /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
Nov 25 08:34:24 ubuntu eltex-wifi-cab[5648]: ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
Nov 25 08:34:24 ubuntu eltex-wifi-cab[5648]: \\/ ___)| |_)| | | | | || (_| | ) ) ) )
Nov 25 08:34:24 ubuntu eltex-wifi-cab[5648]: ' |____| .__|_| |_|_| |_\__, | / / / /
Nov 25 08:34:24 ubuntu eltex-wifi-cab[5648]: =========|_|==============|___/=/_/_/_/
Nov 25 08:34:24 ubuntu eltex-wifi-cab[5648]: :: Spring Boot :: (v2.7.0)
27-11-2022 00:00:01: ports (8083) status:
tcp 0 0 127.0.0.1:51422 127.0.0.1:8083 TIME_WAIT -
tcp6 0 0 :::8083 :::* LISTEN 5648/java
27-11-2022: Cabinet is working
Добавление в cron
Существует возможность настроить периодический запуск скрипта с определенным интервалом времени. Для добавления скрипта в автозапуск по cron нужно выполнить следующую команду: