2017-05-14 16 views
1

Kubernetesがポッドでgrpcサービスを設定して実行しています。私は正常にサービス上のエンドポイントに当たっています。このサービスにはprint()ステートメントがありますが、ログファイルにはログはありません。私はKubernetesで(cron)ジョブを実行していたときにこれを見ていました。ログは、ジョブが実行された後にのみ表示されます(ジョブが実行されていたときとは異なります)。 kubernetesをすぐにログファイルに書き込む方法はありますか?私が置くことができるすべての設定(クラスターレベルまたはポッドのみ)?事前に助けてくれてありがとう!Kubernetes Podにログが表示されない

+0

これはあなたの他の質問に関連していますか?これは私たちのgrpcサービスがstdoutに送信していないことができるようにさらにいっそう聞こえます – thisguy123

答えて

2

根本原因を発見しました。具体的には、Python app does not print anything when running detached in dockerにあります。解決策は、次の環境変数PYTHONUNBUFFERED = 0を設定することです。 printステートメントが表示されていないことではなく、printステートメントがバッファされていたということでした。上記を行うことで問題が解決されます。

+0

おかげで!同様のことが、Cプログラム(https://stackoverflow.com/questions/1716296/why-does-printf-not-flush-after-the-call-message.html)のおかげで、 'fflush(stdout);'で解決されました。 newline-in-the-format-strinでない限り) –

関連する問題