Как в ubuntu через systemd писать логи паники в Go?
Недавно заметил странную особенность падения сервера на GO.
Приложение работало хорошо, где-то дней 10. После чего Go неожиданно упал, и nginx стал выдавать 502 ошибку.
Приложение разрабатывал в visual studio code. Там если что, все panic падали в консоль отладки.
А теперь, когда перенёс всё на сервер и запустил, через systemd - не знаю что делать. Где можно посмотреть логи при панике, или если они по дефолту ни в какой файлик не летят, то что надо прописать, чтобы все они падали в нужный файл (или если есть в стандартный существующий, который создает сам Go (если создает вообще?))
Если сервер запускали через юнит systemd, то логи из него в journalctl -u unit_name. Весь оутпут пишется в stdout (консоль), которая перехватывается systemd и обрабатывается. Зачем вам файлы?
teub74: значит всё правильно, у вас есть systemd юнит, отвечающий за запуск сервера.
Его логи: journalctl -u goapp
Включите в юните перезапуск только, чтобы при панике он его сразу перезапускал и не было 502 ошибки.
evnuh: а что надо прописать, чтобы был перезапуск?
[Unit]
Description=goapp
After=network.target
After=nginx.service
After=mysql.service
Requires=mysql.service