Observability Cloud 2 minutes
Authors
Robert Castley & Pieter Hagen このワークショップでは、Splunk Observability Cloud がフロントエンドアプリケーションからバックエンドサービスまで、ユーザー体験に関する即時の可視性をどのように提供するかをデモンストレーションします。他の可観測性ソリューションと一線を画す、プラットフォームの最も強力な機能をいくつか体験していただきます:
インフラ監視(Infrastructure Monitoring, IM) 完全で忠実な Real User Monitoring(RUM) Application Performance Monitoring(APM)による End to End の NoSample で完全忠実なトレースの可視性 コード入力を必要としないログクエリ 外形監視・合成監視(Synthetic Monitoring) タグ分析とエラースタックによる根本原因分析 Related Contents によるコンポーネント間のシームレスなナビゲーション Splunk Observability Cloud のコアとなる強みの一つは、テレメトリデータを統合し、エンドユーザーエクスペリエンスとアプリケーションスタック全体の包括的な全体像を作成する能力です。
このワークショップでは、AWS EC2 インスタンス上にデプロイされたマイクロサービスベースの e コマースアプリケーションに焦点を当てます。ユーザーは商品を閲覧し、カートに商品を追加し、注文を完了できます。このアプリケーションは、詳細なパフォーマンスデータを取得するために OpenTelemetry で計装されています。
OpenTelemetry とは?
OpenTelemetry は、メトリクス、トレース、ログなどのテレメトリデータの計装、生成、収集、エクスポートを支援するために設計されたオープンソースのツール、API、ソフトウェア開発キット(SDK)のコレクションです。このデータにより、ソフトウェアのパフォーマンスと動作の詳細な分析が可能になります。
OpenTelemetry コミュニティは急速に成長しており、Splunk、Google、Microsoft、Amazon などの大手企業からのサポートを受けています。現在、Cloud Native Computing Foundation において、Kubernetes に次いで 2 番目に多くのコントリビューターを抱えています。
Observability Cloudのサブセクション ワークショップ概要 2 minutes
はじめに このワークショップの目的は、Splunk Observability Cloud を使用して問題のトラブルシューティングを行い、根本原因を特定する実践的な経験を提供することです。私たちは、Kubernetes 上で動作する完全に計装されたマイクロサービスベースのアプリケーションを用意しており、これがメトリクス、トレース、ログ を Splunk Observability Cloud にリアルタイム分析のために送信します。
対象者 このワークショップは、Splunk Observability Cloud の実践的な知識を得たいと考えている方を対象としています。Observability Cloud を含む Splunk Platform に関する事前知識がほとんど、または全くない方向けに設計されています。
必要なもの ノートパソコンと外部ウェブサイトにアクセスできるブラウザが必要です。ワークショップは対面または Zoom を通じて参加できます。Zoom クライアントをインストールしていない場合でも、ブラウザを使用して参加できます。
ワークショップ概要 この 3 時間のセッションでは、ストリーミング分析と NoSample で完全に忠実な分散トレースを提供する唯一のプラットフォームである Splunk Observability の基礎を、インタラクティブなハンズオン形式で説明します。以下が期待できる内容です:
OpenTelemetry 最新の Observability に OpenTelemetry が不可欠である理由と、システムの可視性をどのように向上させるかを学びます。
Splunk Observability ユーザーインターフェイスツアー Splunk Observability Cloud のインターフェイスのガイド付きツアーで、APM、RUM、Log Observer、Synthetics、Infrastructure という 5 つの主要コンポーネントの操作方法を紹介します。
実際のユーザーデータを生成 オンラインブティックというウェブサイトでシミュレートされた小売体験に飛び込みます。ブラウザ、モバイル、またはタブレットを使用して、サイトを探索し、メトリクス(問題はありますか?)、トレース(問題はどこにありますか?)、ログ(何が問題を引き起こしていますか?)を含む実際のユーザーデータを生成します。
Splunk Real User Monitoring(RUM) 参加者のブラウザセッションから収集された実際のユーザーデータを分析します。あなたの課題は、パフォーマンスの悪いセッションを特定し、トラブルシューティングプロセスを開始することです。
Splunk Application Performance Monitoring(APM) RUM トレース(フロントエンド)を APM トレース(バックエンド)にリンクすることで、End to End を可視化する能力 を理解しましょう。様々なサービスからのテレメトリが Splunk Observability Cloud でどのように取得され、視覚化されるかを探り、異常とエラーを検出します。
Splunk Log Observer(LO) Related Content 機能を活用してコンポーネント間を簡単に移動する方法を学びます。このワークショップでは、APM トレースから関連するログに移動して、問題についてより深い洞察を得ます。
Splunk Synthetics Synthetics がアプリケーションの 24 時間 365 日のモニタリングにどのように役立つかを発見します。オンラインブティックウェブサイトのパフォーマンスと可用性を監視するために、毎分実行される簡単な合成テストの設定方法を説明します。
このセッションを終えると、Splunk Observability Cloud の実践的な経験と、アプリケーションスタック全体の問題をトラブルシューティングして解決する方法についての確かな理解が得られるでしょう。
OpenTelemetryとは何か、なぜ重要なのか? 2 minutes
OpenTelemetry クラウドコンピューティング、マイクロサービスアーキテクチャ、そして複雑化するビジネス要件の増加に伴い、可観測性の必要性はかつてないほど高まっています。可観測性とは、システムの出力を調査することで、そのシステムの内部状態を理解する能力です。ソフトウェアの文脈では、これはメトリクス 、トレース 、ログ を含むテレメトリデータを調査することでシステムの内部状態を理解できることを意味します。
システムを観測可能にするには、計装が必要です。つまり、コードはトレース、メトリクス、ログを発行する必要があります。この計装データは、Splunk Observability Cloud などの可観測性バックエンドに送信される必要があります。
メトリクス トレース ログ 問題がありますか? 問題はどこですか? 問題は何ですか?
OpenTelemetry は 2 つの重要なことを行います:
独自のデータフォーマットやツールに縛られるのではなく、生成したデータを所有 できるようにします。 単一の API セットと規約を学ぶことができますこれら 2 つの要素が組み合わさることで、今日の現代的なコンピューティング環境で必要な柔軟性をチームや組織に提供します。
可観測性を始めるにあたっては、重要な質問を含め多くの変数を考慮する必要があります: 「どのようにしてデータを可観測性ツールに取り込むのか?」 OpenTelemetry の業界全体での採用は、この質問に答えることをこれまで以上に容易にしています。
なぜ重要なのか? OpenTelemetry は完全にオープンソースで無料で使用できます。過去のモニタリングや可観測性ツールは、独自のエージェントに大きく依存していたため、追加のツールを変更したり設定したりするために必要な労力は、インフラレベルからアプリケーションレベルまで、システム全体に大規模な変更を必要としていました。
OpenTelemetry はベンダー中立であり、可観測性分野の多くの業界リーダーにサポートされているため、採用者は計装にわずかな変更を加えるだけで、サポートされている可観測性ツール間をいつでも切り替えることができます。これは、Linux のように様々なディストリビューションが設定やアドオンをバンドルしていても、基本的にはすべてがコミュニティ主導の OpenTelemetry プロジェクトに基づいているため、どの OpenTelemetry ディストリビューションを使用しても変わりません。
Splunk は完全に OpenTelemetry にコミットしており、お客様があらゆる種類、あらゆる構造、あらゆるソースから、あらゆる規模で、すべてリアルタイムですべての データを収集して使用できるようにしています。OpenTelemetry は基本的にモニタリングの環境を変え、IT チームや DevOps チームがすべての質問とすべてのアクションにデータをもたらすことを可能にしています。これらのワークショップでこれを体験することになります。
UI - クイックツアー 🚌 Splunk Observability Cloud の様々なコンポーネントについて簡単な説明から始めます。これは UI に慣れてもらうことを目的としています。
Splunk Observability Cloud へのサインイン Real User Monitoring (RUM) Application Performance Monitoring (APM) Log Observer Synthetics Infrastructure Monitoring(IM)
ヒントこのワークショップを進める最も簡単な方法は以下を使用することです:
このページの右上にある左右の矢印(< | > ) キーボードの左(◀️)と右(▶️)のカーソルキー 3. UI - クイックツアーのサブセクション はじめに 2 minutes
1. Splunk Observability Cloud にサインインする Splunk が主催するワークショップの場合、Workshop Org に招待するメールを受け取っているはずです。このメールは下のスクリーンショットのようになっています。見つからない場合は、迷惑メールフォルダを確認するか、インストラクターにお知らせください。また、ログイン FAQ で他の解決策を確認することもできます。
進めるには、Join Now (参加する)ボタンをクリックするか、メールに記載されているリンクをクリックしてください。
登録プロセスをすでに完了している場合は、残りの手順をスキップして直接 Splunk Observability Cloud にログインできます:
Splunk Observability Cloud を初めて使用する場合は、登録フォームが表示されます。フルネームと希望するパスワードを入力してください。パスワードの要件は次のとおりです:
8 文字から 32 文字の間である 少なくとも 1 つの大文字を含む 少なくとも 1 つの数字を含む 少なくとも 1 つの記号(例:!@#$%^&*()_+)を含む 利用規約に同意するためのチェックボックスをクリックし、SIGN IN NOW (今すぐサインイン)ボタンをクリックします。
1. はじめにのサブセクション ホームページ 5分
Splunk Observability Cloud に登録してログインすると、ホームページ(ランディングページ)に移動します。ここでは、開始に役立ついくつかの便利な機能が見つかります。
データ探索パネル: どの統合が有効になっているかを表示し、管理者の場合は追加の統合を追加できます。ドキュメントパネル: Splunk Observability Cloud の使用を開始するためのトレーニングビデオとドキュメントへのリンク。最近のアクティビティパネル: 最近作成/訪問したダッシュボードやディテクターにすぐにアクセスできます。メインメニューパネル: Splunk Observability Cloud のコンポーネントを操作します。組織切り替え: 複数の組織のメンバーである場合は、組織間を簡単に切り替えることができます。メインメニューの展開/縮小: スペースが限られている場合にメインメニューを展開 » / 折りたたむ « ことができます。最初の演習から始めましょう:
演習メインメニューを展開し、設定 をクリックします。 組織切り替え で、複数の組織にアクセスできるかどうかを確認します。
ヒント以前に Splunk Observability を使用したことがある場合は、以前に使用した組織に配置されている可能性があります。正しいワークショップ組織にいることを確認してください。複数の組織へのアクセス権がある場合は、インストラクターに確認してください。
演習オンボーディングガイダンス をクリックします(ここでオンボーディングパネルの表示/非表示を切り替えることができます。製品に十分に精通していて、より多くの情報を表示するためにスペースを使用できる場合に便利です)。ホームページ のオンボーディングコンテンツを非表示にします。メニューの下部で、お好みのテーマ:Light 、Dark 、または**System(Auto)**モードを選択します。 これがLog out オプションがある場所であることにも気づきましたか?どうかログアウトしないでください 😊! < をクリックしてメインメニューに戻ります。次に、Splunk Real User Monitoring (RUM) を確認しましょう。
Real User Monitoring概要 5 minutes
Splunk RUM は業界で唯一のエンドツーエンドのNoSample (サンプリングなし)RUM ソリューションで、すべての Web およびモバイルセッションの完全なユーザーエクスペリエンスに関する可視性を提供し、発生時にすべてのフロントエンドトレースとバックエンドのメトリクス、トレース、ログを独自に組み合わせます。IT オペレーションとエンジニアリングチームは、エラーの範囲を迅速に特定し、優先順位を付け、分離し、パフォーマンスが実際のユーザーにどのように影響するかを測定し、すべてのユーザー操作のビデオ再構築とともにパフォーマンスメトリクスを相関させることでエンドユーザーエクスペリエンスを最適化できます。
完全なユーザーセッション分析: ストリーミング分析により、シングルページおよびマルチページアプリからの完全なユーザーセッションをキャプチャし、すべてのリソース、画像、ルート変更、API コールの顧客への影響を測定します。問題をより迅速に関連付ける: 無限のカーディナリティと完全なトランザクション分析により、複雑な分散システム全体で問題をより迅速に特定し関連付けることができます。レイテンシーとエラーの分離: 各コード変更とデプロイメントに対するレイテンシー、エラー、パフォーマンスの低下を簡単に特定します。コンテンツ、画像、サードパーティの依存関係がお客様にどのように影響するかを測定します。ページパフォーマンスのベンチマークと改善: コアウェブバイタルを活用して、ページ読み込み体験、インタラクティビティ、視覚的安定性を測定し改善します。影響力のある JavaScript エラーを見つけて修正し、最初に改善すべきページを簡単に理解します。意味のあるメトリクスの探索: 特定のワークフロー、カスタムタグ、未インデックス化タグの自動提案に関するメトリクスを使用して、顧客への影響を即座に視覚化し、問題の根本原因をすばやく見つけます。エンドユーザーエクスペリエンスの最適化: すべてのユーザー操作のビデオ再構築とともにパフォーマンスメトリクスを相関させて、エンドユーザーエクスペリエンスを最適化します。
2. RUM概要のサブセクション Real User Monitoring ホームページ メインメニューのRUM をクリックすると、RUM のメインホームページ(ランディングページ)に移動します。このページの主な概念は、選択したすべての RUM アプリケーションの全体的な状態を、フルダッシュボードまたはコンパクトビューのいずれかで一目で提供することです。
使用する状態ダッシュボードのタイプに関係なく、RUM ホームページは 3 つの明確なセクションで構成されています:
オンボーディングペイン: Splunk RUM の使用を開始するためのトレーニングビデオとドキュメントへのリンク。(画面のスペースが必要な場合、このペインを非表示にすることができます。)フィルターペイン: 時間枠、環境、アプリケーション、ソースタイプでフィルタリングします。アプリケーションサマリーペイン: RUM データを送信するすべてのアプリケーションの概要。
RUM環境とアプリケーション、およびソースタイプSplunk Observability は、RUM トレースの一部として送信されるEnvironment タグ(ウェブサイトやモバイルアプリとの各操作で作成される)を使用して、「本番環境」や「開発環境」などの異なる環境からのデータを分離します。 さらに アプリケーション(App) タグによる分離も可能です。これにより、同じ環境で実行されている別々のブラウザ/モバイルアプリケーションを区別することができます。 Splunk RUM はブラウザとモバイルアプリケーションの両方で利用可能です。Source タイプ を使用してそれらを区別することも可能ですが、このワークショップではブラウザベースの RUM のみを使用します。
演習時間ウィンドウが -15m に設定されていることを確認します ドロップダウンボックスからワークショップの環境を選択します。命名規則は [ワークショップ名]-workshop です(これを選択すると、ワークショップ RUM アプリケーションが表示されます) App 名を選択します。命名規則は [ワークショップ名]-store で、Source はすべて のままにしておきますJavaScript Errors タイルで、TypeError エントリ:Cannot read properties of undefined (reading ‘Prcie’) をクリックして詳細を確認します。ウェブサイトのどの部分でエラーが発生したかを素早く示してくれることに注意してください。これにより、迅速に修正することができます。ペインを閉じます。 3 番目のタイルはWeb Vitals を報告します。これはユーザーエクスペリエンスの 3 つの重要な側面である読み込み、対話性、視覚的安定性 に焦点を当てたメトリクスです。 Web Vitals メトリクスに基づいて、現在のウェブサイトのパフォーマンスをどのように評価しますか?
Web Vitals メトリクス によれば、サイトの初期読み込みは良好であり、Good と評価されています
最後のタイル、Most recent alerts タイルは、アプリケーションに対してアラートが発生しているかどうかを表示します。 アプリケーション名の前にある下向き矢印 ⌵ をクリックして、ビューをコンパクトスタイルに切り替えます。このビューでもすべての主要情報が利用可能であることに注目してください。コンパクトビューの任意の場所をクリックすると、フルビューに戻ります。 次に、Splunk Application Performance Monitoring(APM) を確認しましょう。
5 minutes
Splunk APM は、モノリスとマイクロサービス全体で問題をより迅速に解決するために、すべてのサービスとその依存関係のNoSample (サンプリングなし)エンドツーエンドの可視性を提供します。チームは新しいデプロイメントからの問題をすぐに検出し、問題の原因の範囲を特定して分離することで自信を持ってトラブルシューティングを行い、バックエンドサービスがエンドユーザーとビジネスワークフローにどのように影響するかを理解することでサービスのパフォーマンスを最適化できます。
リアルタイム監視とアラート: Splunk は標準でサービスダッシュボードを提供し、急激な変化があった場合に RED メトリクス(レート、エラー、期間)を自動的に検出してアラートを発します。
動的テレメトリマップ: 現代の本番環境でのサービスパフォーマンスをリアルタイムで簡単に視覚化できます。インフラストラクチャ、アプリケーション、エンドユーザー、およびすべての依存関係からのサービスパフォーマンスのエンドツーエンドの可視性により、新しい問題の範囲をすばやく特定し、より効果的にトラブルシューティングを行うことができます。インテリジェントなタグ付けと分析: ビジネス、インフラストラクチャ、アプリケーションからのすべてのタグを 1 か所で表示し、レイテンシーやエラーの新しい傾向を特定のタグ値と簡単に比較できます。AI によるトラブルシューティングが最も影響の大きい問題を特定: 個々のダッシュボードを手動で掘り下げる代わりに、より効率的に問題を分離します。サービスと顧客に最も影響を与える異常とエラーの原因を自動的に特定します。完全な分散トレースがすべてのトランザクションを分析: クラウドネイティブ環境の問題をより効果的に特定します。Splunk 分散トレースは、バックエンドとフロントエンドからのすべてのトランザクションをインフラストラクチャ、ビジネスワークフロー、アプリケーションのコンテキストで視覚化し相関付けます。フルスタック相関: Splunk Observability 内では、APM がトレース、メトリクス、ログ、プロファイリングをリンクし、スタック全体のすべてのコンポーネントとその依存関係のパフォーマンスを簡単に理解できるようにします。データベースクエリパフォーマンスの監視: SQL および NoSQL データベースからの遅いクエリと高実行クエリがサービス、エンドポイント、ビジネスワークフローにどのように影響するかを簡単に特定できます — 計装は不要です。
3. APM概要のサブセクション メインメニューのAPM をクリックすると、APM ホームページが表示されます。APM ホームページは 3 つの明確なセクションで構成されています:
オンボーディングペイン: Splunk APM の使用を開始するためのトレーニングビデオとドキュメントへのリンク。APM 概要ペイン: トップサービスとトップビジネスワークフローのリアルタイムメトリクス。機能ペイン: サービス、タグ、トレース、データベースクエリパフォーマンス、コードプロファイリングの詳細分析へのリンク。APM 概要 ペインは、アプリケーションの健全性の高レベルの概要を提供します。これにはアプリケーション内のサービス、レイテンシー、エラーの概要が含まれます。また、エラー率別のトップサービスとエラー率別のトップビジネスワークフローのリストも含まれています(ビジネスワークフローは、特定のアクティビティやトランザクションに関連するトレースコレクションの開始から終了までの旅程であり、エンドツーエンドの KPI の監視やルート原因とボトルネックの特定を可能にします)。
環境について複数のアプリケーションを簡単に区別するために、Splunk は Environment を使用します。ワークショップ環境の命名規則は [ワークショップ名]-workshop です。インストラクターが選択する正しい環境を提供します。
演習作業している時間ウィンドウが過去 15 分(-15m )に設定されていることを確認します。 ドロップダウンボックスからワークショップ名を選択して、環境をワークショップ用に変更し、それのみが選択されていることを確認します。 エラー率別のトップサービスチャートから何を結論づけることができますか?
概要ページを下にスクロールすると、一部のサービスの横にInferred Service と表示されていることに気づくでしょう。
Splunk APM は、リモートサービスを呼び出すスパンが必要な情報を持っている場合、リモートサービスまたは推測されたサービスの存在を推測できます。推測されるサービスの例としては、データベース、HTTP エンドポイント、メッセージキューなどがあります。推測されたサービスは計装されていませんが、サービスマップとサービスリストに表示されます。
次に、Splunk ログオブザーバー(LO) を確認しましょう。
Log Observer概要 5 minutes
Log Observer Connect を使用すると、Splunk プラットフォームからの同じログデータをシームレスに直感的でコード不要 のインターフェースに取り込み、問題を迅速に見つけて修正するのに役立ちます。ログベースの分析を簡単に実行し、Splunk Infrastructure Monitoring のリアルタイムメトリクスと Splunk APM トレースを 1 か所でシームレスに関連付けることができます。
エンドツーエンドの可視性: Splunk プラットフォームの強力なロギング機能と Splunk Observability Cloud のトレースおよびリアルタイムメトリクスを組み合わせることで、ハイブリッド環境のより深い洞察とより多くのコンテキストを得ることができます。迅速かつ簡単なログベースの調査を実行: すでに Splunk Cloud Platform または Enterprise に取り込まれているログを、シンプルで直感的なインターフェース(SPL を知る必要はありません!)でカスタマイズ可能な標準搭載のダッシュボードとともに再利用することによって実現します。より高いスケールの経済性と運用効率を実現: チーム間でログ管理を一元化し、データとチームのサイロを壊し、全体的により良いサポートを得ることによって実現します。
4. Log Observer概要のサブセクション Log Observerホームページ メインメニューのLog Observer をクリックすると、Log Observer ホームページが表示されます。Log Observer ホームページは 4 つの明確なセクションで構成されています:
オンボーディングペイン: SplunkLog Observer の使用を開始するためのトレーニングビデオとドキュメントへのリンク。フィルターバー: 時間、インデックス、フィールドでフィルタリングし、クエリを保存することもできます。ログテーブルペイン: 現在のフィルター条件に一致するログエントリのリスト。フィールドペイン: 現在選択されているインデックスで利用可能なフィールドのリスト。
Splunk Index一般的に、Splunk では、「Index」はデータが保存される指定された場所を指します。これはデータのフォルダやコンテナのようなものです。Splunk では、「Index」はデータが保存される指定された場所を指します。これはデータのフォルダやコンテナのようなものです。Splunk 内のデータは、検索や分析が容易になるように整理され構造化されています。特定のタイプのデータを保存するために異なるインデックスを作成できます。たとえば、Web サーバーログ用のインデックス、アプリケーションログ用の別のインデックスなどがあります。
ヒント以前に Splunk Enterprise または Splunk Cloud を使用したことがある場合は、おそらくログから調査を開始することに慣れているでしょう。以下の演習で見るように、Splunk Observability Cloud でも同様のことができます。ただし、このワークショップでは、調査にOpenTelemetry のすべてのシグナルを使用します。
簡単な検索演習を行いましょう:
演習時間枠を -15m に設定します。
フィルターバーでAdd Filter をクリックし、ダイアログでField をクリックします。
cardType と入力して選択します。
トップ値 の下でvisa をクリックし、次に = をクリックしてフィルターに追加します。
ログテーブルのログエントリの 1 つをクリックして、エントリにcardType: "visa"が含まれていることを確認します。
出荷されたすべての注文を見つけましょう。フィルターバーのClear All をクリックして、前のフィルターを削除します。
フィルターバーで再びAdd Filter をクリックし、キーワード を選択します。次に**キーワードを入力…**ボックスにorder:と入力し、Enter キーを押します。
これで「order:」という単語を含むログ行のみが表示されるはずです。まだたくさんのログ行があるので、さらにフィルタリングしましょう。
別のフィルターを追加します。今回はField ボックスを選択し、Find a field … 検索ボックスにseverityと入力して選択します。
注文ログ行には重要度が割り当てられていないため、ダイアログボックスの下部にあるExclude all logs with this field をクリックしてください。これにより、他のログが削除されます。
上部にオンボーディングコンテンツがまだ表示されている場合は、Exclude all logs with this field ボタンを見るためにページを下にスクロールする必要があるかもしれません。
これで、過去 15 分間に販売された注文のリストが表示されるはずです。
次に、Splunk Synthetics を確認しましょう。
Synthetics概要 5 minutes
Splunk Synthetic Monitoring は、URL、API、重要な Web サービス全体に可視性を提供し、問題をより迅速に解決します。IT オペレーションとエンジニアリングチームは、問題の検出、アラート、優先順位付けを簡単に行い、複数ステップのユーザージャーニーをシミュレートし、新しいコードデプロイメントからのビジネスへの影響を測定し、ステップバイステップのガイド付き推奨事項を使用して Web パフォーマンスを最適化し、より良いデジタルエクスペリエンスを確保できます。
可用性の確保: ユーザーエクスペリエンスを構成する複数ステップのワークフローをシミュレートするカスタマイズ可能なブラウザテストで、重要なサービス、URL、API の健全性と可用性を事前に監視し、アラートを出します。メトリクスの改善: コアウェブバイタルとモダンパフォーマンスメトリクスにより、ユーザーはすべてのパフォーマンス欠陥を 1 か所で表示し、ページ読み込み、インタラクティビティ、視覚的安定性を測定して改善し、JavaScript エラーを見つけて修正してページパフォーマンスを向上させることができます。フロントエンドからバックエンドまで: Splunk APM、Infrastructure Monitoring、On-Call、ITSI との統合により、チームはエンドポイントの稼働時間をバックエンドサービス、基盤となるインフラストラクチャ、およびインシデント対応の調整との関連で表示し、単一の UI 内で環境全体をトラブルシューティングできます。検出とアラート: エンドユーザー体験を監視してシミュレートし、顧客に影響を与える前に API、サービスエンドポイント、重要なビジネストランザクションの問題を検出、通信、解決します。ビジネスパフォーマンス: 主要なビジネストランザクションの複数ステップのユーザーフローを簡単に定義し、数分で重要なユーザージャーニーの記録とテストを開始します。稼働時間とパフォーマンスの SLA と SLO を追跡・報告します。フィルムストリップとビデオ再生: 画面録画、フィルムストリップ、スクリーンショットを、最新のパフォーマンススコア、競合ベンチマーキング、メトリクスとともに表示して、人工的なエンドユーザー体験を視覚化します。ビジュアルコンテンツを配信する速度を最適化し、ページの安定性とインタラクティビティを向上させて、より良いデジタルエクスペリエンスをデプロイします。
5. Synthetics概要のサブセクション Syntheticsホームページ メインメニューのSynthetics をクリックします。これにより、Synthetics ホームページに移動します。このページには、役立つ情報を提供するか、Synthetic テストを選択または作成できる 3 つの明確なセクションがあります。
オンボーディングペイン: SplunkSynthetics の使用を開始するためのトレーニングビデオとドキュメントへのリンク。テストペイン: 設定されているすべてのテスト(ブラウザ 、API 、稼働時間 )のリスト。テスト作成ペイン: 新しい Synthetic テストを作成するためのドロップダウン。
情報ワークショップの一環として、実行しているアプリケーションに対するデフォルトのブラウザテストを作成しています。テストペイン(2 )でそれを見つけることができます。名前はWorkshop Browser Test for で、その後にワークショップの名前が続きます(インストラクターがそれを提供しているはずです)。
ツアーを続けるために、ワークショップの自動ブラウザテストの結果を見てみましょう。
演習テストペインで、ワークショップの名前を含む行をクリックします。結果は次のようになります:
注意:Synthetic テストページでは、最初のペインに過去 1 日、8 日、30 日間のサイトのパフォーマンスが表示されます。上のスクリーンショットに示すように、テストが過去に十分遡って開始された場合のみ、対応するチャートに有効なデータが含まれます。ワークショップでは、これはワークショップが作成された時期によって異なります。 パフォーマンス KPI ドロップダウンで、デフォルトの 4 時間から過去 1 時間に時間を変更します。 テストはどのくらいの頻度で、どこから実行されていますか?
テストは1 分間隔 でラウンドロビン方式によりフランクフルト、ロンドン、パリ から実行されています
次に、Splunk インフラストラクチャモニタリング(IM) を使用して、アプリケーションが実行されているインフラストラクチャを調べてみましょう。
インフラストラクチャ概要 5 minutes
Splunk Infrastructure Monitoring(IM)は、ハイブリッドクラウド環境向けの市場をリードする監視および可観測性サービスです。特許取得済みのストリーミングアーキテクチャに基づいて構築されており、従来のソリューションよりもはるかに短時間で、より高い精度でインフラストラクチャ、サービス、アプリケーション全体のパフォーマンスを視覚化および分析するためのリアルタイム ソリューションをエンジニアリングチームに提供します。
OpenTelemetry 標準化: データの完全な制御を提供し、ベンダーロックインから解放し、独自のエージェントの実装から解放します。Splunk の OTel コレクター: シームレスなインストールと動的な構成により、スタック全体を数秒で自動検出し、クラウド、サービス、システム全体の可視性を提供します。300 以上の使いやすい標準コンテンツ: 事前構築されたナビゲーターとダッシュボードにより、環境全体の即時の視覚化を提供し、すべてのデータとリアルタイムで対話できます。Kubernetes ナビゲーター: ノード、ポッド、コンテナの包括的な標準的な階層ビューを即座に提供します。わかりやすいインタラクティブなクラスターマップで、最も初心者の Kubernetes ユーザーでもすぐに使いこなせます。AutoDetect アラートとディテクター: 最も重要なメトリクスを標準で自動的に識別し、テレメトリデータが取り込まれた瞬間から正確にアラートを出すディテクターのアラート条件を作成し、重要な通知のために数秒でリアルタイムのアラート機能を使用します。ダッシュボード内のログビュー: 共通のフィルターと時間制御を使用して、ログメッセージとリアルタイムメトリクスを 1 ページに組み合わせ、より迅速なコンテキスト内トラブルシューティングを実現します。メトリクスパイプライン管理: 再計装なしに取り込み時点でメトリクスの量を制御し、必要なデータのみを保存して分析するための集約およびデータ削除ルールのセットを使用します。メトリクスの量を削減し、可観測性のコストを最適化します。
ショッピングに行きましょう 💶 5 minutes
ペルソナあなたは次の目新しいアイテムを有名なオンラインブティックショップで購入したいと思っているおしゃれな都会人 です。オンラインブティックはあなたのヒップスターな要求すべてを満たすための場所だと聞いています。
この演習の目的は、オンラインブティックウェブアプリケーションと対話することです。これは Splunk Observability Cloud の機能を実演するために使用されるサンプルアプリケーションです。このアプリケーションは簡単な E コマースサイトで、商品の閲覧、カートへの追加、そして精算が可能です。
このアプリケーションはすでにデプロイされており、インストラクターがオンラインブティックウェブサイトへのリンクを提供します。例:
http://<s4r-workshop-i-xxx.splunk>.show:81/ 。アプリケーションは80 および443 ポートでも実行されているので、そちらを使用するか、ポート81 が到達不能な場合はそれらを使用することもできます。
演習 - ショッピングに行きましょうオンラインブティックへのリンクが得られたら、いくつかの商品を閲覧し、カートに追加し、最後に精算を行ってください。 この演習を数回繰り返し、可能であれば異なるブラウザ、モバイルデバイス、またはタブレットを使用してください。これによりより多くのデータが生成され、探索できるようになります。
ヒントページの読み込みを待っている間は、ページ上でマウスカーソルを動かしてください。これにより、このワークショップの後半で探索するためのより多くのデータが生成されます。
演習 (続き)精算プロセスについて何か気づいたことはありますか?完了までに時間がかかったように思えましたが、最終的には完了しましたか?こうした場合は、注文確認 ID をコピーしてローカルに保存してください。後で必要になります。 ショッピングに使用したブラウザセッションを閉じてください。 これは、ユーザーエクスペリエンスが悪い場合の感覚で、これは潜在的な顧客満足度の問題であるため、すぐにトラブルシューティングを行う必要があります。
Splunk RUM でデータがどのように見えるか確認してみましょう。
Splunk RUM 15 minutes
ペルソナあなたはフロントエンドエンジニア またはSRE で、パフォーマンス問題の最初のトリアージを行うよう任されています。オンラインブティックアプリケーションに関する潜在的な顧客満足度の問題を調査するよう依頼されました。
すべての参加者のブラウザセッションから受信したテレメトリによって提供された実際のユーザーデータを調査します。目標は、パフォーマンスの悪かったブラウザ、モバイル、またはタブレットセッションを見つけて、トラブルシューティングプロセスを開始することです。
5. Splunk RUMのサブセクション 1. RUMダッシュボード Splunk Observability Cloud のメインメニューから、RUM をクリックします。RUM ホームページに到着します。このビューについては、先ほどの短い紹介ですでに説明しました。
演習ドロップダウンが以下のように設定/選択されていることを確認して、ワークショップを選択してください:時間枠 は -15m に設定されていること。選択されているEnvironment は [ワークショップ名]-workshop であること。 選択されているApp は [ワークショップ名]-store であること。 Source はAll に設定されていること。 次に、Page Views / JavaScript Errors チャートの上にある [ワークショップ名]-store をクリックします。 これにより、UX Metrics 、Front-end Health 、Back-end Health 、Custom Events ごとにメトリクスを分類し、過去のメトリクス(デフォルトでは 1 時間)と比較する新しいダッシュボードビューが表示されます。
UX Metrics: ページビュー、ページロード、Web バイタルメトリクス。Front-end Health: JavaScript エラーとロングタスクの期間と数の内訳。Back-end Health: ネットワークエラー、リクエスト、最初のバイトまでの時間。Custom Events: Custom Events の RED メトリクス(レート、エラー、期間)。
演習各タブ(UX Metrics 、Front-end Health 、Back-end Health 、Custom Events )をクリックしてデータを調べます。 「Custom Events」タブのチャートを調べると、どのチャート がレイテンシースパイクを 明確に示していますか?
それは 「Custom Event Latency」 チャートです
2. Tag Spotlight
演習Custom Events タブを選択して、そのタブにいることを確認します。
Custom Event Latency チャートを見てください。ここに表示されているメトリクスはアプリケーションのレイテンシーを示しています。横の比較メトリクスは、1 時間前(上部のフィルターバーで選択されています)と比較したレイテンシーを示しています。
チャートタイトルの下にあるすべて表示 リンクをクリックします。
このダッシュボードビューでは、RUM データに関連付けられたすべてのタグが表示されます。タグはデータを識別するために使用されるキーと値のペアです。この場合、タグは OpenTelemetry 計装によって自動的に生成されます。タグはデータをフィルタリングし、チャートやテーブルを作成するために使用されます。Tag Spotlight ビューでは、ユーザーセッションを詳しく調べることができます。
演習時間枠を過去 1 時間 に変更します。 Add filters をクリックし、OS Version を選択し、!=をクリックして Synthetics とRUMLoadGen を選択し、フィルターを適用 ボタンをクリックします。Custom Events Name チャートを見つけ、リスト内のPlaceOrder を見つけてクリックし、Add to filter を選択します。上部のグラフに大きなスパイクがあることに注目してください。 User Session タブをクリックします。Duration の見出しを 2 回クリックして、セッションを期間で並べ替えます(最も長いものが上部に表示されます)。テーブルの上にある をクリックし、追加の列のリストからSf Geo City を選択し、保存 をクリックします。 これで、最も長い期間の降順でソートされたユーザーセッションテーブルができました。このテーブルには、サイトでショッピングしたすべてのユーザーの都市も含まれています。OS バージョン、ブラウザバージョンなど、さらにフィルターを適用してデータを絞り込むこともできます。
3. セッションリプレイ
セッションセッションは、ユーザーがアプリケーションと対話する際に実行するアクションに対応するトレースの集まりです。デフォルトでは、セッションはセッションでキャプチャされた最後のイベントから 15 分経過するまで続きます。最大セッション時間は 4 時間です。
演習User Session テーブルで、最も長いDuration (20 秒以上)の上位のSession ID をクリックすると、RUM セッションビューに移動します。
演習RUM セッションリプレイ Replay ボタンをクリックします。RUM セッションリプレイでは、ユーザーセッションを再生して確認することができます。これはユーザーが体験した内容を正確に確認するための優れた方法です。 ボタンをクリックしてリプレイを開始します。 RUM セッションリプレイでは情報を編集することができます。デフォルトではテキストが編集されます。画像も編集することができます(このワークショップ例では実施済み)。これは、機密情報が含まれるセッションを再生する場合に役立ちます。また、再生速度を変更したり、再生を一時停止したりすることもできます。
ヒントセッションを再生する際、マウスの動きがキャプチャされていることに注目してください。これは、ユーザーがどこに注意を向けているかを確認するのに役立ちます。
4. ユーザーセッション
演習右上隅のX をクリックして、RUM セッションリプレイを閉じます。 スパンの長さに注目してください。これは注文を完了するのにかかった時間で、良くありません! ページを下にスクロールすると、タグ メタデータ(Tag Spotlight で使用されるもの)が表示されます。タグの後に、ウォーターフォールが表示され、読み込まれたページオブジェクト(HTML、CSS、画像、JavaScript など)が表示されます。 ページを下にスクロールし続けて、青いAPM リンク(URL の末尾に/cart/checkoutがあるもの)まで移動し、その上にカーソルを置きます。
これにより APM パフォーマンスサマリーが表示されます。このエンドツーエンド(RUM から APM)のビューは、問題のトラブルシューティングを行う際に非常に便利です。
演習上のスクリーンショットのように、paymentservice とcheckoutservice がエラー状態にあることがわかります。 ワークフロー名 の下にあるfront-end:/cart/checkoutをクリックすると、APM サービスマップ が表示されます。
Splunk APM 20 minutes
ペルソナあなたはバックエンド開発者 で、SRE が発見した問題の調査を手伝うよう依頼されました。SRE はユーザーエクスペリエンスの低下を特定し、あなたにその問題を調査するよう依頼しました。
RUM トレース(フロントエンド)から APM トレース(バックエンド)にジャンプすることで、完全なエンドツーエンドの可視性の力を発見します。すべてのサービスはテレメトリ(トレースとスパン)を送信しており、Splunk Observability Cloud はこれを視覚化、分析し、異常やエラーを検出するために使用できます。
RUM と APM は同じコインの表と裏です。RUM はアプリケーションのクライアント側からの視点であり、APM はサーバー側からの視点です。このセクションでは、APM を使用して掘り下げ、問題がどこにあるかを特定します。
6. Splunk APMのサブセクション 1. APM探索 APM サービスマップは、APM で計装された(インストルメンテーション)サービスと推測されるサービスの間の依存関係と接続を表示します。このマップは、時間範囲、環境、ワークフロー、サービス、タグフィルターでの選択に基づいて動的に生成されます。
RUM ウォーターフォールで APM リンクをクリックすると、そのワークフロー名(frontend:/cart/checkout)に関連するサービスを表示するために、サービスマップビューに自動的にフィルターが追加されました。
ワークフローに関連するサービスはService Map で確認できます。サイドペインのBusiness Workflow の下には、選択したワークフローのチャートが表示されています。Service Map とビジネスワークフローチャートは同期しています。Service Map でサービスを選択すると、Business Workflow ペインのチャートが更新され、選択したサービスのメトリクスが表示されます。
演習サービスマップでpaymentservice をクリックします。
Splunk APM はまた、リアルタイムで発生している問題を確認し、問題がサービス、特定のエンドポイント、または基盤となるインフラストラクチャに関連しているかどうかを迅速に判断するのに役立つ組み込みの Service Centric View(サービス中心ビュー) も提供しています。より詳しく見てみましょう。
演習右側のペインで、青色のpaymentservice をクリックします。
2. APMサービスビュー
サービスビューサービスオーナーとして、Splunk APM のサービスビューを使用して、単一のパネルでサービスの健全性の完全なビューを取得できます。サービスビューには、可用性、依存関係、リクエスト、エラー、および期間(RED)メトリクス、ランタイムメトリクス、インフラストラクチャメトリクス、Tag Spotlight、エンドポイント、および選択したサービスのログのためのサービスレベルインジケーター(SLI)が含まれています。また、サービスビューからサービスのコードプロファイリングとメモリプロファイリングにすぐにアクセスすることもできます。
演習時間 ボックスを確認すると、ダッシュボードは以前に選択した APM トレースが完了するまでにかかった時間に関連するデータのみを表示していることがわかります(チャートは静的であることに注意してください)。時間 ボックスで時間枠を -1h に変更します。これらのチャートはパフォーマンスの問題を素早く特定するのに非常に役立ちます。このダッシュボードを使用して、サービスの健全性を監視できます。 ページを下にスクロールしてInfrustructure Metrics を展開します。ここでホストと Pod のメトリクスが表示されます。 Runtime Metrics は、Node.js で書かれたサービスにはプロファイリングデータが利用できないため、使用できません。では、探索ビューに戻りましょう。ブラウザの戻るボタンを押してください。
演習サービスマップでpaymentservice の上にカーソルを置いてください。ポップアップサービスチャートからどのような結論を導き出せますか?
このエラー率にパターンがあるかどうかを理解する必要があります。そのための便利なツール、Tag Spotlight があります。
3. APM Tag Spotlight
演習paymentservice のタグを表示するには、paymentservice をクリックし、右側の機能ペインのTag Spotlight をクリックします(画面の解像度によっては下にスクロールする必要があるかもしれません)。Tag Spotlight に入ったら、フィルターアイコンからShow tags with no values チェックボックスがオフになっていることを確認してください。
Tag Spotlight のビューは、チャートとカードの両方で設定可能です。デフォルトではリクエストとエラー に設定されています。
また、カードに表示されるタグメトリクスを設定することも可能です。以下の任意の組み合わせを選択できます:
Requests Errors Root Cause errors P50 Latency P90 Latency P99 Latency 改めて、フィルターアイコンからShow tags with no values チェックボックスがオフになっていることを確認してください。
演習どのカードが問題を特定するタグを明らかにしていますか?
「Version」カードです。v350.10に対するリクエスト数がエラー数と一致しています(つまり 100%)
paymentservice の問題を引き起こしているバージョンを特定したので、エラーについてさらに詳しい情報が見つかるか確認してみましょう。ページ上部の ← Tag Spotlight をクリックして、サービスマップに戻ります。
4. APMサービスブレイクダウン
演習サービスマップでpaymentservice を選択します。 右側のペインでBreakdown をクリックします。 リストからtenant.levelを選択します。 サービスマップに戻り、gold をクリックします。 Breakdown をクリックしてversionを選択します。これはサービスバージョンを表示するタグです。これをsilver とbronze についても繰り返します。 表示されている内容からどのような結論が導き出せますか?
すべてのtenant.levelがv350.10の影響を受けています
これでpaymentservice がgold 、silver 、bronze の 3 つのサービスに分解されているのが確認できます。各テナントは 2 つのサービスに分解されており、それぞれのバージョン(v350.10とv350.9)に対応しています。
スパンタグスパンタグを使用してサービスを分解することは非常に強力な機能です。これにより、異なる顧客、異なるバージョン、異なる地域などに対して、サービスがどのようにパフォーマンスを発揮しているかを確認できます。この演習では、paymentservice のv350.10がすべての顧客に問題を引き起こしていることを特定しました。
次に、何が起きているかを確認するためにトレースを詳しく調べる必要があります。
5. APMトレースアナライザー Splunk APM はすべてのサービスのNoSample (サンプリングなし)エンドツーエンドの可視性を提供するため、Splunk APM はすべてのトレースをキャプチャします。このワークショップでは、Order Confirmation ID がタグとして利用可能です。これは、ワークショップの前半で遭遇した不良なユーザー体験の正確なトレースを検索するためにこれを使用できることを意味します。
トレースアナライザーSplunk Observability Cloud は、アプリケーション監視データを探索するためのいくつかのツールを提供しています。Trace Analyzer は、未知または新しい問題を調査するための高カーディナリティ、高粒度の検索と探索が必要なシナリオに適しています。
演習paymentservice の外側のボックスを選択した状態で、右側のペインでTrace をクリックします。Trace Analyzer を使用していることを確認するため、ク Switch to Classic View ボタンが表示されていることを確認します。表示されていない場合は、Switch to Trace Analyzer をクリックします。時間範囲 を過去 15 分 に設定します。Sample Ratio が1:10ではなく1:1に設定されていることを確認します。
Trace & Error count ビューは、積み上げ棒グラフで合計トレース数とエラーのあるトレース数を表示します。マウスを使用して、利用可能な時間枠内の特定の期間を選択できます。
演習Trace & Error count と表示されているドロップダウンメニューをクリックし、Trace Duration に変更します
Trace Duration ビューは、期間ごとのトレースのヒートマップを表示します。ヒートマップは 3 次元のデータを表しています:
x 軸の時間 y 軸のトレース期間 ヒートマップの色合いで表される 1 秒あたりのトレース(またはリクエスト)数 マウスを使ってヒートマップ上の領域を選択し、特定の時間帯とトレース期間の範囲にフォーカスすることができます。
演習Trace Duration からTrace & Error count に戻します。時間選択で過去 1 時間 を選択します。 ほとんどのトレースにエラー(赤)があり、エラーのないトレース(青)は限られていることに注意してください。 Sample Ratio が1:10ではなく1:1に設定されていることを確認します。Add filters をクリックし、orderIdと入力してリストからorderId を選択します。ワークショップの前半でショッピングを行った際のOrder Confirmation ID を貼り付けて Enter キーを押します。もし ID を記録していない場合は、インストラクターに確認してください。
これで、非常に長いチェックアウト待ちという不良なユーザーエクスペリエンスに遭遇した正確なトレースまでフィルタリングできました。
このトレースを表示することの二次的な利点は、トレースが最大 13 か月間アクセス可能であることです。これにより、開発者は後の段階でこの問題に戻り、このトレースを引き続き表示することができます。
演習次に、トレースウォーターフォールを確認していきます。
6. APMウォーターフォール トレースアナライザー からトレースウォーターフォール に到達しました。トレースは同じトレース ID を共有するスパンの集まりで、アプリケーションとその構成サービスによって処理される一意のトランザクションを表します。
Splunk APM の各スパンは、単一の操作をキャプチャします。Splunk APM は、スパンがキャプチャする操作がエラーになった場合、そのスパンをエラースパンとみなします。
演習ウォーターフォール内の任意のpaymentservice:grpc.hipstershop.PaymentService/Chargeスパンの横にある! をクリックします。 スパン詳細で報告されているエラーメッセージとバージョンは何ですか?
Invalid request(無効なリクエスト)とv350.10です 。
問題を引き起こしているpaymentservice のバージョンを特定したので、エラーについてさらに詳しい情報が見つかるか確認してみましょう。ここで関連ログ の出番です。
関連コンテンツ(Related Contents)は、APM、インフラストラクチャモニタリング、および Log Observer が可観測性クラウド全体でフィルターを渡すことを可能にする特定のメタデータに依存しています。関連ログが機能するためには、ログに以下のメタデータが必要です:
service.namedeployment.environmenthost.nametrace_idspan_id
演習トレースウォーターフォール の一番下でLogs (1)をクリックします。これは、このトレースに 関連ログ があることを示しています。ポップアップのLogs for trace xxx (トレース xxx のログ)エントリをクリックすると、Log Observer で完全なトレースのログが開きます。
次に、ログのエラーについてさらに詳しく調べてみましょう。
Splunk Log Observer 20 minutes
ペルソナバックエンド開発者 の役割を継続して、アプリケーションのログを調査して問題の根本原因を特定する必要があります。
APM トレースに関連するコンテンツ(ログ)を使用して、Splunk Log Observer でさらに掘り下げ、問題が正確に何であるかを理解します。
関連コンテンツは、あるコンポーネントから別のコンポーネントにジャンプできる強力な機能で、メトリクス 、トレース 、ログ で利用可能です。
7. Splunk Log Observerのサブセクション 1. ログフィルタリング Log Observer (LO)は、複数の方法で使用できます。クイックツアーでは、LO の コード不要インターフェース を使用して、ログ内の特定のエントリを検索しました。しかし、このセクションでは、関連コンテンツ リンクを使用して APM のトレースから LO に到達したと想定しています。
これの利点は、RUM と APM 間のリンクと同様に、以前のアクションのコンテキスト内でログを見ていることです。この場合、コンテキストはトレースの時間枠(1 )とtrace_id に設定されたフィルター(2 )です。
このビューには、エンドユーザーとオンラインブティックのやり取りによって開始されたバックエンドトランザクションに参加したすべての アプリケーションまたはサービスからのすべての ログ行が含まれます。
私たちのオンラインブティックのような小さなアプリケーションでさえ、見つかるログの膨大な量により、調査している実際のインシデントに関連する特定のログ行を見つけることが難しくなる場合があります。
演習次に、ログエントリの詳細を見ていきます。
2. ログエントリの表示 特定のログ行を見る前に、これまでに行ったことと、可観測性の 3 本柱に基づいてなぜここにいるのかを簡単に振り返ってみましょう:
メトリクス トレース ログ 問題がありますか? 問題はどこですか? 問題は何ですか?
メトリクスを使用して、アプリケーションに問題がある ことを特定しました。これはサービスダッシュボードのエラー率が、あるべき値よりも高かったことから明らかでした。 トレースとスパンタグを使用して、問題がどこにあるか を見つけました。paymentservice にはv350.9とv350.10の 2 つのバージョンがあり、v350.10のエラー率は 100% でした。 paymentservice のv350.10からのこのエラーが、複数の再試行とオンラインブティックのチェックアウトからの応答の長い遅延を引き起こしたことを確認しました。トレースから、関連コンテンツ の力を使用して、失敗したpaymentservice バージョンのログエントリに到達しました。これで、問題が何であるか を特定できます。
演習ログテーブルのエラーエントリをクリックします(リストに別のサービスからのまれなエラーもある場合は、hostname: "paymentservice-xxxx"と表示されていることを確認してください)。 メッセージに基づいて、問題を解決するために開発チームに何を伝えますか?
開発チームは、有効な API トークンでコンテナを再構築してデプロイするか、v350.9にロールバックする必要があります 。
おめでとうございますSplunk Observability Cloud を正常に 使用して、オンラインブティックでショッピング中に不良なユーザーエクスペリエンスを体験した理由を理解しました。RUM、APM、ログを使用して、サービス環境で何が起こったかを理解し、その後、可観測性の 3 本柱であるメトリクス 、トレース 、ログ に基づいて根本原因を見つけました。
また、アプリケーションの動作パターンを検出するためにTag Spotlight でインテリジェントなタグ付けと分析 を使用する方法と、問題のコンテキストを維持しながら異なるコンポーネント間を迅速に移動するために関連コンテンツ のフルスタック相関 パワーを使用する方法も学びました。
ワークショップの次のパートでは、問題発見モード から緩和 、防止 、プロセス改善モード に移行します。
次は、カスタムダッシュボードでのログチャートの作成です。
3. ログタイムラインチャート Log Observer で特定のビューを持った後、そのビューをダッシュボードで使用できると、将来的に問題の検出や解決にかかる時間を短縮するのに非常に役立ちます。ワークショップの一環として、これらのチャートを使用する例示的なカスタムダッシュボードを作成します。
ログタイムライン チャートの作成を見ていきましょう。ログタイムラインチャートは、時間経過に伴うログメッセージを視覚化するために使用されます。ログメッセージの頻度を確認し、パターンを特定するための優れた方法です。また、環境全体でのログメッセージの分布を確認するための素晴らしい方法でもあります。これらのチャートはカスタムダッシュボードに保存できます。
演習次に、ログビュー チャートを作成します。
4. ログビューチャート ログで使用できる次のチャートタイプはログビュー チャートタイプです。このチャートでは、事前定義されたフィルターに基づいてログメッセージを確認できます。
前回のログタイムラインチャートと同様に、このチャートのバージョンをカスタマーヘルスサービスダッシュボードに追加します:
演習前回の演習後、まだLog Observer にいることを確認してください。 フィルターは前回の演習と同じで、時間選択が過去 15 分 に設定され、severity=error、sf_service=paymentservice、sf_environment=[WORKSHOPNAME]でフィルタリングされている必要があります。 必要なフィールドのみを含むヘッダーがあることを確認してください。 再度Save をクリックし、Save to Dashvoard をクリックします。 これによりチャート作成ダイアログが再度表示されます。 Chart name としてログビュー を使用します。今回はSelect Dashboard をクリックし、前回の演習で作成したダッシュボードを検索します。検索ボックス(1 )にあなたのイニシャルを入力することから始めることができます。
あなたのダッシュボード名をクリックして強調表示し(2 )、OK (3 )をクリックします。 これによりチャート作成ダイアログに戻ります。 Chart type としてLog view が選択されていることを確認します。
ダッシュボードを表示するには、Save and go to dashboard をクリックします。 結果は以下のダッシュボードと同様になるはずです:
この演習の最後のステップとして、あなたのダッシュボードをワークショップチームページに追加しましょう。これにより、ワークショップの後半で簡単に見つけることができます。 ページ上部で、あなたのダッシュボード名の左にある … をクリックします。
ドロップダウンからLinks to Team を選択します。 次のLinks to Team ダイアログボックスで、インストラクターが提供したワークショップチームを見つけてDone をクリックします。 次のセッションでは、Splunk Synthetics を見て、Web ベースのアプリケーションのテストを自動化する方法を確認します。
Splunk Synthetics 15 minutes
ペルソナSRE の帽子を再び被って、オンラインブティックの監視を設定するよう依頼されました。アプリケーションが 24 時間 365 日、利用可能で良好なパフォーマンスを発揮していることを確認する必要があります。
アプリケーションを 24 時間 365 日監視し、問題が発生したときにアラートを受け取ることができたらいいと思いませんか?ここで Synthetics の出番です。オンラインブティックを通じて典型的なユーザージャーニーのパフォーマンスと可用性を毎分チェックする簡単なテストを紹介します。
8. Splunk Syntheticsのサブセクション 1. Syntheticsダッシュボード Splunk Observability Cloud のメインメニューから、Synthetics をクリックします。All またはBrowser tests をクリックして、アクティブなテストのリストを表示します。
RUM セクションでの調査中に、Place order トランザクションに問題があることがわかりました。Synthetics テストからもこれを確認できるか見てみましょう。テストの 4 ページ目のFirst byte time というメトリクスを使用します。これはPlace order ステップです。
演習Search ボックスに [ワークショップ名] を入力し、あなたのワークショップのテストを選択します(インストラクターがどれを選択するか指示します)。Performance KPIs の下で、時間選択を過去 1 時間 に設定して Enter キーを押します。Location をクリックし、ドロップダウンからPage を選択します。次のフィルターには、テストの一部であるページが表示されます。Duration をクリックし、Duration の選択を解除してFirst byte time を選択します。
凡例を見て、First byte time - Page 4 の色に注目してください。 First byte time - Page 4 の最も高いデータポイントを選択します。これで、この特定のテスト実行のRun results に移動します。2. Syntheticsテスト詳細 現在、単一の Synthetic Browser テストの結果を見ています。このテストはビジネストランザクション に分割されています。これは、ビジネス上重要なユーザーフローを表す、論理的に関連する 1 つ以上の操作のグループと考えてください。
情報以下のスクリーンショットにはエラーを示す赤いバナーは含まれていませんが、あなたの実行結果には表示されている場合があります。これは、場合によってはテスト実行が失敗することがあり、ワークショップに影響しないため予期されることです。
フィルムストリップ: サイトのパフォーマンスのスクリーンショットのセットを提供し、ページがリアルタイムでどのように応答するかを確認できます。ビデオ: 特定のテスト実行の場所とデバイスからあなたのサイトを読み込もうとするユーザーが体験する内容を正確に確認できます。ブラウザテストメトリクス: ウェブサイトのパフォーマンスの全体像を提供するビューです。Synthetic トランザクション: サイトとの対話を構成する Synthetic トランザクションのリストウォーターフォールチャート ウォーターフォールチャートは、テストランナーとテスト対象サイトの間の対話を視覚的に表現したものです。デフォルトでは、Splunk Synthetics はテストのスクリーンショットとビデオキャプチャを提供します。これは問題のデバッグに役立ちます。例えば、大きな画像の読み込みが遅い、ページのレンダリングが遅いなどを確認できます。
演習マウスを使用してフィルムストリップを左右にスクロールし、テスト実行中にサイトがどのようにレンダリングされていたかを確認します。 ビデオペインで、再生ボタン ▶ を押してテスト再生を見ます。省略記号 ⋮ をクリックすると、再生速度 の変更、ピクチャーインピクチャー での表示、さらにビデオのダウンロード もできます。 Synthetic トランザクションペインのビジネストランザクション ヘッダーの下で、最初のボタンHome をクリックします。 下のウォーターフォールにはページを構成するすべてのオブジェクトが表示されます。最初の行は HTML 自体です。次の行は、ページを構成するオブジェクト(HTML、CSS、JavaScript、画像、フォントなど)です。 ウォーターフォールでGET splunk-otel-web.js の行を見つけます。 > ボタンをクリックしてメタデータセクションを開き、リクエスト/レスポンスヘッダー情報を確認します。Synthetic トランザクションペインで、2 番目のビジネストランザクションShop をクリックします。フィルムストリップが調整され、新しいトランザクションの先頭に移動することに注意してください。 他のすべてのトランザクションについても同じことを繰り返し、最後にPlace Order トランザクションを選択します。 3. SyntheticsからAPMへ 今、以下のような表示が見えているはずです。
演習ウォーターフォールでPOST checkout で始まるエントリを見つけます。 その前にある > ボタンをクリックして、メタデータセクションを展開します。収集されたメタデータを観察し、Server-Timing ヘッダーに注目してください。このヘッダーにより、テスト実行をバックエンドトレースに関連付けることができます。 ウォーターフォールのPOST checkout 行にある青い APM リンクをクリックします。
演習paymentservice に対して 1 つ以上のエラーが表示されていることを確認します(1 )。同じエラーであることを確認するには、ログ の関連コンテンツをクリックします(2 )。 前回の演習を繰り返して、エラーのみにフィルタリングします。 エラーログを表示して、無効なトークンによる支払い失敗を確認します。 4. Synthetics Detector これらのテストを 24 時間 365 日実行できるため、テストが失敗したり、合意した SLA よりも長く実行され始めた場合に、ソーシャルメディアやアップタイムウェブサイトから通知される前に、早期に警告を受けるための理想的なツールです。
そのような事態を防ぐために、テストが 1.1 分以上かかっているかどうかを検知しましょう。
演習左側のメニューから Synthetics ホームページに戻ります
ワークショップのテストを再度選択し、ページ上部のCreate Detector ボタンをクリックします。
New Synthetics Detector というテキスト(1 )を編集し、イニシャル - [ワークショップ名]に置き換えます。
Run Duration とStatic threashold が選択されていることを確認します。
Trigger threasholt (2 )を65,000〜68,000に設定し、Enter キーを押してチャートを更新します。上図のように、しきい値ラインを切る複数のスパイクがあることを確認してください(実際のレイテンシーに合わせてしきい値を少し調整する必要があるかもしれません)。
残りはデフォルトのままにします。
スパイクの下に赤と白の三角形の列が表示されるようになったことに注意してください(3 )。赤い三角形は、テストが指定されたしきい値を超えたことを Detector が検出したことを知らせ、白い三角形は結果がしきい値を下回ったことを示します。各赤い三角形がアラートをトリガーします。
アラートの重大度(4 )は、ドロップダウンを別のレベルに変更することで変更できます。また、アラート方法も変更できます。受信者を追加しないでください 。アラートストームの対象になる可能性があります!
Actibate をクリックして、 Detector をデプロイします。
新しく作成した Detector を見るには、Edit Test ボタンをクリックします。
ページの下部にアクティブな Detector のリストがあります。
あなたの Detector が見つからず、新しい Synthetics Detector という名前のものが表示されている場合は、あなたの名前で正しく保存されていない可能性があります。新しい Synthetics Detector のリンクをクリックして、名前の変更をやり直してください。
閉じる ボタンをクリックして編集モードを終了します。
カスタムサービスヘルスダッシュボード 🏥 15 minutes
ペルソナSRE の帽子が似合っているので、引き続き着用してpaymentservice 用のカスタムサービスヘルスダッシュボードの構築を依頼されたと想定します。要件は RED メトリクス、ログ、Synthetic テスト期間の結果を表示することです。
開発チームと SRE チームが、アプリケーションやサービスの健全性の概要を必要とすることは一般的です。これらは多くの場合、壁に取り付けられた TV に表示されます。Splunk Observability Cloud は、カスタムダッシュボードを作成することでこれに最適なソリューションを提供しています。
このセクションでは、チームのモニターや TV に表示するためのサービスヘルスダッシュボード を構築します。
ワークショップ まとめ 🎁 10 minutes
おめでとうございます。Splunk4Rookies - Observability Cloud ワークショップ を修了しました。今日は Splunk Observability Cloud を使用してアプリケーションとインフラストラクチャを監視する方法に慣れました。
この修了証をあなたのLinkedIn
プロフィールに追加して成果をアピールしましょう。
私たちが学んだことと次にできることを振り返ってみましょう。
10. ワークショップ まとめのサブセクション 主要なポイント このワークショップを通じて、Splunk Observability Cloud と OpenTelemetry シグナル(メトリクス 、トレース 、ログ )の組み合わせが、検出までの平均時間(MTTD )と解決までの平均時間(MTTR )をどのように短縮できるかを見てきました。
メインユーザーインターフェイスとそのコンポーネント、ランディング、インフラストラクチャ、APM、RUM、Synthetics、ダッシュボード ページ、そして設定 ページについて理解を深めました。 時間に応じて、インフラストラクチャ の演習を行い、Kubernetes ナビゲーターで使用されるメトリクス を確認し、Kubernetes クラスターで見つかった関連サービスを見ました:
ユーザーが何を体験しているかを理解し、RUM と APM を使用して特に長いページ読み込みのトラブルシューティングを行いました。フロントエンドとバックエンド全体でトレースをたどり、ログエントリーまで追跡しました。
RUM のセッション再生 と APM の依存関係マップ を使用し、ブレークダウン機能を使って問題の原因を発見しました:
RUM と APM の両方でTag Spotlight を使用して、影響範囲を理解し、パフォーマンス問題とエラーのトレンドやコンテキストを検出しました。APM のトレースウォーターフォール でスパン を詳しく調べ、サービスがどのように相互作用し、エラーを見つけました:
関連コンテンツ 機能を使用して、トレース からトレース に関連するログ への直接のリンクをたどり、フィルターを使用して問題の正確な原因まで掘り下げました。
次に、Web とモバイルトラフィックをシミュレートできる Synthetics を調べ、利用可能な Synthetics テストを使用して、まず RUM/APM と Log Observer での発見を確認し、次にテストの実行時間が SLA を超えた場合にアラートを受け取るためのディテクター を作成しました。
最後の演習では、開発者と SRE のために TV スクリーンで継続的に表示するヘルスダッシュボードを作成しました: