Skip to content

Instantly share code, notes, and snippets.

@nakatanakatana
Last active May 23, 2020 17:36
Show Gist options
  • Save nakatanakatana/eec3916a77d5033b903e0fb0278de2eb to your computer and use it in GitHub Desktop.
Save nakatanakatana/eec3916a77d5033b903e0fb0278de2eb to your computer and use it in GitHub Desktop.
GCE上にdocker contaienr をデプロイしたときのログまわりの動作(確認中)

GCE上でdockerコンテナを動かす時のログまわりのメモ

ドキュメント

課題点

  • zap + zapdriverをつかってログを構成しているアプリをcrond経由で動かしたときに構造化ログがjsonPayloadにうまく展開されない
    • ログ自体は入るがjsonPayload.messageにテキストとしてJSONが入る

確認したこと

  • zapdriverの設定はほぼデフォルト zapdriver.NewProductionConfig() でコンフィグを作成して使っている
    • stderrにログはでる
  • GCE上で実行時はメインのアプリコンテナと別でlogging-agentがsidecarとしてうごいている
    • gcr.io/stackdriver-agents/stackdriver-logging-agent:0.2-1.5.33-1-1
    • 中身はメインのアプリのログをfluentdでstackdriverに送っているもの、コンフィグはここらへんっぽい?
    • stderr => log-driver=json => sidecar を経由している間で、エスケープされた文字になりそれがJSONログとしてパースされていない
    • sidecarのfluentdの設定変更は出来ない雰囲気
    • docker のログ(json-file)のlogフィールドに構造化ログを入れるのもできない?
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment