- 重要な情報
- はじめに
- 用語集
- ガイド
- エージェント
- インテグレーション
- OpenTelemetry
- 開発者
- API
- CoScreen
- アプリ内
- Service Management
- インフラストラクチャー
- アプリケーションパフォーマンス
- 継続的インテグレーション
- ログ管理
- セキュリティ
- UX モニタリング
- 管理
ダッシュボードは、複数のソースからデータを収集し、そのデータを視覚化として表示します。
ダッシュボードは、モニター通知にアタッチしたり、スクリーンボードとして使用して主要な技術的またはビジネス指標を観察したり、ランブックで参照して追加のコンテキストを提供することができます。ダッシュボードでは、プラットフォームの現在の状態のスナップショットだけでなく、インタラクションも確認できるため、問題を先取りして、専門ページでより深く分析することができます。
以下のビデオは、Web アプリケーションの概要ダッシュボードを見るユーザーを想定しています。ユーザーは、技術的なメトリクスでスパイクを特定し、詳細を確認するためにズームインし、根本的な原因をチェックするために基礎となるホストダッシュボードにアクセスします。
このガイドでは、ダッシュボードにおけるコンテキストリンクを紹介し、以下の内容について説明します。
コンテキストリンクは、ダッシュボードウィジェットと Datadog の他のページ、およびワークフローに統合したサードパーティアプリケーションとの橋渡しをします。
ダッシュボードの編集権限を持つユーザーは、リンク一覧でアクセスできるリンクを構成することができます。
デフォルトでは、ウィジェットメニューには、ホスト、トレース、ログへのリンクと、ウィジェットのデータソースに対応するリンクが表示されます。たとえば、ウィジェットが RUM データを使用している場合、メニューには RUM エクスプローラーへのリンクが表示されます。ドロップダウンメニューの他のリンクを表示するには、More Related Data Actions をクリックします。
このウィジェットには、以下のページへのリンクが含まれています。
リンク | 説明 |
---|---|
ホスト | シリーズが複数のホストで構成されている場合、ホストマップにリンクします。シリーズが 1 つのホストで構成されている場合、ホストダッシュボードにリンクします。 |
コンテナ | ライブコンテナページにリンクします。 |
プロセス | ライブプロセスページにリンクします。 |
APM トレース | トレースエクスプローラーにリンクする基礎となるトレースを表示するサイドパネルを開きます。 |
RUM イベント | RUM エクスプローラーにリンクします。 |
プロファイル | APM プロファイルエクスプローラーにリンクします。 |
ログ管理 | ログエクスプローラーにリンクする基礎となるログを表示するサイドパネルを開きます。 |
該当する場合、コンテキストリンクは以下を埋め込みます。
一般的なウィジェットの場合、編集モードに入り、Context Links セクションにアクセスします。独自のコンテキストリンクを作成したり、デフォルトのリンクをオーバーライドしたり、リンクを表示または非表示にすることができます。
カスタムリンクを定義したり、デフォルトリンクをオーバーライドするには、Label フィールドにリンク名を、URL フィールドにリンクパスを指定します。Key-value ヘルパーを使用するには、+ Add URL Parameter をクリックします。
コンテキストリンクで利用可能な変数タイプは以下の通りです。
{{timestamp_start}}
と {{timestamp_end}}
。これらの変数は、ウィジェットの時間範囲に対応します。{@MerchantTier}
と {@MerchantTier.value}}
)。これらの変数は、グループ化されたクエリを持つウィジェットのためのもので、ユーザーがクリックした特定のグループを識別します。{$env}}
と {$env.value}}
)。これらの変数は、ユーザーがクリックしたときに、テンプレート変数に使用される現在の値を識別します。{{tags}}
、上記のすべての変数のデフォルトの組み合わせです。{{something}}
と {{something.value}}
のどちらかを選ばなければならないとき:
{{something}}
は、そのキーにプレフィックスを付けた値を返します。例えば、env:prod
です。{{something.value}}
は生の値を返します。例えば、prod
です。この例では、View in Acme をクリックすると、リンク先がhttps://prod.acme.io/search?what=basic&when=1643021787564
になります。
コンテキストリンク:
{{env.value}}
を prod
に置き換えます{{@MerchantTier.value}}
を basic
に置き換えます{{timestamp_end}}
を 1643021787564
に置き換えます。多種多様なパラメーターをエンコードする複雑なコンテキストリンクの場合、URL 全体を URL フィールドにコピーアンドペーストして構成をブートストラップし、そこから変数を作り直した方が便利な場合があります。
Datadog は、コンテキストリンクの URL エンコーディングを処理します。
上記の例では、クエリパラメーターに status:error source:nginx {{@shopist.webstore.merchant.tier}}
を指定してリンクを表示しています。ここで、{{@shopist.webstore.merchant.tier}}
は @shopist.webstore.merchant.tier:basic
として解釈されます。そして、完全なクエリパラメーターは &query=status%3Aerror%20source%3Anginx%20%40shopist.webstore.merchant.tier%3Abasic
に変換されます。
このセクションでは、コンテキストリンクを活用して、ダッシュボードをワークフローに統合する方法を示す例を紹介します。
次の例では、ダッシュボード内のユーザーから、対応する Zendesk ユーザーページへのリンクを作成する方法を説明します。
Datadog を使用して、マーチャントサイトを監視しています。カスタマーサポートチームは、フロントエンドとセキュリティチームが設定したダッシュボードを使用して、最も関与している顧客や問題のある経験を持つ顧客を積極的に特定し、場合によっては彼らに連絡することができます。
このトラブルシューティングのワークフローを加速するために、カスタマーサポートチームは、ダッシュボードとサポートソリューション (例: Zendesk) の間の直接接続を希望しています。
Datadog でプラットフォーム全体のログに記録されたユーザーを追跡する主要な ID は、いくつかのダッシュボードウィジェットに表示されるファセットであるユーザーのメールアドレスです。
ユーザーを検索するための典型的な Zendesk のリンクは https://acme.zendesk.com/agent/search/1?type=user&q=email%3Ashane%40doe.com
で、ユーザーのメールアドレスが検索パラメーターになります。
URL に変数を追加すると、テンプレートリンクが https://acme.zendesk.com/agent/search/1?type=user&q=email:{{@usr.email.value}}
になります。
カスタマーサポートチームのダッシュボードウィジェットには、適切なコンテキストを持つカスタマーサポートプラットフォームに移動するためのコンテキストリンクが含まれています。
Zendesk User Page のリンクをクリックすると、Zendesk のこのユーザーのページが表示されます。
次の例では、ダッシュボードウィジェットのホストから、AWS コンソールの対応する AWS EC2 インスタンスページへのリンクを作成する方法を説明します。
プラットフォームは AWS EC2 インスタンスでホストされており、プラットフォームのアップスケールとダウンスケールの手順は、ほとんど手作業です。
Datadog のダッシュボードには、インフラストラクチャーの主要なヘルスメトリクスが集約されています。
この運用ワークフローを加速するために、このダッシュボードと AWS コンソールを直接接続したいと考えます。例えば、t2.micro
から t2.large
にアップグレードするためです。
典型的な AWS EC2 インスタンスの概要リンクは https://eu-west-3.console.aws.amazon.com/ec2/v2/home?region=eu-west-3#InstanceDetails:instanceId=i-04b737b9f8bf94a94
です。
eu-west-3
: サブドメインと URL のパラメーターとして表示される、データセンターのリージョン。i-04b737b9f8bf94a94
: ハッシュパラメーターとして表示されるホスト ID。プラットフォームが 1 つのリージョンでしか動作していない場合は、コンテキストリンクのテンプレートにホスト ID を注入して、https://eu-west-3.console.aws.amazon.com/ec2/v2/home?region=eu-west-3#InstanceDetails:instanceId={{host.value}}
となるようにします。
プラットフォームが複数のリージョンで動作している場合、ウィジェットの構成は以下に依存します。
https://{{region.value}}.console.aws.amazon.com/ec2/v2/home?region={{region.value}}#InstanceDetails:instanceId={{host.value}}
で、ここで {{region.value}}
は query 変数です。https://{{$region.value}}.console.aws.amazon.com/ec2/v2/home?region={{$region.value}}#InstanceDetails:instanceId={{host.value}}
で、ここで {{region.value}}
は template 変数です。ダッシュボードウィジェットには、AWS コンソールの適切なホストに移動するためのリンクが含まれています。
AWS EC2 Instance Summary のリンクをクリックすると、AWS コンソールの AWS EC2 インスタンスページに移動します。
次の例では、ダッシュボードウィジェットの RUM イベントから対応するログへのリンクを作成する方法を説明します。
Datadog で企業サイトを監視しています。RUM でユーザーを把握し、Logs でより技術的な観点から API Gateways の監視を行うことがあります。
フロントエンドエンジニアは通常、RUM の概要情報を表示するダッシュボードを使用します。API Gateways チームは、ログエクスプローラーの保存ビューを維持します。これは、フロントエンドモニタリングチームが自分たちに関連する情報を監視するために信頼する、微調整された視点です。
このトラブルシューティングのワークフローを加速するために、フロントエンドのモニタリングチームは、ダッシュボードの現在のコンテキストで保存ビューにアクセスしたいと考えています。
保存ビューは、ログエクスプローラーのデフォルトのクエリ、視覚化、および構成オプションを定義します。典型的な保存ビューのリンクは https://app.datadoghq.com/logs?saved_view=305130
で、これは内部でログエクスプローラーの URL をエンコードしています。
保存ビューのショートリンクを追加して、結果のログエクスプローラー URL の任意のパラメーターをオーバーライドすることができます。
例えば、https://app.datadoghq.com/logs?saved_view=305130&query=@source:nginx @network.client.ip:123.123.12.1
とすると、保存ビューを最初に開いたようにログエクスプローラーに移動しますが、デフォルトのクエリフィルターは @source:nginx @network.client.ip:123.123.12.1
に置き換えられます。
ウェブサイトでのナビゲーションが匿名の場合、ユーザーを特定するために IP アドレスをプロキシとして使用する場合があります。
RUM イベントの @session.ip
属性とログの @network.client.ip
属性を識別したいと思います。この 2 つの属性は一般的に異なる意味を持つため、異なる名前を持っていますが、この認証ログのコンテキストでは、両方を識別することができます。
そのためには、@network.client.ip
を元にしたフィルターに @session.ip
を注入し、適切なフィルター @network.client.ip:{{@session.ip.value}}
を構築します。
セッション IP ごと、および特定の国ごとのインサイトを表示する RUM ダッシュボードウィジェットについては、このリンクの構成に従います。
API Gateways チームは、受信ログの最新の更新を考慮して保存ビューを更新するため、コンテキストリンクは最新の状態に保たれます。
IP アドレスをリマップすることで、RUM イベントと対応するログをつなぐコンテキストリンクが作成されます。
お役に立つドキュメント、リンクや記事: