MackerelのAPM(アプリケーションパフォーマンスモニタリング)ベータ版公開!サービス中心のオブザーバビリティで、アプリケーションの「なぜ?」を解決

いつもMackerelをご利用いただきありがとうございます。このたび、MackerelのAPM(アプリケーションパフォーマンスモニタリング)をベータリリースいたします! この記事では、APMによってMackerelで得られる体験と、正式リリース時の料金体系をご紹介します。

APMとは、アプリケーションの性能や状態を可視化し、問題の早期発見や解決を支援するツールです。これまでMackerelが提供してきたインフラを中心としたシステム監視に加え、システムのトランザクション単位での詳細な追跡や、HTTPリクエスト・データベースアクセスなどのボトルネックの特定といったアプリケーションの監視やオブザーバビリティ向上のための機能を提供します。

目次

サービスを中心としたオブザーバビリティ体験を提供します

APMのサービス一覧を起点として、アプリケーションの健全性やパフォーマンスを確認する際に有用なREDメトリック(レスポンス数、エラー数、レイテンシー)、トレース、HTTPサーバー、データベースのパフォーマンスなどが確認できるようになります。これまで先行して提供してきましたトレーシング機能と組み合わせることで、日々のパフォーマンス改善や障害原因の特定がさらに容易になり、本質的な課題に素早くたどり着けるようになります。

詳細分析の起点となるサービス一覧

トレースに設定したサービス(service.name)属性を一覧できます。このページから各サービスのパフォーマンスを確認できるサマリーに遷移します

サイドメニューの「APM」をクリックするとサービスを一覧できます

サービスごとのパフォーマンスを素早く確認できるサマリー

サマリーではそのサービスのREDメトリック(レスポンス数、エラー数、レイテンシー)を確認できます。「レスポンスにかかった時間の平均」のグラフではユーザー体験やシステムのパフォーマンス、「エラー率」のグラフでは障害や異常の発生状況、「リクエスト数」のグラフではアプリケーションへのトラフィックや負荷の傾向を評価することに役立ちます。

サービスごとのパフォーマンスを素早く確認できるサマリー

問題の分析に役立つ「トレース」「HTTPサーバー」「データベース」

「トレース」「HTTPサーバー」「データベース」の各ページからはサービスに紐づく各項目の一覧を確認できます。「サマリー」タブで傾向を把握したのち、パフォーマンス劣化や障害の原因の探索を容易に行うことができます。

「トレース」では、レイテンシー分布をヒストグラム表示することでパフォーマンス状況を直感的に把握したり、トレースの絞り込み(環境、スパン名)や、レイテンシー順のソートをしたりすることが可能です。

レイテンシー分布をヒストグラム表示したり、トレースの一覧を並べ替えたりできます

「HTTPサーバー」はWebアプリケーションのエンドポイントごとの成績表です。レスポンスタイムの合計や平均値、95パーセンタイル、エラー率やアクセス数を一覧できます。レスポンスタイムやエラー率からユーザー体験を損なっているエンドポイントがどこかを一目で確認でき、リクエストのトレースに直接遷移できるため、問題の原因を素早く調査できます。

レスポンスタイムの合計や平均値、95パーセンタイル、エラー率やアクセス数を一覧できます

「データベース」ではデータベースへのクエリについて合計の実行時間、平均実行時間、実行回数を一覧できます。パフォーマンス悪化の原因となっているクエリを簡単に特定できます。こちらも直接トレースに遷移できます。

データベースへのクエリについて合計の実行時間、平均実行時間、実行回数を一覧できます

これらのサマリーや一覧は、トレース中のHTTPリクエストやデータベースへのクエリに関するスパンを集計し表示したものです。トレースを構成する、個々の処理単位がスパンです。例えば、特定の関数呼び出し、データベースクエリ、外部APIへのリクエストなどがスパンとして記録されます。どのようなスパンが集計されるかの詳細はヘルプをご覧ください。

APMの正式リリースは5月1日! 料金体系も公開

APMの正式リリースは2025年5月1日を予定しています。

これまでのスタンダードホスト、マイクロホスト、メトリックに加え、投稿されたトレースに紐づくスパン単位での課金が加わります。料金体系は以下のようになる予定です。

APMの各機能はトレースを構成するスパンの上に成り立っています。そのためスパンの数が課金の単位となります。

プラン フリー スタンダード
スパン投稿上限 500万スパン/月 無制限
料金(税抜き) 0円 500万スパン/月まで無料
以降 300円/100万スパン
  • スパンを受信した時刻を基準として課金する月を決定します
  • スパン数は切り上げて計算され、料金を算出します
  • ホスト数、メトリック数などと合わせて計算された請求金額に対して最低利用料金1が適用されます
  • ベータ期間中は500万スパン/月まで無料で投稿いただけます。超過した場合、そのオーガニゼーションに対しては翌月まで投稿できなくなります
  • ベータ期間中に投稿されたトレースおよびスパンは3日間保存されます。正式リリース後の保存期間は14日間となる予定です

計算式で表すとこのようになります。

以下が料金の例です。

  • 〜500万スパン: 無料枠内なので、料金はかかりません
  • 600万スパン: 無料枠を100万スパン超えているので、料金は300円+税です
  • 750万スパン: 無料枠を250万スパン超えており、300円/100万スパンの単位で切り上げるため、3×300円の900円+税となります

APM活用のためのチュートリアルや投稿ガイドもご用意しています

APMで確認できるパフォーマンスのサマリーはトレースのデータをもとに集計されます。トレースをより手軽に投稿していただくためのチュートリアルやガイドページも公開しています。

チュートリアルではさまざまなプログラミング言語のサンプルコードを用意しています。簡単なコードだけでトレースを投稿できますので、まずはぜひお試しください。

トレーシング機能ガイドでは、言語ごとのより詳しい設定の説明や、各機能の解説を掲載しています。

投稿の手助けとなる各言語ごとのチュートリアル

また、より実践的な例として、分散トレーシングやトレーシング機能の理解が深まるハンズオンの資料も公開しています。資料を順に見ていくと分散トレーシングやOpenTelemetryの基本的な概念、トレースの投稿やトレーシング機能の使い方を学べますので、ぜひご覧ください。

正式リリースに向けて、さらに進化を続けます

正式リリースではMackerelの既存機能とAPMとの統合がさらに進み、より便利に直感的に使いやすくなります。検討中の画面デザインを少しだけお見せしますので、楽しみにお待ちください!

※ 開発中の画面のため、正式リリース時には変更となる場合があります

使ってみた感想やフィードバックをお待ちしています

Mackerel開発チームでは、APMの正式リリースに向けて機能追加や改善を行っています。この記事へのご感想や、ベータ期間中に実際にMackerelのAPMをお使いただいたご意見やご感想などをぜひお聞かせください! APM導入に関する技術的な支援や、デモ・ハンズオン実施のご要望などもフォームから選択できますので、お気軽にお問い合わせください。

📋 フィードバックフォームはこちら