Centos7を使用しており、サービスを作成しました。
[Unit]
Description=My Audit Daemon
After=postgresql.service
[Service]
User=root
WorkingDirectory=/opt/MyAuditDaemon
ExecStart=/usr/bin/java -Xmx256m -jar MyAuditDaemon.jar
TimeoutSec=30
SuccessExitStatus=143
Restart=always
RestartSec=3
[Install]
WantedBy=multi-user.target
サービスが停止したかどうか記録したいと思います。
JavaプログラムにShutdownHookを入れたので、systemctl stop myauditdaemon.serviceを使用して停止すると、システムログに記録されます。これはSIGTERMで終了したときにも機能します。
ただし、シャットダウンまたは再起動コマンドを使用すると、システムログにメッセージはありません。
また、サービスファイルでExecStopパラメータを使用してみました。
ExecStop=/usr/bin/logger -p local5.info -n localhost My Audit Service stopped.
これは、systemctl または SIGTERM を使用してサービスを停止する場合にのみ機能します。
このデーモンの終了をどのように記録するのですか?