次の方法で共有


Invoke-AzOperationalInsightsQuery

指定したパラメーターに基づいて検索結果を返します。

構文

Invoke-AzOperationalInsightsQuery
      -WorkspaceId <String>
      -Query <String>
      [-Timespan <TimeSpan>]
      [-Wait <Int32>]
      [-IncludeRender]
      [-IncludeStatistics]
      [-AsJob]
      [-DefaultProfile <IAzureContextContainer>]
      [<CommonParameters>]
Invoke-AzOperationalInsightsQuery
      -Workspace <PSWorkspace>
      -Query <String>
      [-Timespan <TimeSpan>]
      [-Wait <Int32>]
      [-IncludeRender]
      [-IncludeStatistics]
      [-AsJob]
      [-DefaultProfile <IAzureContextContainer>]
      [<CommonParameters>]

説明

Invoke-AzOperationalInsightsQuery コマンドレットは、指定されたパラメーターに基づいて検索結果を返します。 検索の状態には、返されたオブジェクトの Metadata プロパティでアクセスできます。 状態が [保留中] の場合、検索は完了せず、結果はアーカイブから取得されます。 検索の結果は、返されたオブジェクトの Value プロパティから取得できます。 一般的なクエリ制限の詳細については、 https://learn.microsoft.com/azure/azure-monitor/service-limits#log-queries-and-languageを参照してください。

注: "The request was canceled due to the configured HttpClient.Timeout of 100 seconds elapsing"(HttpClient.Timeout of 100 seconds elapsing) というエラーが発生した場合は、 -Wait を大きな値に設定してみてください。

例 1: クエリを使用して検索結果を取得する

$query = "union * | take 10"
$queryResults = Invoke-AzOperationalInsightsQuery -WorkspaceId "63613592-b6f7-4c3d-a390-22ba13102111" -Query $query
$queryResults.Results

呼び出されると、$queryResults.Results には、クエリから得られるすべての行が含まれます。

例 2: $resultsを変換します。配列に対する結果 IEnumerable

$query = "union * | take 10"
$queryResults = Invoke-AzOperationalInsightsQuery -WorkspaceId "63613592-b6f7-4c3d-a390-22ba13102111" -Query $query
$resultsArray = [System.Linq.Enumerable]::ToArray($queryResults.Results)

クエリによっては、非常に大きなデータ セットが返される場合があります。 このため、このコマンドレットの既定の動作では、メモリ コストを削減するために IEnumerable を返します。 結果の配列を作成する場合は、LINQ Enumerable.ToArray() 拡張メソッドを使用して、IEnumerable を配列に変換できます。

例 3: 特定の期間のクエリを使用して検索結果を取得する

$query = "union * | take 10"
$queryResults = Invoke-AzOperationalInsightsQuery -WorkspaceId "63613592-b6f7-4c3d-a390-22ba13102111" -Query $query -Timespan (New-TimeSpan -Hours 24)
$queryResults.Results

このクエリの結果は、過去 24 時間に制限されます。

例 4: クエリ結果にレンダリングと統計を含める

$query = "union * | take 10"
$queryResults = Invoke-AzOperationalInsightsQuery -WorkspaceId "63613592-b6f7-4c3d-a390-22ba13102111" -Query $query -IncludeRender -IncludeStatistics
$queryResults.Results

$queryResults.Render

$queryResults.Statistics

パラメーター

-AsJob

バックグラウンドでコマンドレットを実行する

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-DefaultProfile

Azure との通信に使用される資格情報、アカウント、テナント、サブスクリプション。

型:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-IncludeRender

指定した場合、メトリック クエリのレンダリング情報が応答に含まれます。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-IncludeStatistics

指定した場合、クエリ統計が応答に含まれます。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Query

実行するクエリ。

型:String
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Timespan

クエリをバインドする期間。

型:Nullable<T>[TimeSpan]
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Wait

サーバーがクエリの処理に費やす時間の上限を設定します。 https://learn.microsoft.com/azure/azure-monitor/logs/api/timeouts を参照

型:Nullable<T>[Int32]
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Workspace

ワークスペース

型:PSWorkspace
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-WorkspaceId

ワークスペース ID。

型:String
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

PSWorkspace

出力

PSQueryResponse