Systemd는 표준 출력을 로그 파일에 기록하지만 로그에도 보관합니다.

Systemd는 표준 출력을 로그 파일에 기록하지만 로그에도 보관합니다.

안녕하세요, 저는 Debian 11에서 기본적으로 Nodejs 백엔드 애플리케이션을 실행하는 서비스를 만들었습니다. 이것은 내 서비스 정의입니다.

[Unit]
Description=Opmet rest api

[Service]
ExecStart=node /media/data/opmet_rest_api/dist/main.js
Restart=always
User=root
# Note Debian/Ubuntu uses 'nogroup', RHEL/Fedora uses 'nobody'
Group=nogroup
Environment=PATH=/usr/bin:/usr/local/bin
Environment=NODE_ENV=production
WorkingDirectory=/media/data/opmet_rest_api/
StandardOutput=append:/var/log/opmet/opmet.log
StandardError=append:/var/log/opmet/opmet.log

[Install]
WantedBy=multi-user.target

지금까지는 stdout모든 출력을 작성하고 있지만 /var/log/opmet/opmet.log 제 질문은 journalctl.

이제 실행하면 journalctl -u opmet.service시작 및 중지 메시지만 표시됩니다.

-- Journal begins at Mon 2023-03-13 12:08:51 UTC, ends at Tue 2023-10-17 18:21:25 UTC. --
oct 17 17:09:15 rectared09d systemd[1]: Started Opmet rest api.
oct 17 17:38:31 rectared09d systemd[1]: Stopping Opmet rest api...
oct 17 17:38:31 rectared09d systemd[1]: opmet.service: Succeeded.
oct 17 17:38:31 rectared09d systemd[1]: Stopped Opmet rest api.
oct 17 17:38:31 rectared09d systemd[1]: opmet.service: Consumed 4.470s CPU time.
oct 17 17:51:45 rectared09d systemd[1]: Started Opmet rest api.

미리 감사드립니다.

관련 정보