Azure AI 検索の監視データのリファレンス
この記事には、このサービスに関するすべての監視リファレンス情報が含まれています。
Azure AI Search 収集できるデータとその使用方法の詳細については Azure AI Search の監視に関するページを参照してください。
メトリック
このセクションには、このサービスに関して自動的に収集されるすべてのプラットフォーム メトリックが一覧表示されています。 これらのメトリックは、Azure Monitor でサポートされているすべてのプラットフォーム メトリックのグローバル リストにも含まれています。
メトリックのリテンション期間の詳細については、「Azure Monitor メトリックの概要」を参照してください。
Microsoft.Search/searchServices でサポートされているメトリック
次の表に、Microsoft.Search/searchServices リソースの種類で使用できるメトリックの一覧を示します。
- すべての列がすべてのテーブルに存在するわけではない場合があります。
- 一部の列がページの表示領域を超えている場合があります。 [テーブルの展開] を選択すると、使用可能なすべての列が表示されます。
テーブルの見出し
- カテゴリ - メトリック グループまたは分類。
- メトリック - Azure Portal に表示されるメトリックの表示名。
- REST API の名前 - REST API で参照されるメトリック名。
- 単位 - 測定単位。
- 集計 - 既定の集計の種類。 有効な値: 平均 (Avg)、最小 (Min)、最大 (Max)、合計 (Sum)、数。
- ディメンション - メトリックで使用できるディメンション。
- 時間グレイン - メトリックをサンプリングする間隔。 たとえば、
PT1M
は、メトリックを 1 分ごとに、PT30M
は 30 分ごとに、PT1H
は 1 時間ごとにサンプリングすることを示します。 - DS エクスポート - メトリックが診断設定を介して Azure Monitor ログにエクスポート可能かどうかを示します。 メトリックのエクスポートについては、「Azure Monitor で診断設定を作成する」を参照してください。
メトリック | REST API での名前 | 出荷単位 | 集計 | Dimensions | 期間粒度 | DS エクスポート |
---|---|---|---|---|---|---|
処理されたドキュメント数 処理されたドキュメント数 |
DocumentsProcessedCount |
カウント | 合計 (和)、カウント | DataSourceName 、 Failed 、 IndexerName 、 IndexName 、 SkillsetName |
PT1M | はい |
検索の待機時間 検索サービスの平均検索待機時間 |
SearchLatency |
Seconds | Average | <なし> | PT1M | はい |
1 秒あたりの検索クエリ数 検索サービスの 1 秒あたりの検索クエリ数 |
SearchQueriesPerSecond |
CountPerSecond | Average | <なし> | PT1M | はい |
スキル実行の呼び出し回数 スキルの実行数 |
SkillExecutionCount |
カウント | 合計 (和)、カウント | DataSourceName 、 Failed 、 IndexerName 、 SkillName 、 SkillsetName 、 SkillType |
PT1M | はい |
スロットルされた検索クエリの割合 検索サービスのスロットルされた検索クエリの割合 |
ThrottledSearchQueriesPercentage |
Percent | Average | <なし> | PT1M | はい |
1 秒あたりの検索クエリ数
このメトリックは、検索サービスの 1 秒あたりの検索クエリ数 (QPS) の平均を示します。 クエリはミリ秒単位で実行するのが一般的であるため、秒として測定されるクエリのみが QPS などのメトリックに表示されます。 最小値は、該当する 1 分間に登録された秒あたりの検索クエリ数のうち最小の値になります。 最大値は最大値です。 平均値は、1 分間にわたって集計されます。
集計の種類 | 説明 |
---|---|
Average | クエリの実行が行われた、1 分以内の平均秒数。 |
Count | 1 分の間隔内でログに生成されたメトリックの数。 |
最大値 | 1 分間に登録された、1 秒あたりの検索クエリの最大数。 |
最小 | 1 分間に登録された、1 秒あたりの検索クエリの最小数。 |
SUM | 1 分以内に実行されたすべてのクエリの合計。 |
たとえば、1 分間のうち、1 秒は非常に負荷が高く、続く 58 秒は平均的な負荷で、最後の 1 秒はクエリが 1 つだけというパターンがあるとします。この場合、最初の 1 秒の値が SearchQueriesPerSecond の最大値、最後の 1 秒の値が最小値となります。
別の例として、ノードが 100 メトリックを生成し、各メトリックの値が 40 である場合、"カウント" は 100、"合計" は 4,000、"平均" は 40、"最大" は 40 になります。
検索の待ち時間
検索の待ち時間は、クエリの完了にかかる時間を示します。
集計の種類 | Latency |
---|---|
Average | 平均クエリ期間 (ミリ秒単位)。 |
Count | 1 分の間隔内でログに生成されたメトリックの数。 |
最大値 | サンプル内で実行時間が最長のクエリ。 |
最小 | サンプル内で実行時間が最短のクエリ。 |
Total | 間隔 (1 分) 内に実行される、サンプル内のすべてのクエリの合計実行時間。 |
スロットルされた検索クエリの割合
このメトリックは、処理されるのではなく削除されるクエリを指します。 スロットリングは、実行中の要求の数が容量を超えると発生します。 レプリカがローテーションから外されたときまたはインデックス作成時に、スロットルされた要求が増加する場合があります。 クエリ要求もインデックス作成要求も、同じリソースのセットによって処理されます。
サービスは、リソース消費量に基づいて、要求を削除するかどうかを決定します。 メモリ、CPU、ディスク IO 全体で消費されるリソースの割合は、一定期間で平均化されます。 この割合がしきい値を超えると、インデックスに対するすべての要求は、要求の量が減少するまでスロットルされます。
クライアントに応じて、スロットルされた要求は次の方法で示されます。
- サービスはエラー
"You are sending too many requests. Please try again later."
を返します - サービスから、現在サービスが利用できないことを示す 503 エラー コードが返されます。
- ポータル (検索エクスプローラーなど) を使っている場合、クエリは通知なしで削除されるため、もう一度 [検索] を選ぶ必要があります。
スロットルされたクエリを確認するには、スロットルされた検索クエリ メトリックを使用します。 この記事で説明されているように、メトリックをポータルで調べるか、アラート メトリックを作成することができます。 サンプリング間隔内で削除されたクエリについては、"合計" を使って、実行されなかったクエリの割合を取得します。
集計の種類 | 調整 |
---|---|
Average | 間隔内で削除されたクエリの割合。 |
Count | 1 分の間隔内でログに生成されたメトリックの数。 |
最大値 | 間隔内で削除されたクエリの割合。 |
最小 | 間隔内で削除されたクエリの割合。 |
Total | 間隔内で削除されたクエリの割合。 |
Throttled Search Queries Percentage の場合は、最小値、最大値、平均値、および合計値はすべて同じ値になります。これは、スロットルされた検索クエリの割合であり、1 分間の検索クエリの合計数に基づきます。
メトリック ディメンション
メトリック ディメンションについては、「多次元メトリック」を参照してください。
Azure AI Search には、実行されたドキュメントまたはスキルの数をキャプチャする次のメトリックに関連付けられたディメンションがあります。
メトリックの名前 | 説明 | Dimensions | ユースケースの例 |
---|---|---|---|
処理されたドキュメント数 | インデクサー処理されたドキュメントの数を表示します。 | データ ソース名、失敗、インデックス名、インデクサー名、スキルセット名 | スループットの大まかな尺度として参照できます (インデクサーによって時間の経過と伴って処理されるドキュメントの数) - 失敗したドキュメントを警告するための設定 |
スキル実行の呼び出し回数 | スキル呼び出しの数を表示します。 | データ ソース名、失敗、インデックス名、インデクサー名、スキル名、スキルの種類、スキルセット名 | スキル間の相対的な呼び出し数とスキル呼び出しの数をドキュメントの数と比較して、スキルが期待どおりに呼び出されるようにするための参照。 - 失敗したスキル呼び出しを警告するための設定 |
ディメンション名 | 説明 |
---|---|
DataSourceName | インデクサーの実行中に使用される名前付きデータ ソース接続。 有効な値は、サポートされているデータ ソースの種類のいずれかです。 |
Failed | インスタンスが失敗したかどうかを示します。 |
IndexerName | インデクサーの名前。 |
IndexName | インデックスの名前。 |
SkillsetName | インデクサーの実行中に使用されるスキルセットの名前。 |
SkillName | スキルセット内のスキルの名前。 |
SkillType | スキルの @odata.type。 |
リソース ログ
このセクションでは、このサービス用に収集できるリソース ログの種類を一覧表示します。 このセクションでは、Azure Monitor でサポートされているすべてのリソース ログ カテゴリの種類のリストからプルされます。
Microsoft.Search/searchServices でサポートされているリソース ログ
カテゴリ | カテゴリの表示名 | ログ テーブル | 基本ログ プランをサポート | インジェスト時間変換をサポート | クエリの例 | エクスポートするコスト |
---|---|---|---|---|---|---|
OperationLogs |
[操作ログ] | AzureDiagnostics 複数の Azure リソースからのログ。 |
いいえ | いいえ | いいえ |
Azure Monitor ログ テーブル
このセクションでは、Kusto クエリを使用した Log Analytics によるクエリに使用できる、このサービスに関連するすべての Azure Monitor ログ テーブルを一覧表示します。 テーブルにはリソース ログ データが含まれており、収集されルーティングされる内容によっては、さらに多くのデータが含まれる場合があります。
検索サービス
Microsoft.Search/searchServices
テーブル | 説明 |
---|---|
AzureActivity | Azure アクティビティ ログのエントリは、コントロール プレーン操作に関する分析情報を提供します。 レプリカやパーティションの追加や削除など、コントロール プレーンで呼び出されるタスクは、"管理キーの取得" アクティビティを通じて表されます。 |
AzureDiagnostics | ログされたクエリとインデックス作成の操作。 Log Analytics の AzureDiagnostics テーブルに対するクエリには、共通プロパティ、 検索固有のプロパティ、スキーマリファレンスセクションに記載されている 検索固有の操作 含めることができます。 |
AzureMetrics | 正常性とパフォーマンスを測定する Azure AI Search によって出力されるメトリック データ。 |
リソース ログ テーブル
次の表に、Azure AI Search のリソース ログのプロパティを示します。 リソース ログは Azure Monitor ログまたは Azure Storage に収集されます。 Azure Monitor では、 Microsoft.Search
のリソース プロバイダー名の下にある AzureDiagnostics テーブルにログが収集されます。
Azure Storage のフィールドまたはプロパティ | Azure Monitor ログのプロパティ | 説明 |
---|---|---|
time | timestamp | 操作が発生した日時 (UTC)。 |
resourceId | Concat("/", "/subscriptions", SubscriptionId, "resourceGroups", ResourceGroupName, "providers/Microsoft.Search/searchServices", ServiceName) | ログが有効になっている Azure AI Search リソース。 |
category | "OperationLogs" | ログ カテゴリには、 Audit 、 Operational 、 Execution 、および Request が含まれます。 |
operationName | Name | 操作の名前。 操作名には、 Indexes.ListIndexStatsSummaries 、 Indexes.Get 、 Indexes.Stats 、 Indexers.List 、 Query.Search 、 Query.Suggest 、 Query.Lookup 、 Query.Autocomplete 、 CORS.Preflight 、 Indexes.Update 、 Indexes.Prototype 、 ServiceStats 、 DataSources.List 、 Indexers.Warmup を指定できます。 |
durationMS | DurationMilliseconds | 操作時間 (ミリ秒)。 |
operationVersion | ApiVersion | 要求で使用される API バージョン。 |
resultType | (失敗) ? "Failed" : "Success" | 応答の種類。 |
resultSignature | 状態 | 操作の HTTP 応答状態。 |
properties | プロパティ | このイベント カテゴリに関連する拡張プロパティ。 |
アクティビティ ログ
リンクされたテーブルには、このサービスのアクティビティ ログに記録できる操作が一覧表示されます。 これらの操作は、アクティビティ ログで使用可能なすべてのリソース プロバイダー操作のサブセットです。
アクティビティ ログ エントリのスキーマの詳細については、「アクティビティ ログのスキーマ」を参照してください。
次の表に、アクティビティ ログに記録できる Azure AI Search に関連する一般的な操作を示します。 すべての Microsoft.Search 操作の完全な一覧については、「 Microsoft.Search リソース プロバイダーの操作を参照してください。
操作 | 説明 |
---|---|
管理者キーの取得 | 管理者権限を必要とする操作は、"管理キーの取得" 操作としてログに記録されます。 |
クエリ キーの取得 | インデックスのドキュメント コレクションに対するすべての読み取り専用操作。 |
管理者キーを再生成する | プライマリまたはセカンダリの管理 API キーを再生成する要求。 |
共通エントリには、API キー ("管理者キーの取得" や "クエリ キーの取得" など、情報提供を目的とした一般的な通知) への参照が含まれています。 これらのアクティビティは、管理キー (オブジェクトの作成または削除) またはクエリ キーを使用して行われた要求を示しますが、要求自体は表示されません。 この粒度の情報については、リソース ログを構成する必要があります。
または、変更履歴を通じて分析情報を得られる場合もあります。 Azure portal で、アクティビティを選択して詳細ページを開き、基になる操作に関する情報の [履歴の変更] を選択します。
その他のスキーマ
このサービスでは、次のスキーマが使用されています。
クエリまたはカスタム レポートを作成する場合、Azure AI Search リソース ログを含むデータ構造は次のスキーマに準拠します。
Blob Storage に送信されるリソース ログの場合、各 BLOB には、ログ オブジェクトの配列が含まれる、レコードと呼ばれるルート オブジェクトが 1 つあります。 各 BLOB には、同じ時間帯に行われたすべての操作に関するレコードが含まれます。
リソース ログ スキーマ
Azure Monitor を通じて使用できるすべてのリソース ログは、共通の最上位レベルのスキーマを共有します。 Azure AI Search は、検索サービスに固有のプロパティ操作を補完します。
次の例は、共通プロパティ (TimeGenerated、Resource、Category など) と検索固有のプロパティ (OperationName と OperationVersion) を含むリソース ログを示しています。
名前 | Type | 説明と例 |
---|---|---|
TimeGenerated | 日時 | 操作のタイムスタンプ。 例: 2021-12-07T00:00:43.6872559Z |
リソース | String | リソースの ID 例: /subscriptions/<your-subscription-id>/resourceGroups/<your-resource-group-name>/providers/Microsoft.Search/searchServices/<your-search-service-name> |
カテゴリ | String | "OperationLogs"。 この値は定数です。 OperationLogs は、リソース ログに使用される唯一のカテゴリです。 |
OperationName | String | 操作の名前 (操作の完全な一覧 参照)。 たとえば Query.Search とします |
OperationVersion | String | 要求で使用される API バージョン。 例: 2024-07-01 |
ResultType | String | "Success"。 その他の有効値 Success または Failure |
ResultSignature | int | HTTP の結果コード。 例: 200 |
DurationMS | int | 操作の期間 (ミリ秒)。 |
プロパティ | オブジェクト | 操作固有データを含むオブジェクト。 次のプロパティ スキーマ テーブルを参照してください。 |
プロパティのスキーマ
次のプロパティは、Azure AI Search に固有のものです。
名前 | Type | 説明と例 |
---|---|---|
Description_s | String | 操作のエンドポイント。 例: GET /indexes('content')/docs |
Documents_d | int | 処理されたドキュメント数。 |
IndexName_s | String | 操作に関連付けられているインデックスの名前。 |
Query_s | String | 要求で使用されるクエリ パラメーター。 例: ?search=beach access&$count=true&api-version=2024-07-01 |
OperationName 値 (ログされた操作)
リソース ログには、次の操作が表示されます。
OperationName | 説明 |
---|---|
DataSources.* | インデクサー データ ソースに適用されます。 Create、Delete、Get、List を指定できます。 |
DebugSessions.* | デバッグ セッションに適用されます。 Create、Delete、Get、List、Start、Status を指定できます。 |
DebugSessions.DocumentStructure | エンリッチされたドキュメントがデバッグ セッションに読み込まれます。 |
DebugSessions.RetrieveIndexerExecutionHistoricalData | インデクサー実行の詳細の要求。 |
DebugSessions.RetrieveProjectedIndexerExecutionHistoricalData | ナレッジ ストアに投影されるエンリッチメントの実行履歴。 |
Indexers.* | インデクサーに適用されます。 Create、Delete、Get、List、Status を指定できます。 |
Indexes.* | 検索インデックスに適用されます。 Create、Delete、Get、List を指定できます。 |
indexes.Prototype | このインデックスは、データのインポート ウィザードによって作成されます。 |
Indexing.Index | この操作は、 Index Documents の呼び出しです。 |
Metadata.GetMetadata | 検索サービス システム データの要求。 |
Query.Autocomplete | インデックスに対するオートコンプリート クエリ。 クエリの種類と構成に関するページを参照してください。 |
Query.Lookup | インデックスに対する参照クエリ。 クエリの種類と構成に関するページを参照してください。 |
Query.Search | インデックスに対するフルテキスト検索要求。 クエリの種類と構成に関するページを参照してください。 |
Query.Suggest | インデックスに対する先行入力クエリ。 クエリの種類と構成に関するページを参照してください。 |
ServiceStats | この操作は、 Get Service Statistics を呼び出すルーチン呼び出しであり、読み込まれたり更新されたりしたときにポータルの概要ページを設定するために直接または暗黙的に呼び出されます。 |
Skillsets.* | スキルセットに適用されます。 Create、Delete、Get、List を指定できます。 |
関連するコンテンツ
- Azure AI Search の監視の説明については、 Monitor Azure AI Search を参照してください。
- Azure リソースの監視の詳細については、「Azure Monitor で Azure リソースを監視する」を参照してください。