メインコンテンツへスキップ

Splunk Lantern

アプリケーション問題のトラブルシューティング

これで、メトリクス、ログ、およびトレースが用意できました Splunk Observability Cloud では、アプリケーションの問題をトラブルシューティングする方法を見てみましょう。そのために、この記事では次の 3 つのプロセスを紹介します。

この記事では、Splunk Cloud Platform からにログを送信するように Splunk ログオブザーバーコネクトが設定されていることを前提としています。 Splunk Observability Cloud 。インテグレーションをまだ設定していない場合は、以下の手順に従ってください。 この記事で まず。

機能フラグを有効にしてエラーを生成する

  1. まず、次のコマンドを実行して、ローカルマシンで機能フラグサービスエンドポイントを使用できるようにします。
    kubectl port-forward svc/opentelemetry-demo-frontendproxy 8080:8080 -n otel-demo
    
  2. その後、ブラウザで次の URL に移動して機能フラグサービスに接続できます。 http://localhost:8080/feature/
    clipboard_ea5072d4ef13957b95d990a54704fad45.png
  3. 次に、両方を有効にしましょう productCatalogFailureadServiceFailure 機能フラグ。
    clipboard_eef4ceec546f86dee35d44d119471877e.png clipboard_e03cee2e4a1da7ce5c86424818be9160a.png

最終結果は次のようになり、[有効] が [オン] に設定されているはずです。 true 関心のある機能フラグについて。

clipboard_ece9f4b6609c7dd0f8a1d403fb193f76b.png

トレースとログを使用してアプリケーションエラーを調査

この機能フラグを有効にしたので、デモアプリケーションで広告サービスにエラーが発生していることがわかりました。これらのエラーの原因を調べるには、まず Trace Analyzer を使用して、エラーのある広告サービスに関連するトレースを見つけましょう。

clipboard_e1f4574471b3aaa5702d73c819049559e.png

トレース ID をクリックしてトレースを詳しく見てみましょう。トレースのウォーターフォールビューには、どのコンポーネントが最も時間がかかっているかがわかります。フロントエンドサービスが adservice を呼び出すときにエラーが発生することがわかります。スパンをクリックすると詳細が表示されます。トレースの一番下には、この特定のトレースに関連するログイベントを見つけるためのボタンがあります。

clipboard_e6667ec2b98603d5baaccade4d52d7474.png

ボタンをクリックすると Log Observer に移動します。ログオブザーバーは、対象の trace_id であらかじめフィルタリングされています。

clipboard_e43c7d8e2fddf89006f8d2c30087fdfa3.png

ログイベントを選択して詳細を確認できます。ログイベントの詳細には、GetAds がステータスコード「RESOURCE_EXHAUSTED」で失敗したことが示されています。

clipboard_e58de1d215cd91ae127fa57faf75e0884.png

フィールドのリストをさらに下にスクロールすると、trace_id、span_id、trace_flags 属性がこのログイベントに含まれていたことがわかります。これらの属性があると、 Splunk Observability Cloud トレースとログを関連付けることができます。

clipboard_e47886793c525bb7a1e5ff294834bf69f.png

関連コンテンツを使用してログ、トレース、インフラストラクチャデータ間を移動する

最初のトラブルシューティングシナリオはトレースを見ることから始まりましたが、ログを見ることからトラブルシューティングを始めることもできました。たとえば、Splunk Log Observer を使用して、レコメンデーションサービスに関連するすべてのログイベントを検索してみましょう。

clipboard_edee17ffc8ef8e5b7ac62a38490526976.png

ログエントリの 1 つをクリックすると、詳細が表示されます。

clipboard_e6d914e57e1e2061ed6e4c93ce55ba908.png

画面の下部には、次の場所に移動する3つのボタンがあります。 [関連コンテンツ] 。具体的には、ボタンは次のリンク先にあります。

  • レコメンデーションサービスのサービスマップ。
  • この特定のログエントリに関連するトレース。
  • このレコメンデーションサービスのインスタンスが実行される Kubernetes ポッド。

最初のボタンをクリックすると、レコメンデーションサービスのサービスマップに移動します。このマップには、画面の下部に独自の関連コンテンツが表示されます。

clipboard_e23e891c40093abd3c4e6cf875344621f.png

メトリクス、ログ、およびトレースデータがに流れる場合 Splunk Observability Cloud では、関連コンテンツバーを活用して、あるビューから別のビューにシームレスに移動できます。あるシグナルから別のシグナルに移動するときにコンテキストを維持することで、問題のトラブルシューティングをより迅速に行うことができます。

クリーンアップ

必要に応じて、次のコマンドを実行してアプリケーションデプロイメントをクリーンアップできます。

kubectl delete --namespace otel-demo -f ./splunk/opentelemetry-demo.yaml
helm uninstall <helm release name>

サマリー

この記事では、ログ、トレース、メトリクスのデータがどのように相関しているかを説明しました。 Splunk Observability Cloud アプリケーションの問題のトラブルシューティングを迅速に行うために使用できます。使用に関するより役立つアドバイスを探しています Splunk Observability Cloud ?当社をすべて見る 製品に関するヒント

Splunk OnDemand Services: これらのクレジットベースのサービスを利用すると、事前定義されたカタログからさまざまな技術サービスを受けられる Splunk テクニカルコンサルタントに直接アクセスできます。ほとんどのお客様が オンデマンドサービス 彼らによると ライセンスサポートプラン 。ODSチームに問い合わせてください ondemand@splunk.com サポートが必要な場合。

  • によって書かれました Derek Mitchell
  • グローバル・オブザーバビリティ・スペシャリスト Splunk