> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# リモートデモデータセット

> ClickStack とリモートのデモデータセットの入門

export const Image = ({img, alt, size = "lg"}) => {
  const normalizedSize = ["sm", "md", "lg"].includes(size) ? size : "lg";
  return <div className={`ch-image-${normalizedSize}`}>
      <Frame>
        <img src={img} alt={alt} />
      </Frame>
    </div>;
};

**以下のガイドは、[all-in-one image の手順](/docs/ja/clickstack/getting-started/oss)または [Local Mode Only](/docs/ja/clickstack/deployment/local-mode-only) を使用して Open Source ClickStack をデプロイし、初期ユーザーの作成を完了していることを前提としています。あるいは、ローカル環境でのセットアップをすべて省略し、このデータセットを使用している ClickStack のホストデモ [play-clickstack.clickhouse.com](https://play-clickstack.clickhouse.com) に接続することもできます。**

このガイドでは、公開 ClickHouse playground の [sql.clickhouse.com](https://sql.clickhouse.com) でホストされているサンプルデータセットを使用します。このデータセットには、ローカルの ClickStack デプロイメントから接続できます。

<Warning>
  **Managed ClickStack ではサポートされていません**

  Managed ClickStack ではリモートデータベースはサポートされていません。そのため、このデータセットもサポート対象外です。
</Warning>

このデータセットには、公式 OpenTelemetry (OTel) デモの ClickHouse 版から取得した約 40 時間分のデータが含まれています。データは毎晩再生され、タイムスタンプは現在の時間帯に合わせて調整されるため、HyperDX に統合されたログ、トレース、メトリクスを使ってシステムの挙動を確認できます。

<Info>
  **データの違いについて**

  このデータセットは毎日午前 0 時から再生されるため、デモを確認するタイミングによって表示される可視化は異なる場合があります。
</Info>

<div id="demo-scenario">
  ## デモシナリオ
</div>

このデモでは、望遠鏡や関連アクセサリを販売するEC サイトで発生したインシデントを調査します。

カスタマーサポートチームから、ユーザーがチェックアウト時の支払いを完了できない問題が発生しているとの報告がありました。この問題は、調査のために Site Reliability Engineering (SRE) チームにエスカレーションされています。

SRE チームは HyperDX を使用してログ、トレース、メトリクスを分析し、問題の診断と解決を進めます。その後、セッションデータを確認し、導き出した結論が実際のユーザー行動と一致しているかどうかを確かめます。

<div id="otel-demo">
  ## OpenTelemetry デモ
</div>

このデモでは、[ClickStack が保守するフォーク版](https://github.com/ClickHouse/opentelemetry-demo) の公式 OpenTelemetry デモを使用します。

<div id="demo-architecture">
  ### デモアーキテクチャ
</div>

このデモは、異なるプログラミング言語で実装され、gRPC と HTTP 経由で相互に通信するマイクロサービス群と、Locust を使用してユーザートラフィックを擬似的に生成するロードジェネレーターで構成されています。このデモの元のソースコードは、[ClickStack インストルメンテーション](/docs/ja/clickstack/ingesting-data/sdks/index)を使用するよう変更されています。

<Frame>
  <img src="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/architecture.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=4d6aa3c2f961c03b0c6ee2e0e2a9647c" alt="アーキテクチャ" width="2180" height="2282" data-path="images/use-cases/observability/hyperdx-demo/architecture.webp" />
</Frame>

*出典: [https://opentelemetry.io/docs/demo/architecture/](https://opentelemetry.io/docs/demo/architecture/)*

このデモの詳細については、以下を参照してください。

* [OpenTelemetry ドキュメント](https://opentelemetry.io/docs/demo/)
* [ClickStack が管理するフォーク](https://github.com/ClickHouse/opentelemetry-demo)

<div id="demo-steps">
  ## デモの手順
</div>

**このデモでは、[ClickStack SDKs](/docs/ja/clickstack/ingesting-data/sdks/index) を使ってインストルメントを行い、Kubernetes にサービスをデプロイしています。また、そこからメトリクスとログも収集しています。**

<Steps>
  <Step title="デモサーバーに接続する" id="connect-to-the-demo-server">
    <Info>
      **ローカル専用モード**

      Local Mode でデプロイする際に `Connect to Demo Server` をクリックした場合、この手順は省略できます。このモードを使用する場合、ログソースには `Demo_` プレフィックスが付きます (例: `Demo_Logs`) 。
    </Info>

    `Team Settings` に移動し、`Local Connection` の `Edit` をクリックします。

    <Image img="https://mintcdn.com/private-7c7dfe99/0q34g_AjISMsyr4Q/images/use-cases/observability/edit_connection.webp?fit=max&auto=format&n=0q34g_AjISMsyr4Q&q=85&s=bbe2967c61d5b6e4c081ca69cd8a0d4c" alt="接続を編集" size="lg" width="3600" height="1852" data-path="images/use-cases/observability/edit_connection.webp" />

    接続名を `Demo` にリネームし、続いて表示されるフォームにデモサーバー用の以下の接続情報を入力します。

    * `Connection Name`: `Demo`
    * `Host`: `https://sql-clickhouse.clickhouse.com`
    * `Username`: `otel_demo`
    * `Password`: 空のままにします

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/edit_demo_connection.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=2e4afa2b648580a932fd17317fd257d0" alt="デモ接続を編集" size="lg" width="3600" height="1852" data-path="images/use-cases/observability/hyperdx-demo/edit_demo_connection.webp" />
  </Step>

  <Step title="ログソースを変更する" id="modify-sources">
    <Info>
      **ローカル専用モード**

      Local Mode でデプロイするときに `Connect to Demo Server` をクリックした場合は、この手順をスキップできます。このモードを使用する場合、ログソースには `Demo_` というプレフィックスが付きます (例: `Demo_Logs`)
    </Info>

    上にスクロールして `Sources` に戻り、各ログソース (`Logs`、`Traces`、`Metrics`、`Sessions`) が `otel_v2` データベースを使用するように変更します。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/edit_demo_source.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=5029216f40114d7602258a9122c28a90" alt="Demo Source を編集" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/edit_demo_source.webp" />

    <Note>
      各ログソースでデータベースの一覧全体が表示されるようにするには、ページの再読み込みが必要になる場合があります。
    </Note>
  </Step>

  <Step title="時間範囲を調整" id="adjust-the-timeframe">
    右上のタイムピッカーを使って時間範囲を調整し、直前の `1 day` のすべてのデータが表示されるようにします。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_2.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=01151c3a3155f2d9cdf62a5f50be09c9" alt="ステップ 2" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_2.webp" />

    概要の棒グラフでは、エラー数にわずかな違いが見られ、連続するいくつかのバーで赤色が少し増えていることがあります。

    <Note>
      バーの位置は、データセットに対してクエリを実行するタイミングによって異なります。
    </Note>
  </Step>

  <Step title="エラーに絞り込む" id="filter-to-errors">
    エラーの発生箇所を目立たせるには、`SeverityText` フィルターを使用し、`error` を選択してエラーレベルの項目だけを表示します。

    これで、エラーがよりわかりやすくなるはずです。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_3.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=2d06e2a9b54a2057f428dd15fb81203d" alt="ステップ 3" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_3.webp" />
  </Step>

  <Step title="エラーのパターンを特定する" id="identify-error-patterns">
    HyperDX のクラスタリング機能を使うと、エラーを自動的に特定し、意味のあるパターンにグループ化できます。これにより、大量のログやトレースを扱う際の分析を迅速化できます。使用するには、左側のパネルにある `Analysis Mode` メニューから `イベントパターン` を選択します。

    エラークラスターからは、`Failed to place order` という名前のパターンを含め、支払い失敗に関連する問題が明らかになります。さらに、カード請求の問題や cache の容量不足を示すクラスターも確認できます。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_4.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=328bfc9496123f380d4341accbeef9f4" alt="ステップ 4" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_4.webp" />

    これらのエラークラスターは、異なるサービスで発生している可能性が高い点に注意してください。
  </Step>

  <Step title="エラーパターンを確認する" id="explore-error-pattern">
    ユーザーが支払いを完了できるという報告済みの問題と相関する、最もわかりやすいエラークラスター `Failed to place order` をクリックします。

    これにより、`frontend` サービスに関連付けられたこのエラーの発生一覧がすべて表示されます。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_5.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=2c68870e70018a99acfdb5b695fecff9" alt="ステップ 5" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_5.webp" />

    表示されたエラーのいずれかを選択します。ログのメタデータが詳細に表示されます。`概要` と `Column Values` を見ていくと、cache が原因でカード請求に問題が発生していることが示唆されます。

    `failed to charge card: could not charge the card: rpc error: code = Unknown desc = Visa cache full: cannot add new item.`

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_6.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=16f924302656e4ea844c2f4eafbc4834" alt="ステップ 6" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_6.webp" />
  </Step>

  <Step title="Exploreでインフラストラクチャを確認する" id="explore-the-infrastructure">
    cache に関連するエラーが、支払い失敗の原因となっている可能性が高いことがわかりました。この問題がマイクロサービス アーキテクチャのどこで発生しているのかは、まだ特定できていません。

    cache の問題を踏まえると、基盤となるインフラストラクチャを調査するのが妥当です。関連するポッドでメモリの問題が発生している可能性もあります。ClickStack では、ログとメトリクスが統合され、コンテキストに沿って表示されるため、根本原因をすばやく突き止めやすくなります。

    `frontend` サービスの基盤となるポッドに関連付けられたメトリクスを表示するには、`Infrastructure` タブを選択し、時間範囲を `1d` に広げます。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_7.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=5a28e31ae8720d2df186998667b84c54" alt="ステップ 7" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_7.webp" />

    この問題は、インフラストラクチャに関連しているようには見えません。エラーの前後を問わず、この期間を通して顕著に変化しているメトリクスはありません。Infrastructure タブを閉じます。
  </Step>

  <Step title="トレースを調べる" id="explore-a-trace">
    ClickStack では、トレースはログとメトリクスの両方にも自動的に相関付けられます。どのサービスが原因なのかを特定するために、選択したログにリンクされたトレースを見てみましょう。

    関連するトレースを可視化するには `Trace` を選択します。続くビューを下にスクロールすると、HyperDX が各サービスのスパンをつなぎ、マイクロサービス全体にまたがる分散トレースをどのように可視化しているかがわかります。決済には明らかに複数のマイクロサービスが関与しており、その中にはチェックアウト処理や通貨換算を行うものも含まれます。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_8.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=ac043a86e611d1df395942057e0cdd08" alt="ステップ 8" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_8.webp" />

    ビューの一番下までスクロールすると、`payment` サービスがエラーの原因となっており、それが呼び出しチェーンをさかのぼって伝播していることがわかります。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_9.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=1f0b34a4a30f3886af3a72e91a36f285" alt="ステップ 9" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_9.webp" />
  </Step>

  <Step title="トレースの検索" id="searching-traces">
    cache の問題により、payment サービスでユーザーが購入を完了できていないことが確認できました。根本原因についてさらに詳しく把握するため、このサービスのトレースをもう少し詳しく見ていきましょう。

    `Search` を選択してメインの Search view に切り替えます。`Traces` のデータソースに切り替え、`Results table` ビューを選択します。**期間が引き続き過去1日になっていることを確認してください。**

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_10.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=c9c219ac88089bdf10025447d4834373" alt="ステップ 10" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_10.webp" />

    このビューには、過去1日分のすべてのトレースが表示されます。問題は payment サービスで発生していることがわかっているため、`ServiceName` に `payment` フィルターを適用します。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_11.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=3e9ea0e42be919c436d5e589225f40bb" alt="ステップ 11" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_11.webp" />

    `Event Patterns` を選択してトレースにイベントクラスタリングを適用すると、`payment` サービスの cache の問題をすぐに確認できます。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_12.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=0e89b04d68b5e4a039a0abc45be9ccb6" alt="ステップ 12" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_12.webp" />
  </Step>

  <Step title="Explore でトレースのインフラストラクチャを確認する" id="explore-infrastructure-for-a-trace">
    `Results table` をクリックして結果ビューに切り替え、`StatusCode` フィルターと `Error` 値でエラーに絞り込みます。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_13.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=817a9b5fb283fcf91470e5348054c0b5" alt="ステップ 13" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_13.webp" />

    `Error: Visa cache full: cannot add new item.` のエラーを 1 つ選択し、`Infrastructure` タブに切り替えて期間を `1d` に広げます。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_14.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=8f5b2b1fc31c200afd562ba4b3660fde" alt="ステップ 14" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_14.webp" />

    トレースとメトリクスを相関させると、`payment` サービスでメモリと CPU が増加したあと、`0` まで低下していることがわかります (これはポッドの再起動によるものと考えられます) 。このことから、cache の問題がリソース問題を引き起こした可能性が示唆されます。その結果、支払い完了時間にも影響が出ていると考えられます。
  </Step>

  <Step title="より迅速な原因究明のためのイベントデルタ" id="event-deltas-for-faster-resolution">
    イベントデルタは、パフォーマンスやエラー率の変化を特定のデータの部分集合に関連付けることで異常を浮かび上がらせ、根本原因をすばやく特定しやすくします。

    `payment` サービスに cache の問題があり、その結果リソース消費が増加していることは分かっていますが、根本原因はまだ完全には特定できていません。

    結果テーブルビューに戻り、エラーが含まれる時間範囲を選択してデータを絞り込みます。エラーより前の数時間分と、可能であれば後の時間帯も選択してください (問題がまだ発生している可能性があります) 。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_15.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=0790c7966e3f9af2efb7c733c46f88cb" alt="Step 15" size="lg" width="2559" height="1240" data-path="images/use-cases/observability/hyperdx-demo/step_15.webp" />

    errors フィルターを削除し、左側の `Analysis Mode` メニューから `Event Deltas` を選択します。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_16.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=e8c8231f259ead8df3f824aab21eea5e" alt="Step 16" size="lg" width="2560" height="1097" data-path="images/use-cases/observability/hyperdx-demo/step_16.webp" />

    上部のパネルには所要時間の分布が表示され、色はイベント密度 (スパン数) を示します。主な集中領域の外側にあるイベントの部分集合は、通常、調査する価値があります。

    `1ms` を超える継続時間のイベントを選択し、`Filter by selection` フィルターを適用すると、"normal" なイベントと、継続時間が約 0ms のスパンが高密度に集まったグループとの差異を分析できます。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_17.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=9b80c09839a0ad955a882f355812ed1c" alt="Step 17" size="lg" width="2558" height="1288" data-path="images/use-cases/observability/hyperdx-demo/step_17.webp" />

    このデータの部分集合に対して分析を行うと、選択範囲外の "background" スパンの大半が Visa トランザクションであり、cache error による 0ms のレスポンスに関連していることが分かります。
  </Step>

  <Step title="チャートでより詳しく把握する" id="using-charts-for-more-context">
    ClickStack では、ログ、トレース、メトリクス内の任意の数値をチャート化し、より詳しいコンテキストを把握できます。

    ここまでで、次のことが分かっています。

    * 問題は payment service にある
    * cache がいっぱいになっている
    * その結果、リソース消費量が増加した
    * この問題により Visa の支払いは完了できなくなった、あるいは少なくとも完了までに非常に長い時間がかかるようになった。

    <br />

    左側のメニューから `Chart Explorer` を選択します。支払い完了までにかかる時間をチャート化するため、以下の値を設定します。

    * `Data Source`: `Traces`
    * `Metric`: `Maximum`
    * `SQL Column`: `Duration`
    * `Where`: `ServiceName: payment`
    * `Timespan`: `Last 1 day`

    <br />

    `▶️` をクリックすると、支払いのパフォーマンスが時間の経過とともにどのように低下したかを確認できます。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_18.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=20c9082fb16f347cbba6bfbc7769b350" alt="ステップ 18" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_18.webp" />

    `Group By` を `SpanAttributes['app.payment.card_type']` に設定すると (オートコンプリートを使うには `card` とだけ入力します) 、Mastercard と比べて Visa トランザクションでサービスのパフォーマンスがどのように低下したかを確認できます。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_19.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=f45208fc8ff343b721342490c8324b27" alt="ステップ 19" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_19.webp" />

    なお、エラーが発生すると、レスポンスは `0s` で返るようになります。
  </Step>

  <Step title="メトリクスの確認に関する補足情報" id="exploring-metrics-for-more-context">
    最後に、cache サイズをメトリクスとしてプロットし、時間の経過に伴ってどのように推移したかを確認して、より多くのコンテキストを得ましょう。

    次の値を入力します:

    * `Data Source`: `Metrics`
    * `Metric`: `Maximum`
    * `SQL Column`: `visa_validation_cache.size (gauge)` (`cache` と入力するだけでオートコンプリートされます)
    * `Where`: `ServiceName: payment`
    * `Group By`: `<empty>`

    cache サイズは、4〜5時間かけて増加し (おそらくソフトウェアのデプロイメント後) 、最終的に最大サイズ `100,000` に達したことがわかります。`Sample Matched Events` からは、cache がこの上限に達したタイミングとエラーが相関していること、またその後はサイズが `0` と記録され、レスポンスも `0s` で返されるようになっていることがわかります。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_20.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=b9505dd5d0103e9881bfd4405c80abf5" alt="Step 20" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_20.webp" />

    要約すると、logs、traces、そして最後にメトリクスを調査することで、次のことがわかりました:

    * 問題は payment service にあります
    * おそらくデプロイメントに伴うサービス動作の変更により、4〜5時間にわたって visa cache が徐々に増加し、最大サイズ `100,000` に達しました
    * その結果、cache のサイズ増大に伴って consumption も増加しました。おそらく実装上の問題が原因です
    * cache が増大するにつれて、Visa 決済のパフォーマンスは低下しました
    * 最大サイズに達すると、cache は決済を拒否し、自身のサイズを `0` と報告しました。
  </Step>

  <Step title="セッションの使用" id="using-sessions">
    セッションを使うとユーザー体験を再生でき、ユーザーの視点から `error` がどのように発生したかを視覚的に確認できます。通常、根本原因の特定に使われることはあまりありませんが、カスタマーサポートに報告された問題の確認には有用で、より詳しい調査の出発点にもなります。

    HyperDX では、セッションはトレースやログに関連付けられており、根本原因まで含めて全体像を把握できます。

    たとえば、サポートチームから支払いに問題が発生したユーザーのメールアドレス `Ronny.Windler@gmail.com` が共有された場合、ログやトレースを直接検索するよりも、まずそのユーザーのセッションから確認するほうが効果的なことがよくあります。

    左側のメニューから `Client Sessions` タブを開き、データソースが `Sessions`、時間範囲が `Last 1 day` に設定されていることを確認します。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_21.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=5900432299756000fc1b28f5215edaad" alt="Step 21" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_21.webp" />

    `SpanAttributes.userEmail: Ronny.Windler` を検索して、対象の顧客のセッションを見つけます。セッションを選択すると、左側にその顧客のセッションに対応するブラウザーイベントと関連するスパンが表示され、右側にはユーザーのブラウザー操作が再現されます。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_22.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=eb519943673b654f07010094fc9ea67d" alt="Step 22" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_22.webp" />
  </Step>

  <Step title="セッションのリプレイ" id="replaying-sessions">
    ▶️ ボタンを押すと、セッションを再生できます。`Highlighted` と `All Events` を切り替えることで、span の粒度を変更でき、前者では主要なイベントとエラーが強調表示されます。

    span の一番下までスクロールすると、`/api/checkout` に関連する `500` エラーを確認できます。この特定の span の ▶️ ボタンを選択すると、再生位置がセッション内のこの時点に移動するため、顧客の体験を確認できます。支払いは単に機能していないように見え、エラーも表示されていません。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_23.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=d8c8c1176ed6cc2153ab7c64f46a05d3" alt="ステップ 23" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_23.webp" />

    span を選択すると、これが内部エラーによって発生したことを確認できます。`Trace` タブをクリックし、接続されている span をスクロールしていくことで、この顧客が実際に当社の cache の問題の影響を受けていたことを確認できます。

    <Image img="https://mintcdn.com/private-7c7dfe99/xE8TEsdF6028Tf3x/images/use-cases/observability/hyperdx-demo/step_24.webp?fit=max&auto=format&n=xE8TEsdF6028Tf3x&q=85&s=7b2ab8374676b7850f65ed49c71a844b" alt="ステップ 24" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_24.webp" />
  </Step>
</Steps>
