Google Cloud RunでのDatadog APM活用事例
会員限定コンテンツです。無料登録すると制限なしでお読みいただけます。
レビュー投稿日の情報になります
株式会社コロプラ / 駒崎大輔
メンバー / バックエンドエンジニア / エンジニア組織: 101名〜300名
最終更新日投稿日
利用プラン | 利用機能 | ツールの利用開始時期 | 事業形態 |
---|---|---|---|
Pro | APM, Monitors, Error Tracking | 2019年 | B to C |
利用プラン | Pro |
---|---|
利用機能 | APM, Monitors, Error Tracking |
ツールの利用開始時期 | 2019年 |
事業形態 | B to C |
アーキテクチャ
アーキテクチャの意図・工夫
- 信頼性を支えるテレメトリーパイプラインの構築 / Building Telemetry Pipeline with OpenTelemetryで紹介されているようなサイドカーパターン、プロキシパターンなどを試していき、最終的にはプロキシパターンを採用しました。
- サイドカーにOpenTelemetry Collectorを置き、プロキシにDatadog Agentを置いていますが、これはDatadogが案内している構成ではないので注意が必要です。
- サイドカーではなくプロキシにDatadog Agentを置いた理由はCloud Runサービスのスタートアップ時間が遅くなってしまうのを防ぐためです。
- アプリケーションサービスからDatadog Agentへの通信は内部通信に出来ないため、OpenTelemetry CollectorにGoogle Client Auth Extensionをいれてサービス間認証しています。
導入の背景・解決したかった問題
導入背景
ツール導入前の課題
- Datadog自体は以前から全社的にAPMを利用していました。選定背景については他社事例と重複する部分が多いため、本レビューではGoogle Cloud Runにおける利用に焦点を当てます。
- Cloud Run利用のプロジェクトでは初めて導入するため、他のプロジェクトと同様の仕組みで使えないか検証しました。
どのような状態を目指していたか
- Datadog APMを全ての環境で有効にして、開発中も本番運用中も全てのエラーを把握できる
- APMで捕捉したエラーをもとに開発者にエラー通知を行える
比較検討したサービス
既に導入されていたため特にありません
導入の成果
改善したかった課題はどれくらい解決されたか
- 目指していた状態は概ね達成しています。
- Datadog Monitorsを利用してエラー検知もできるようになりました。
- 副次的に別のプロジェクトにもエラー検知運用が流用できました。
どのような成果が得られたか
- 他のプロジェクトと異なるアーキテクチャでも同じコスト感と使用感で使える環境が構築できました。
導入時の苦労・悩み
- Datadogから提供されているサーバーレスコンテナイメージを使わずにCloud Run上のDatadog AgentでサンプリングしてDatadogに送ることを実現するのが大変でした。
- スパンの一部属性が想定外の値で送信されてしまうことに苦労しました。
- どんな問題が起こりどう解決したかはこちらのブログで紹介しています。
導入に向けた社内への説明
上長・チームへの説明
すでにDatadogは弊社で広く使われており、Datadogなしで運用するのは考えられないので既存のプロジェクト同様のコストに収まるように構築を進め、上長やチームに新たな説明が必要ないようにしました。
活用方法
よく使う機能
- APM
- APIエンドポイント単位の大きな粒度だけでなく、内部処理の個々のSpanレベルまで詳細なパフォーマンスの変化を追跡できる点が有用です。
- Monitors
- Error TrackingベースのモニターでSlackにエラー通知をしています。
- Error Tracking
ツールの良い点
- APMはホスト単位にインデックススパン数の大きめの無料枠があります。
- 規模が大きくても適切にサンプリングすることでDatadogの料金が大きな負担にならずに運用できます。
- dd-trace-phpといった言語ごとの自動計装ライブラリが充実しているのでサービス内部の挙動を把握するのに便利です。
- オブザーバビリティ業界の盛り上がりに負けないくらい機能追加がスピーディーに行われていると感じます。
ツールの課題点
- Error TrackingベースのMonitorからの通知内容にスパンの属性を含められるようになると通知がより便利に使えそうです。
- ドキュメントにデッドリンクがあったりして意図しないページに飛んで迷子になることがあるので整理されるとありがたいです。
ツールを検討されている方へ
- まずはAPMの便利さを体験してみるのが良いと思います。
今後の展望
- ミドルウェアのメトリクスやログなどもDatadog上で活用していきたいです。
株式会社コロプラ / 駒崎大輔
メンバー / バックエンドエンジニア / エンジニア組織: 101名〜300名
よく見られているレビュー
株式会社コロプラ / 駒崎大輔
メンバー / バックエンドエンジニア / エンジニア組織: 101名〜300名
レビューしているツール
目次
- アーキテクチャ
- 導入の背景・解決したかった問題
- 活用方法