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

Contenu connexe

Tendances

Tendances (12)

進撃のSbt
進撃のSbt進撃のSbt
進撃のSbt
 
C#エンジニアのためのdocker kubernetesハンズオン
C#エンジニアのためのdocker kubernetesハンズオンC#エンジニアのためのdocker kubernetesハンズオン
C#エンジニアのためのdocker kubernetesハンズオン
 
20190806 Q# Measurements
20190806 Q# Measurements20190806 Q# Measurements
20190806 Q# Measurements
 
nginxのログを非スケーラブルに省メモリな方法で蓄積する
nginxのログを非スケーラブルに省メモリな方法で蓄積するnginxのログを非スケーラブルに省メモリな方法で蓄積する
nginxのログを非スケーラブルに省メモリな方法で蓄積する
 
RecentApps
RecentAppsRecentApps
RecentApps
 
Mackerelによる
簡単サーバー管理入門と発展形
Mackerelによる
簡単サーバー管理入門と発展形Mackerelによる
簡単サーバー管理入門と発展形
Mackerelによる
簡単サーバー管理入門と発展形
 
普段の開発を少しだけ便利にする3つのレシピ
普段の開発を少しだけ便利にする3つのレシピ普段の開発を少しだけ便利にする3つのレシピ
普段の開発を少しだけ便利にする3つのレシピ
 
秒速ChainerMN
秒速ChainerMN秒速ChainerMN
秒速ChainerMN
 
2016年度 第2回バイオインフォマティクス実習
2016年度 第2回バイオインフォマティクス実習2016年度 第2回バイオインフォマティクス実習
2016年度 第2回バイオインフォマティクス実習
 
Elixir Meetup #1 Loggerの構造と拡張
Elixir Meetup #1 Loggerの構造と拡張Elixir Meetup #1 Loggerの構造と拡張
Elixir Meetup #1 Loggerの構造と拡張
 
1day cloud on_your_lab
1day cloud on_your_lab1day cloud on_your_lab
1day cloud on_your_lab
 
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
 

Similaire à Logback stackdriver-loggingを作った

明日から使えるgradle
明日から使えるgradle明日から使えるgradle
明日から使えるgradle
kimukou_26 Kimukou
 
Playbay Play 2.0 plugin イロハのイ
Playbay Play 2.0 plugin イロハのイPlaybay Play 2.0 plugin イロハのイ
Playbay Play 2.0 plugin イロハのイ
Kazuhiro Hara
 
Building Static Website With Github And Jekyll
Building Static Website With Github And JekyllBuilding Static Website With Github And Jekyll
Building Static Website With Github And Jekyll
Yoji Shidara
 

Similaire à Logback stackdriver-loggingを作った (20)

GoBGP活用によるSD-WANプラクティス
GoBGP活用によるSD-WANプラクティスGoBGP活用によるSD-WANプラクティス
GoBGP活用によるSD-WANプラクティス
 
Gocon2017:Goのロギング周りの考察
Gocon2017:Goのロギング周りの考察Gocon2017:Goのロギング周りの考察
Gocon2017:Goのロギング周りの考察
 
はじめての Gatling
はじめての Gatlingはじめての Gatling
はじめての Gatling
 
RgGen ご紹介
RgGen ご紹介RgGen ご紹介
RgGen ご紹介
 
Markup Template Engine introduced Groovy 2.3
Markup Template Engine introduced Groovy 2.3Markup Template Engine introduced Groovy 2.3
Markup Template Engine introduced Groovy 2.3
 
Riot + generator で始める新しいデータバインディング
Riot + generator で始める新しいデータバインディングRiot + generator で始める新しいデータバインディング
Riot + generator で始める新しいデータバインディング
 
.NET Core diagnostics tips
.NET Core diagnostics tips.NET Core diagnostics tips
.NET Core diagnostics tips
 
Grailsのススメ(仮)
Grailsのススメ(仮)Grailsのススメ(仮)
Grailsのススメ(仮)
 
こんなに使える!今どきのAPIドキュメンテーションツール
こんなに使える!今どきのAPIドキュメンテーションツールこんなに使える!今どきのAPIドキュメンテーションツール
こんなに使える!今どきのAPIドキュメンテーションツール
 
明日から使えるgradle
明日から使えるgradle明日から使えるgradle
明日から使えるgradle
 
Rocroにおけるgcp活用事例
Rocroにおけるgcp活用事例Rocroにおけるgcp活用事例
Rocroにおけるgcp活用事例
 
OCaml でデータ分析
OCaml でデータ分析OCaml でデータ分析
OCaml でデータ分析
 
Pycon2014 django performance
Pycon2014 django performancePycon2014 django performance
Pycon2014 django performance
 
Playbay Play 2.0 plugin イロハのイ
Playbay Play 2.0 plugin イロハのイPlaybay Play 2.0 plugin イロハのイ
Playbay Play 2.0 plugin イロハのイ
 
GNS3上の仮想アプライアンス+GitLabRunner+BDDによるテスト自動化
GNS3上の仮想アプライアンス+GitLabRunner+BDDによるテスト自動化GNS3上の仮想アプライアンス+GitLabRunner+BDDによるテスト自動化
GNS3上の仮想アプライアンス+GitLabRunner+BDDによるテスト自動化
 
Building Static Website With Github And Jekyll
Building Static Website With Github And JekyllBuilding Static Website With Github And Jekyll
Building Static Website With Github And Jekyll
 
PostgreSQLのトラブルシューティング@第5回中国地方DB勉強会
PostgreSQLのトラブルシューティング@第5回中国地方DB勉強会PostgreSQLのトラブルシューティング@第5回中国地方DB勉強会
PostgreSQLのトラブルシューティング@第5回中国地方DB勉強会
 
HBase on EC2
HBase on EC2HBase on EC2
HBase on EC2
 
WagtailとPelicanでJAMstack環境作ってみた
WagtailとPelicanでJAMstack環境作ってみたWagtailとPelicanでJAMstack環境作ってみた
WagtailとPelicanでJAMstack環境作ってみた
 
Introduction to GraalVM and Native Image
Introduction to GraalVM and Native ImageIntroduction to GraalVM and Native Image
Introduction to GraalVM and Native Image
 

Plus de kuro kuro (8)

Scalaプロダクトのビルド高速化
Scalaプロダクトのビルド高速化Scalaプロダクトのビルド高速化
Scalaプロダクトのビルド高速化
 
Maglev: A Fast and Reliable Software Network Load Balancer
Maglev: A Fast and Reliable Software Network Load BalancerMaglev: A Fast and Reliable Software Network Load Balancer
Maglev: A Fast and Reliable Software Network Load Balancer
 
AWSで透過プロキシをやってみた
AWSで透過プロキシをやってみたAWSで透過プロキシをやってみた
AWSで透過プロキシをやってみた
 
さくらのシンプル監視でWi-Fiの死活監視をしてみた wakate2016w LT
さくらのシンプル監視でWi-Fiの死活監視をしてみた wakate2016w LTさくらのシンプル監視でWi-Fiの死活監視をしてみた wakate2016w LT
さくらのシンプル監視でWi-Fiの死活監視をしてみた wakate2016w LT
 
ICT Trouble Shooting Contest
ICT Trouble Shooting ContestICT Trouble Shooting Contest
ICT Trouble Shooting Contest
 
holidaymakerを支える技術
holidaymakerを支える技術holidaymakerを支える技術
holidaymakerを支える技術
 
明大・日大交流会全体統括
明大・日大交流会全体統括明大・日大交流会全体統括
明大・日大交流会全体統括
 
CTFに参加してきました。
CTFに参加してきました。CTFに参加してきました。
CTFに参加してきました。
 

Logback stackdriver-loggingを作った