ClickStack - サンプルログ、トレース、およびメトリクス
以下の例は、オールインワンイメージのインストラクションを使用してClickStackを開始し、ローカルClickHouseインスタンスまたはClickHouse Cloudインスタンスに接続したことを前提としています。
このサンプルデータセットは、HyperDXをClickHouse Cloudで使用する場合にも利用できます。流れに若干の調整が必要ですが記載されています。ClickHouse CloudでHyperDXを使用する場合、ユーザーはこのデプロイメントモデルのための始め方ガイドで説明されているように、ローカルでOpen Telemetryコレクターを実行する必要があります。
HyperDX UIに移動する
ローカルにデプロイしている場合は、http://localhost:8080にアクセスしてHyperDX UIを開きます。ClickHouse CloudでHyperDXを使用している場合は、左のメニューからサービスとHyperDXを選択します。

サンプルデータをダウンロードする
UIにサンプルデータを表示するために、以下のファイルをダウンロードします:
このファイルには、私たちの公開されたOpenTelemetryデモからの例示的なログ、メトリクス、トレースが含まれています。これは、マイクロサービスを持つシンプルなeコマースストアです。このファイルをお好みのディレクトリにコピーしてください。
サンプルデータをロードする
このデータをロードするために、展開したOpenTelemetry (OTel) コレクターのHTTPエンドポイントに送信します。
まず、上記でコピーしたAPIキーをエクスポートします。
ClickHouse CloudでHyperDXを使用している場合、このステップは必要ありません。そこでは現在、取り込みキーのサポートがありません。
次のコマンドを実行してデータをOTelコレクターに送信します:
これにより、OTLPログ、トレース、およびメトリックソースがOTelコレクターにデータを送信することをシミュレートします。製品環境では、これらのソースは言語クライアントまたは他のOTelコレクターである可能性があります。
サーチビューに戻ると、データのロードが始まっていることが確認できるはずです(データが表示されない場合は、時間枠を直近1時間に調整してください)。

データのロードには数分かかりますので、次のステップに進む前にロードが完了するのを待ってください。
セッションを探る
ユーザーが商品購入時に問題を抱えているとの報告があるとしましょう。私たちはHyperDXのセッションリプレイ機能を使用して、彼らの体験を確認できます。
左のメニューからクライアントセッションを選択します。

このビューでは、当社のeコマースストアのフロントエンドセッションを確認できます。ユーザーがチェックアウトし、購入を完了しようとするまで、セッションは匿名のままです。
メールアドレスを含むセッションの中には、取引の失敗の報告を確認しかねない関連エラーが発生しているものがあります。
失敗と関連するメールを選択したトレースを選ぶと、ユーザーのセッションを再生し、問題を確認することができます。再生ボタンを押してセッションを視聴しましょう。

再生では、ユーザーがサイトを巡回し、カートにアイテムを追加する様子が表示されます。支払いを完了しようとするセッションの後半にスキップしても構いません。
エラーは赤色でタイムラインに注釈が付けられています。
ユーザーは、明らかなエラーもなく、注文を出すことができませんでした。左パネルの下部にスクロールして、ユーザーのブラウザからのネットワークおよびコンソールイベントが含まれている部分を確認してください。/api/checkoutの呼び出し時に500エラーが発生したことがわかります。

この500エラーを選択します。概要およびカラム値は、問題の原因を示すものではなく、エラーが予期しないものであり、内部エラーを引き起こす可能性があることのみを示しています。
トレースを探る
トレースタブに移動して、全体の分散トレースを確認します。

トレースを下にスクロールして、エラーの発生源であるcheckoutサービススパンを確認します。Paymentサービススパンを選択します。

カラム値タブを選択し、下にスクロールします。ここでは、キャッシュが満杯であることに関連する問題が示されています。

上にスクロールしてトレースに戻ると、前回の設定のおかげでスパンに関連付けられたログが確認できます。これらはさらなる文脈を提供します。

キャッシュが決済サービスで満杯になっていることが確認できており、それが決済の完了を妨げています。
メトリクスをチャート表示する
コード内に明らかなエラーが導入されていることは間違いありませんが、メトリクスを使用してキャッシュサイズを確認できます。チャートエクスプローラービューに移動します。
データソースとしてメトリクスを選択します。visa_validation_cache.size (Gauge)の最大値をプロットするためにチャートビルダーを完成させ、再生ボタンを押します。キャッシュは明らかに最大サイズに達する前に増加しており、その後エラーが生成されました。


