systemctl でスクリプトの生成されたプロセスを追跡するにはどうすればよいですか?

systemctl でスクリプトの生成されたプロセスを追跡するにはどうすればよいですか?

続きとして以前の投稿の一つ私は systemd を使用して Ubuntu 18.04 で GMod サーバーを実行しています。私の systemd スクリプトは次のようになります。

[Unit]
Description=Gmod Server
After=network.target

[Service]
User=rooday # the user I normally run run_gmod.sh with
ExecStart=/datadrive/srcds/run_gmod.sh
Restart=Always

[Install]
WantedBy=multi-user.target

サーバーは正常に動作しますが、問題はsystemctl statusサーバーjournalctlバイナリの実際のログが表示されないことです。

これは、run_gmod.shスクリプトsrcds_runsrcdsインストール時に、サーバーのパラメータ(ゲームモード、マップなど)を設定します。srcds_runこれらのパラメータを取得して環境変数を設定し、実際のサーバー バイナリを実行します(クラッシュ後にサーバー バイナリを再起動したり、サーバーを更新したりするロジックもあります)。

srcds_runロジックがたくさんあるので、それをバイパスしてバイナリを直接実行したくありません (srcds サーバーに詳しい人がその方が良いオプションだと考えている場合を除く) 。サーバー バイナリのログを取得しsystemctlて表示したいだけです。 を使用しようとしましたが、実行するとハングアップするため、これが適切なオプションかどうかわかりません。適切なログを取得する方法や、サーバーを実行するより良い方法をご存知の方はいませんか?journalctlType=forkingsystemctl restart gmodsystemctl

関連情報