検索構文

検索構文

検索バー

すべての検索パラメーターはページの URL に含まれているため、ビューは非常に簡単に共有できます。

検索構文

クエリは条件演算子で構成されます。

条件には 2 種類あります。

複合クエリで複数の条件を組み合わせるには、以下のブール演算子のいずれかを使用します。

演算子 説明
AND : 両方の条件を含むイベントが選択されます (何も追加しなければ、AND がデフォルトで採用されます)。 authentication AND failure
OR : いずれかの条件を含むイベントが選択されます。 authentication OR password
- 排他: 後続の条件はイベントに含まれません。 authentication AND -password

ファセット検索

特定のファセットを検索するには、まずそれをファセットとして追加し、次に @ を追加してファセット検索を指定します。

たとえば、ファセット名が url で、url の値 www.datadoghq.com で絞り込む場合は、次のように入力します。

@url:www.datadoghq.com

タグ検索

トレースは、タグを生成するホストとインテグレーションからタグを引き継ぎます。これらも、ファセットとして検索で使用できます。

クエリ 一致
("env:prod" OR test) タグ #env:prod またはタグ #test を持つすべてのトレース
(service:srvA OR service:srvB) または (service:(srvA OR srvB)) タグ #service:srvA または #service:srvB を含むすべてのトレース。
("env:prod" AND -"version:beta") #env:prod を含み、#version:beta を含まないすべてのトレース

タグがタグのベストプラクティスに従わず、key:value 構文も使用していない場合は、次の検索クエリを使用します。

  • tags:<MY_TAG>

ワイルドカード

複数文字のワイルドカード検索を実行するには、* 記号を次のように使用します。

  • service:web* は、web で始まるサービスを持つすべてのトレースに一致します
  • @url:data* は、data で始まる url を持つすべてのトレースに一致します。

数値

<><=、または >= を使用して、数値属性の検索を実行します。たとえば、100ms を超える応答時間を持つすべてのトレースを取得するには、次のようにします。

@http.response_time:&gt;100

特定の範囲内にある数値属性を検索することもできます。たとえば、4xx エラーをすべて取得するには、次のようにします。

@http.status_code:[400 TO 499]

オートコンプリート

複雑なクエリを入力するのは面倒です。検索バーのオートコンプリート機能を使用すると、既存の値を使用してクエリを完成させることができます。

特殊文字のエスケープ

?><:="~/、および \ は特殊属性と見なされ、\ を使用してエスケープする必要があります。 たとえば、urluser=JaneDoe を含むトレースを検索するには、次の検索を入力する必要があります。

@url:*user\=JaneDoe*

同じロジックはトレース属性内のスペースにも適用する必要があります。トレース属性にスペースを含めることはお勧めしませんが、含まれている場合は、スペースをエスケープする必要があります。 属性の名前が user.first name の場合、スペースをエスケープしてこの属性で検索を実行します。

@user.first\ name:myvalue

検索の保存

同じビューを毎日作成するのは時間の無駄です。保存された検索には、検索クエリ、列、期間が含まれます。検索名やクエリにかかわらず、オートコンプリートの一致により、これは検索バーで利用できます。

保存された検索を削除するには、Trace search ドロップダウンの下にあるごみ箱のアイコンをクリックします。

タイムレンジ

タイムレンジを使用すると、特定の期間内のトレースを表示できます。タイムレンジをすばやく変更するには、プリセットされたレンジをドロップダウンから選択します(または、カスタムタイムフレームを入力します):

トレースストリーム

トレースストリームは、選択されたコンテキストに一致するトレースのリストです。コンテキストは、検索バーのフィルターとタイムレンジで定義されます。

完全なトレースの表示

トレースをクリックして、詳細を表示します。

リストにトレースの詳細を追加するには、Options ボタンをクリックして、表示するファセットを選択します。

オリジンリソースは、指定されたトレースのルートにあるリソースを表示するデフォルトの列です。オリジンサーバーまたはオリジンオペレーション名を追加するには、Options ボタンをクリックし @trace.origin.operation_name または @trace.origin.service を選択します。

複数行表示

トレースの表示行数を 1 行、3 行、10 行 から選択します。3 行と 10 行で表示すると、error.stack 属性に関する情報をより多く得ることができます。

  • 1 行表示の場合

  • 3 行表示の場合

  • 10 行表示の場合

ファセット

ファセットは、1 つの属性またはタグの個別値をすべて表示すると共に、示されたトレースの量などのいくつかの基本分析も提供します。また、データを絞り込むためのスイッチにもなります。

ファセットを使用すると、特定の属性に基づいてデータセットを絞り込んだり、データセットの切り口を変えることができます。ファセットには、ユーザーやサービスなどがあります。

定量 (メジャー)

必要に応じてメジャーを使用します。

  • 複数のトレースから値を集計する。たとえば、Cassandra の行数にメジャーを作成し、リクエストされたファイルサイズの合計ごとに最上位の参照元または P95 を表示します。
  • ショッピングカートの値が $1000 を超えるサービスの最もレイテンシーの高いものを数値的に計算します。
  • 連続する値をフィルタリングします。たとえば、ビデオストリームの各ペイロードチャンクのサイズ(バイト単位)。

タイプ

メジャーには、同等の機能のために、(長)整数またはダブル値が付属しています。

単位

メジャーは、クエリ時間と表示時間の桁数を処理するための単位(秒単位の時間またはバイト単位のサイズ)をサポートします。単位は、フィールドではなく、メジャー自体のプロパティです。たとえば、ナノ秒単位の duration メジャーを考えてみます。duration:1000 が 1000 ミリ秒を表す service:A からのスパンタグと、duration:500 が 500 マイクロ秒を表す service:B からの他のスパンタグがあるとします。 算術演算プロセッサーで流入するすべてのスパンタグの期間をナノ秒にスケーリングします。service:A のスパンタグには *1000000 乗数を使用し、service:B のスパンタグには *1000 乗数を使用します。 duration:>20ms(検索構文を参照)を使用して、両方のサービスから一度に一貫してスパンタグにクエリを実行し、最大 1 分の集計結果を確認します。

ファセットの作成

属性をファセットとして使用したり、検索で使用したりするには、属性をクリックしてファセットとして追加します。

これで、この属性の値がすべての新しいトレースに格納され、検索バーファセットパネル、およびトレースグラフクエリで使用できるようになります。

ファセットパネル

ファセットを使用し、トレースをフィルタリングします。検索バーと URL には、選択内容が自動的に反映されます。

Analytics の概要

Analytics を使用して、アプリケーション性能メトリクスや Indexed Span をタグで絞り込むことができます。これにより、サービスを流れるウェブリクエストを詳細に調べることができます。

Analytics は、15 分間 (ローリングウィンドウ) で収集されたデータを 100% 有するすべての APM サービスに対して自動的に有効化されます。カスタム Retention Filter およびレガシー版の App Analytics でインデックス化されたスパンは Analytics で 15 日間利用可能です。

データベースやキャッシュレイヤーなどのダウンストリームのサービスは、トレースを生成しないため利用可能なサービス一覧には含まれませんが、それらの情報は呼び出し側の上位レベルのサービスから取得されます。

Analytics クエリ

クエリを使用して、Analytics に表示させるデータを制御できます。

  1. 分析する Duration メトリクスまたは ファセットを選択します。Duration メトリクスを選択した場合は、集計関数を選択します。ファセットを選択した場合は、ユニーク数が表示されます。

  2. Duration メトリクスには集計関数を選択します。

  3. タグまたはファセットを使用して、分析を分割します。

  4. 選択したファセットに応じて、上位 (top) X 個と下位 (bottom) X 個のどちらの値を表示するかを選択します。

  5. 分析タイムステップを選択します。 グローバルタイムフレームを変更すると、使用可能なタイムステップ値のリストも変更されます。

可視化方法

分析セレクターを使用して、Analytics の可視化タイプを選択します。

Timeseries

選択したタイムフレーム内での Duration メトリクス(またはファセットのユニーク値数)の動きを可視化し、使用可能なファセットで分割します (オプション) 。

次の時系列 Analytics は、各サービスにおける pc995 分おきの継続時間の動きを示しています。

Toplist

継続時間(またはファセットのユニーク値数)に基づいて、ファセットの上位の値を可視化します。

以下の Analytics トップリストは、pc99サービス継続時間を上から示しています。

選択したメジャー (リストで選択した最初のメジャー) に基づいてファセットから上位の値を可視化し、この上位のリストに現れる要素に対して他のメジャーの値を表示します。検索クエリを更新したり、いずれかのディメンションに対応するログをドリルスルーすることができます。

  • 複数のディメンションがある場合、上位の値は最初のディメンションに基づき決定されます。その後最初のディメンション内の上位値内の 2 番めのディメンション、次に 2 番目のディメンション内の上位値内の 3 番めのディメンションに基づき決定されます。
  • メジャーが複数ある場合、最初のメジャーに応じて上位または下位リストが決定されます。
  • サブセット(上位または下位)のみが表示されるため、小計がグループ内の実際の合計値とは異なる場合があります。このディメンジョンに対する、値が null または空欄のイベントは、サブグループとして表示されません。

: 単一のメジャーと単一のディメンジョンに使用されるテーブルの可視化では表示の仕方が異なりますが、内容は上位リストと同じです。

次のテーブルログ分析は、スループットに基づいて、過去 15 分間の上位ステータスコードの動きをユニーククライアント IP の数と共に示しています。

関連トレース

グラフの一部を選択またはクリックすると、グラフをズームインしたり、選択範囲に対応するトレースのリストを表示したりすることができます。

エクスポート

Analyticsをエクスポート

注: Analytics は Indexed Span ベースでのみエクスポートできます。

ダッシュボード内のトレース

トレース検索から Analytics をエクスポートするか、ダッシュボードでメトリクスおよびログと共に直接構築します。

時系列ウィジェットに関する詳細

その他の参考資料