SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Developers Summit 2023 セッションレポート(AD)

昔ながらの監視ツールから脱却しよう!Datadog APMで学ぶオブザーバビリティ実践法

【10-E-2】Datadog APMですぐに解決!アプリケーション稼働時のトラブル

  • このエントリーをはてなブックマークに追加

 コンテナで稼働する多数のサービスが複数のクラウドをまたがって疎結合する現代のアプリケーションは、一昔前のシンプルなアーキテクチャのアプリケーションと比べて複雑な構成をしている。そのため、従来の監視ツールでは観測範囲を網羅できず、問題が発生しても根本原因に辿り着くのに時間がかかり、対応も後手にまわってしまうと悩む企業は多い。そうした課題を解決するのが、オブザーバビリティ(可観測性)ツールだ。分散するサービスの依存関係を解し、さまざまな角度から状況を可視化するオブザーバビリティツールがあれば、障害時や障害の兆候を発見し、速やかに対処できる。Datadog Japan シニアテクニカルエバンジェリストの萩野たいじ氏は、実際にどのような特徴があり、ユーザーにとって嬉しいメリットは何かを解説した。

  • このエントリーをはてなブックマークに追加

Datadog APMで見るアプリケーションパフォーマンスモニタリングの魅力

 クラウド技術が進歩し、広く普及する中で、アプリケーションのシステム構造は変化した。従来のWebアプリケーションは、フロントエンド、サーバーサイド、データベースの三層構造で構成され、モニタリングも各層のプロセスを監視する程度でも十分だった。しかし今はクラウドネイティブアーキテクチャが主流となり、マイクロサービスを採用するアプリケーションも増えた。コンテナを使ってサーバーレス環境を構築し、疎結合されたマイクロサービスがAPI経由でやりとりする。

 そんな依存関係が複雑な昨今の分散型アーキテクチャでは、従来のモニタリングツールは根本原因を探り出すのに時間がかかりすぎてしまう。クラウドネイティブ環境でのアプリケーション全体の可観測性(オブザーバビリティ)を高めて、今起きている事象を的確に捉え、問題の対処につなげる「アプリケーションパフォーマンスモニタリング(APM)」が注目されるのはこうした背景があると、Datadog Japanのシニアテクニカルエバンジェリスト、萩野たいじ氏は説明した。

Datadog Japan合同会社 シニア テクニカル エバンジェリスト 萩野たいじ氏
Datadog Japan合同会社 シニア テクニカル エバンジェリスト 萩野たいじ氏

 Datadogの「Datadog APM」は、オブザーバビリティの三本柱と呼ばれる「メトリクス」「トレース」「ログ」を網羅可能なSaaSを、シングルプラットフォームで提供する。ハイブリッドクラウドのアーキテクチャ向けに設計されており、難しい設定もなく、手動クエリもないのですぐに使い始めることができると萩野氏。ログは無制限に収集でき、すべてのメトリクスを15秒の粒度で15カ月間保存可能。機械学習で対応が必要なもののみを通知するので、アラート疲労を軽減する効果もあると萩野氏は述べる。

 Datadog APMの特長として、萩野氏は次の3つを挙げた。

  1. 分散環境下での迅速な問題解決
  2. あらゆるデプロイメントに対して、自信を持ってコードリリースが可能
  3. プロアクティブなアプリ最適化とコードパフォーマンス
Datadog APMの3つの特長
Datadog APMの3つの特長

 Datadog APMは、アプリケーションの構成機能が分散的に運用管理されていても、ログやトレース、メトリクスを関連付けてオブザーバビリティを獲得できるので、異常が発生している箇所を特定し、必要な対処を判断して速やかに問題を解決できる。また、自動バージョンタグ付けやデプロイメントトラッキングなどの自動化機能のほか、各ビューにてカナリアやA/Bテストなどの状況を追跡できるので、不具合に対する不安なくデプロイを実施できるのも特長だ。さらには、サービスやエンドポイントなどでコードプロファイルを集計し、最もリソースを消費するコードラインなどを検出、インフラのリソースを見ながら最適化する機能もある。

 「現代のシステムアーキテクチャに合った形でオブザーバビリティを実現するDatadog APMは、より早く問題を見つけて、より早く解決し、ビジネスを止めないためのツールだ」(萩野氏)

Datadog APMで見るAPMの活用方法

 APMは具体的にどのようなことが分かるのだろうか。萩野氏はDatadog APMの画面を紹介しながら解説した。

 Datadog APMには多数のビューが用意されており、ダッシュボードはアプリケーションの状況を観測するメインビューとなる。ドラッグ&ドロップのウィジェットで構成されているので、インフラ全体のモニタリング(サーバーの稼働状況、アプリのメモリ割り当て状況など)、アプリの通信状況(サービスがどのくらいのスレッドで、どのくらいの長さで動いているのか、処理でエラーがあったらどのサービスのどの処理のどのあたりで出ているのか)など、必要なメトリクスを好きなレイアウトで配置できる。主要な監視対象のサービス(GCPやAWS、Azureなど)はテンプレートが用意されているので、それをベースにカスタマイズすることも可能だ。

インフラ全体の状況、アプリケーションの通信状況などをカスタマイズしてレイアウトできるダッシュボード
インフラ全体の状況、アプリケーションの通信状況などをカスタマイズしてレイアウトできるダッシュボード

 続けて萩野氏はAPMらしさが分かるビューを多数紹介した。

 たとえば、サービス同士の依存関係を図示したサービスマップは、データのやりとり状況や現時点のアーキテクチャの構成などが一目で分かる。監視対象サービスをカタログ形式で並べたサービスカタログのビューは、サービスのオーナーシップの管理を簡素化できるほか、インシデントのトリアージがスムーズに進められるメリットがある。デプロイメントエラーやSLOなどのコンテキストでサービスの健全性メトリクスを監視できるサービスページでは、設定した測定値の間隔で状況を把握できるという。また、デプロイメントトラッキングのビューでは、あらゆるデプロイメント手法のパフォーマンスメトリクスを追跡し、デプロイメントの影響を自動測定した結果を表示する。

 分散トレースのビューも、APMならではのビューだ。「アプリケーションによっては、サービスやデータが分散しているために、デフォルトでは紐付けが難しい相関関係になっているものもある」と述べた萩野氏は、Datadog APMはタグ付けすることで追跡性を確保し、検索や解析、可視化を実現したと話す。「タグ付けのおかげで、異なるテレメトリタイプのトレースをシームレスに関連付けできるので、根本原因を素早く発見することも可能だ」(萩野氏)

 追跡という観点では、アプリケーション内の処理を追跡する継続的プロファイラのビューも役に立つ。「たとえば、あるアプリケーションの任意のプロセスに対して、どのような順番でどんな内容の処理が流れているのか、どんな状態にあるのかといったことを視覚的にトレースできる。これにより、プロダクションコードの全工程のコードパフォーマンスを分析、比較できるので、効率の良い開発が実現する」(萩野氏)

 なお、萩野氏がDatadog APMで気に入っている点は、ダッシュボードでアプリケーションの状況を俯瞰的に見ることができるだけでなく、データをクリックしたりビューを切り替えたりすることで、システムやアプリなど関連するテレメトリすべてにアクセスできることだと言う。多様な切り口からデータを検証することで、根本原因が絞り込みやすい。

オブザーバビリティはDevとOps両方が実施するもの

 萩野氏は、Datadog APMの魅力を「使いやすさとシームレスな相関性」「エンドツーエンドの分散トレース」「デプロイメントトラッキング」「常時接続コードプロファイリング」「AIを活用したアラート、インサイト、根本原因分析」の5つにまとめた。

Datadog APMの5つの魅力
Datadog APMの5つの魅力

 AIは、Datadog製品群に共通するインテリジェンス層「Watchdog AI」のことだ。「特にログなどのメトリクスにはノイズが混ざる。問題に直結しないのに問題のように見えて、本当に必要な情報を見つけるのに一苦労する」。そう述べた萩野氏は、Watchdog AIを活用しノイズと重要な情報とを分離することで解析の解像度が高まると説明した。

 萩野氏は、DevOpsはOps側だけのものではないと強調する。アプリケーションの改善やセキュリティ、CI/CDのデプロイメント時など、開発側がモニタリングやオブザーバビリティを意識すべきポイントは多々あるからだ。

 最後に萩野氏は講演を聴いてAPMの意義やDatadog APMに興味を持った人向けに、Datadog APMのフリートライアル版を紹介した。また、APMについてさらに詳細な活用方法を知りたい人向けに、同社SEが解説するウェビナー「APMによるアプリケーションパフォーマンスの最適化」も公開していると述べた。

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加

提供:Datadog, Inc.

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/17469 2023/04/05 12:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング