Как системные сервисы работают в оснастке

При создании моментального снимка и в соответствии с синтаксисом файла snapcraft.yaml можно добавить ключевое слово daemon, чтобы указать, что приложение будет запускаться как системная служба. В качестве примера такого объявления:

apps:
  tinyproxy:
    command: ./launcher.sh
    daemon: simple
    plugs: [network,network-bind]

Однако, что именно означает быть системным сервисом в оснастке? То есть каков их жизненный цикл (запуск, перезапуск, остановка ...)? Могу ли я контролировать их работу в системе с помощью обычных инструментов (ps, top и т. Д.)?

9
задан 9 June 2016 в 03:48

1 ответ

От https://developer.ubuntu.com/en/snappy/build-apps/debug/

Тестирование сервиса

Для тестирования сервиса, это должно быть установлено сначала. После того как это установлено, systemd's systemctl команда может использоваться, чтобы видеть, запускается ли услуга и работает как ожидалось, например:

systemctl status snap.<name>.<appname>

Нахождение журналов

journalctl команда может использоваться для осмотра сообщений, что сервис отправляет к stdout/stderr, например:

journalctl -u snap.<name>.<appname>

Сервисы могут регистрировать дополнительные данные к системному журналу (/var/log/syslog) или к пользовательским каталогам журнала. Обратите внимание, что пользовательские каталоги журнала должны быть в пути, в который может записать сервис (обычно SNAP_DATA).

Получение дампа ядра

Для включения дампов ядра, необходимо настроить место, чтобы записать им в через sysfs. Например, можно использовать

$ echo "/tmp/core.%e.%p" > /proc/sys/kernel/core_pattern

гарантировать, что в Ваш coredumps вписывают /tmp каталог, независимо от где CWD из процесса, который получил сигнал, был.

8
ответ дан 9 June 2016 в 03:48

Другие вопросы по тегам:

Похожие вопросы: