Elasticオブザーバビリティ7.11の最新情報(ブログ記事) ― APMサービスヘルス概要ページとECSロギングライブラリがGAへ移行
Elasticオブザーバビリティのバージョン7.11をリリースしました。オブザーバビリティのユースケース全体にわたり、調査のワークフローを迅速化する機能のほか、MTTI(インサイト取得までの平均時間)の短縮やMTTR(平均復旧時間)の短縮に役立つ複数の機能が追加されています。Elastic APMの新しいサービス概要ページは、サービスヘルスに関する重要な状況を単一のビューに要約して表示します。開発者やSREsはコンテクストの切り替え回数を最小にとどめながら、サービスの問題のトラブルシューティングをすばやく実行し、根本原因を特定することができます。Metricsアプリでも同様のビューの強化を実施しました。単一の使いやすいパネルにホストのヘルスが表示され、インフラの監視作業やトラブルシューティングのワークフローを効率的に実行できます。また、Elastic Common Schema(ECS)ロギングライブラリが一般公開に移行しました。トレースのコンテクストを自動でアプリケーションログに挿入し、ログとトレースを相関付けることができます。
Elasticオブザーバビリティの最新のバージョンは、オフィシャルなElastic CloudのElasticsearch Serviceでお使いいただけます(無料の14日間トライアルもご用意しています)。また、セルフマネージドのエクスペリエンス向けに、Elastic Stackの最新のバージョンをインストールしてお使いいただくこともできます。
前置きはここまでにして、さっそくいくつかのリリースのハイライトをご説明します。
根本原因分析とトラブルシューティングの迅速化を支援する、Elastic APMの新しいサービスヘルス概要ビュー
最新のクラウドネイティブなアプリは、数百ものマイクロサービスで構成されることも少なくありません。個々のサービスの状態をピンポイントで速やかに特定する能力は、インシデント調査のワークフローには不可欠であり、またMTTIやMTTRの短縮にも役立ちます。たとえばサービスマップはアプリケーションの問題を特定のサービスに結びつけるのに役立ちますが、調査を進めるには、そのサービスの挙動が期待と異なった理由を解明しなくてはなりません。7.11に導入された新しい“サービス概要ページ”は、サービスのヘルスに関するすべての情報を一元的に要約して表示します。開発者やSREsは、単一のページ上でより手軽に各種の問いに答えることができます。具体的な例として、次のようなものがあります。
- 新しいデプロイが、パフォーマンスにどのような影響を与えたか
- 最も影響を受けたトランザクションはどれか
- 下流のサービス、またはバックエンドによってリグレッションが生じたか
- パフォーマンスは、基盤のインフラとどのような相関関係にあるかパフォーマンスの問題が生じているのはどのインスタンスか(コンテナーか、VMかなど)
サービスレイテンシーやトラフィック、エラーレートが時系列チャートに表示され、ユーザーはサービスKPIを経時的に俯瞰できます。またデプロイマーカーや異常に関するアラートなど、時系列チャートにオーバーレイで注釈を付記する機能を使うことで、サービスの挙動の変化に関与した可能性がある主要なイベントにリッチなコンテクストを追加できます。この注釈は調査範囲のすばやい絞り込みに役立ち、またそこから問題の修復パス(たとえば、ロールバックなど)を導くことができる可能性もあります。
サービス概要ページのスパークラインは、サブコンポーネントの一時的な傾向をコンパクトなビューで表示します。挙動中の異常な変化(たとえば、特定のトランザクションのエラーレートに生じたスパイクなど)が見つけやすく、調査の中で適切な“次のステップ”を策定する手助けとなります。またサービス概要ページには、サービスをデプロイしたインフラストラクチャーのインスタンス(例:コンテナー)が原因でダウンしたサービスのヘルスも表示されます。この情報を活用することで、サービスの問題と、基盤インフラストラクチャーの問題を結びつけて理解しやすくなります。
バージョン7.11は、新しいサービスヘルスビューのリリース第一弾となります。今後のリリースでは追加のコンテンツやビューをリリースし、それらを組み合わせてトラブルシューティングと根本原因分析のワークフローの一層の効率化と迅速化を図る予定です。
新たに強化されたホストの詳細ビューを使って、インフラの問題をいち早くトラブルシューティングする
Elastic Metricsアプリのリソースヒートマップは、インフラの状態を俯瞰的なビューに表示します。詳しい調査が必要なホストをピンポイントで示し、トラブルが生じているリソース(たとえば、CPUにスパイクがあるホストなど)の早期特定や、後続の調査手順の絞り込みを手助けします。今回Metricsアプリに登場した新しいビューを使うと、高次のビューから、個々のホストの主要なメトリックの時系列トレンドへ簡単にズームアウトすることができます。
APMに登場した“一目で傾向がわかる”サービスランディングページと同様に、今回強化されたホストの詳細ビューは、ホストについて必要なあらゆる情報(ログ、メトリック、プロセスなど)を統合して単一のビューに表示します。これにより根本原因分析を迅速化するほか、インフラ運用チームによるインフラの監視や、インフラの問題のトラブルシューティングもより手軽に実施できます。
ヒートマップのタイルをクリックするとポップアップが開き、ホストに関する重要な情報を示します。表示される情報例に、次の内容があります。
- 主要なホストメトリック(CPU、メモリー、ネットワークなど)の時系列チャート
- ホスト、またはホストで実行中のサービスが生成するログ
- ホスト(のCPUやメモリー)で実行数が多いプロセス
- ホストのメタデータ(OSやクラウドプロバイダーの詳細に関するデータ)
- トレースまたはアップタイムデータの詳細を取得するためのリンク
バージョン7.11でのホストやVMのビューの強化を皮切りに、今後のリリースではMetricsアプリで扱う他のリソースタイプ(pod、コンテナーほか)の機能強化を予定しています。
サービス概要ページやAPMに関するその他の新機能について詳しくは、7.11の最新情報に関するドキュメントをご覧ください。
ログとトレースの自動関連付け機能で、アプリのオブザーバビリティを高めるECSロギングライブラリ
アプリのトラブルシューティングワークフローには、アプリのログとトレースを相関付ける機能とコンテクストを見失わない操作性が不可欠です。たとえば特定のトレースにどのログが属するか、どのトレースによりそれらが生成されたのか、あるいは、ログをトリガーしたアプリのリクエストは何か、といったことです。7.11より一般公開に移行したElastic Common Schema(ECS)のロギングライブラリを使うと、APMエージェントが捉えたトレースコンテクストがアプリケーションログに自動で挿入され、ログからスムーズな分析に必要な相関関係をトレースすることができます。
ECSのロギングライブラリには、log4jをはじめとする人気のロギングフレームワーク向けプラグインがあります。開発者はこれを使って、ネイティブなワークフローを変更することなく、ECS準拠のJSON形式でアプリケーションログを簡単に書き出すことができます。ECSロガーはAPMエージェントが捕捉した関連するトレースコンテクストを自動でログに挿入します。つまり、開発者は特別な作業を行うことなく、“オブザーブ可能な”アプリケーションを開発することが可能です。通常、捕捉されたトレースコンテクストは必要に応じてtrace.id
やtransaction.id
、span.id
を含みます。
このデータレベルの本質的な関連付け機能をベースに、7.11はログストリーミングをトレースビューに直接埋め込んで表示します。したがってユーザーは調査中に視覚的なコンテクストを切り替える必要がなく、特定のトレースに関連付けられたログをダイレクトに見ることができます。
このログ↔トレースの相関付け機能に加え、捕捉したログがECSフォーマットで処理されるメリットも注目のポイントです。具体的には、自動のパースに対応すること、人間に読みやすいログとなること、アプリのスタック全体にわたりデータモデルを正規化できるといったメリットがあります。
本機能や、インフラ監視に関するその他の性能強化について詳しくは、7.11の最新情報をご覧ください。
その他の注目のハイライト
ページ読み込みウォーターフォールチャート
7.10で、Elasticは複数の手順を踏むユーザーエクスペリエンス向けにシンセティック監視機能をリリースしました。この機能に関連して、7.11では、ページ読み込みウォーターフォールビューの初回イテレーションをリリースしました。このビューはページ上の各オブジェクトの接続ステータスを表示します。シンセティックテストの結果を読み込み時ウォーターフォールビューで表示すると、テスト中にエンドユーザーエクスペリエンスのパフォーマンスボトルネックとなった箇所をすばやく見つけることができます。
schema on readの基盤を築くランタイムフィールド
ネーミングからも想像がつくかもれませんが、ランタイムフィールドはオブザーバビリティのコミュニティから多数の要望が寄せられてきた機能の1つです。この機能を使うとインデックス済みデータのフィールドを変換、エンリッチ、抽出でき、ランタイムにその場で新規のフィールドを作成することが可能になります。ランタイムフィールドは常時多数の要望が寄せられてきたschema on readを含む、新たなオブザーバビリティワークフローの導入を可能にする基礎的な機能です。
今回のリリースにより、2つの手法の“いいとこ取り”をすることが可能になりました。データをインデックス時にパース、構造化するschema on writeは、超高速の検索と分析に適しています。分析ワークフローでフレキシブルに作業したい場合は、ランタイムにその場でフィールドを定義できるschema on readを使うことができます。
ランタイムフィールドは7.11のElasticsearchでサポートされ、Kibanaでは限定的なUIのサポートが提供されます。ランタイムフィールドに関するElasticのビジョンについてさらに詳しくは、こちらの記事をご覧ください。
検索可能スナップショットとColdティアがGAへ移行
7.10でベータリリースした“検索可能スナップショット”を、一般公開へ移行しました。検索可能スナップショットを使うとS3などのオブジェクトストアでデータを直接検索、分析でき、パフォーマンスとコストのバランスの最適化を図るデータティアリング戦略を簡単に実装できるという利点があります。Coldティアは、検索可能スナップショットで活用できる新しいデータティアです。Coldティアを利用すると、パフォーマンスへの影響を最小限に抑えながら、ストレージコストを最大50%引き下げることができます。
検索可能スナップショットとデータティアリングは、オブザーバビリティのユースケースを根本から進化させる新機能です。運用を複雑化させることなく調査ワークフローを変更でき、データへのアクセスが妨げられることもありません。つまり、手間を減らしながらより多くのことを実行できる、ということです。
最新のリリースをぜひ今すぐお試しください。
一連の新機能やその他の更新点について詳しくは、併せてリリースハイライトもご覧ください。
ぜひお手元のデプロイを7.11にアップグレードして、ご紹介した革新的な新機能をご活用ください。Elasticsearch Serviceの14日無料トライアルをお使いいただくことも、Elastic Stackの最新のバージョンをインストールしてお使いいただくこともできます。