logback stackdriver-loggingを作った
TRANSCRIPT
![Page 1: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/1.jpg)
CyberAgent, Inc. All Rights Reserved
logback-stackdriver-loggingを作った
![Page 2: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/2.jpg)
黒崎 優太
● アドテクスタジオ Dynalyst エンジニア
● 本の査読に参加しました↓
もうすぐ発売 最近発売
![Page 3: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/3.jpg)
Stackdriver Loggingとは
● ログをいい感じに管理してくれる(詳細は後述)○ クラウド / オンプレ制限なし
○ 最近一般公開された
● $0.5 / GB (GCP上なら5GB/月まで無料)● BigQuery / PubSubへストリーミング可能
![Page 4: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/4.jpg)
Stackdriver ErrorReportingとは
● loggingの設定ができていれば勝手にエラー検
知してくれる
● ログに流れてきたスタックトレースを解析
● Github連携すればエラー箇所のコードへのリ
ンクもできる
![Page 5: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/5.jpg)
logback-stackdriver-logging● https://github.com/kurochan/logback-stac
kdriver-logging● Stackdriver Logging用のフォーマットでロ
グを出力するlogbackのカスタムフォーマッ
タ
● logback.xmlで指定することで使用可能
![Page 6: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/6.jpg)
サンプルアプリ
● https://github.com/kurochan/sample-scala-bad-api
● すぐエラー吐きそうな実装
![Page 7: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/7.jpg)
サンプルアプリの実装
None.getするからダメ
![Page 8: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/8.jpg)
サンプルアプリの実装
None.getするからダメ
None.getするからダメ
![Page 9: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/9.jpg)
サンプルアプリの実装
None.getするからダメ
None.getするからダメ
数字じゃなかったらどうするんだ
![Page 10: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/10.jpg)
サンプルアプリの実装 (logback.xml)
![Page 11: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/11.jpg)
サーバの設定
● https://cloud.google.com/logging/docs/agent/installation○ ドキュメントに従ってagentを入れる
● GCEを使う場合はスクリプト1発で完了
● 中身はfluentなのでlogbackで吐き出すログ・
ファイルをtailするように設定すれば
ログが転送されるように
![Page 12: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/12.jpg)
Stackdriver Logging● ログレベルごとに
色がつく
● 検索 / フィルタリング
● ほぼリアルタイムに
流し見
![Page 13: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/13.jpg)
Stackdriver Logging
![Page 14: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/14.jpg)
Stackdriver Logging
![Page 15: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/15.jpg)
Stackdriver Logging
![Page 16: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/16.jpg)
Stackdriver ErrorReporting
● エラーの回数や時刻、サービス名/バージョ
ンがほぼリアルタイムに表示
![Page 17: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/17.jpg)
Stackdriver ErrorReporting
![Page 18: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/18.jpg)
新しいエラーはメールが来る
![Page 19: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/19.jpg)
アクセス!!
● http://zako.kurochan.org○ /echo-text?text=hello-world○ /echo-number?number=123
![Page 20: Logback stackdriver-loggingを作った](https://reader034.vdocuments.pub/reader034/viewer/2022050812/5870150e1a28ab7f428b53c5/html5/thumbnails/20.jpg)
困ってること
● (新しいエラーの場合)メールが来る
○ それ以外の場合メールが来ない!!
○ 通知機能実装してほしい頼む
● Stackdriver Loggingは構造化したログが扱
えるのに、logbackのインターフェイス上Stringかスタックトレースしか渡せない
○ MDC(診断コンテキスト)はマルチスレッドに向か
なさそう…