/var/log/overleaf/ 以下にそれぞれのログファイルを書き込みます。kubectl logs に表示されるのは、コンテナの起動時の出力(初期化スクリプト、マイグレーション)だけです。Toolkit の bin/logs も同じファイルを読み取ります。ログを参照してください。
ログの読み取り
複数のレプリカを使う場合、各 Pod はそれぞれのファイルを持ちます。
deploy/overleaf の代わりに Pod 名(overleaf-0、overleaf-1 など)を使用してください。HAProxy が付加する X-Served-By ヘッダーで、どのレプリカがリクエストに応答したかがわかります。
ConfigMap の LOG_LEVEL(デフォルトは info。ほかに debug、warn、error)で、Pod 内のすべてのサービスのレベルを一括で設定できます。
ログの保持
ファイルはコンテナ内にあり、Pod が置き換えられると失われます。保持するには、Deployment または StatefulSet で/var/log/overleaf にボリューム(ノード上の hostPath や PersistentVolumeClaim など)をマウントします。
Kubernetes でのテスト
Kubernetes 1.37 上でレプリカ 3 つ、上記のように/var/log/overleaf に hostPath ボリュームを置いた状態で、各ノードの /srv/overleaf-logs にそのレプリカの 12 個のサービスログが保存され、表のコマンドは記載どおりに動作しました: kubectl exec 経由の tail、ログファイルの kubectl cp、Overleaf Pod(起動とマイグレーション)と mongo-0 の kubectl logs。
