unicorn + systemd:ユニコーンのアップグレード後にロギングが失われる

unicorn + systemd:ユニコーンのアップグレード後にロギングが失われる

私はsystemdを使って最初にunicornを配布しています(実際にsystemdを使うのは初めてです)。そしてユニコーン「ダウンタイムゼロアップグレード」トリックまたは基本的には次のようになります。

  • USR2メインプロセスに送信
  • これにより、新しいマスターとワーカーが作成され、古いpidfileの名前が変更され、新しいpidfileが新しいマスターのPIDを反映します。
  • 前のマスターにQUITを送信
  • これにより、以前のワーカーは現在の要求を処理して終了し、古いマスターが死にます。

1つを除いて、すべてがうまく動作します。 systemdのログキャプチャ(for systemctl status)は新しいプロセスの出力を見ることができません。転換過程などに関与しないからだと思います。

システムはい新しいホストのPIDを確認して正しく追跡してください。

ユニコーンの構成でこれを設定してマスターをHUP(マスターのPIDを変更しない)だけすればpreload_app = falseすべてが大丈夫です。しかし、実際にユニコーンをアップグレードしようとする状況は解決されません。

重要な場合は、ユニコーンデーモンがなく、デバイスType=simple設定ファイルにあります。

新しいマスターのログ出力に自分自身を追加するようにsystemdを取得する方法はありますか?

ベストアンサー1

おすすめ記事