bash 스크립트의 출력을 리디렉션할 위치를 systemd 스크립트에서 어떻게 지정합니까?

bash 스크립트의 출력을 리디렉션할 위치를 systemd 스크립트에서 어떻게 지정합니까?

내 사용자 정의 응용 프로그램을 실행하기 위해 bash 스크립트에 명령이 있습니다.

./my_app --config ./cfg >> my_app.log 2>>my_app.err

나는 그것을 시스템 서비스로 포장하고 싶습니다. 지금까지 나는 이것을 했습니다:

[Unit]
Description=my_app
After=syslog.target

[Service]
ExecStart=/home/user123/my_app_dir/my_app --config cfg
Restart=on-abort
WorkingDirectory=/home/user123/my_app_dir
SyslogIdentifier=my_app
User=my_user

[Install]
WantedBy=multi-user.target

리디렉션된 출력의 두 부분을 로그로 변환하려면 어떻게 해야 합니까?

답변1

StandardOutput=file:/path/to/log1
StandardError=file:/path/to/log2

바라보다공식 매뉴얼. 이렇게 하면 새 파일이 생성되거나 이전 파일을 덮어쓰게 되므로 StandardOutput=append:/path/to/log1이전 로그를 유지하고 싶을 수도 있습니다 .

관련 정보