다음을 통해 공유


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>]

Description

Invoke-AzOperationalInsightsQuery cmdlet은 지정된 매개 변수에 따라 검색 결과를 반환합니다. 반환된 개체의 메타데이터 속성에서 검색 상태에 액세스할 수 있습니다. 상태가 보류 중이면 검색이 완료되지 않고 결과가 보관 파일에서 생성됩니다. 반환된 개체의 Value 속성에서 검색 결과를 검색할 수 있습니다. 일반적인 쿼리 제한에 대한 자세한 내용은 https://learn.microsoft.com/azure/azure-monitor/service-limits#log-queries-and-language.

참고: '구성된 HttpClient.Timeout 100초 경과로 인해 요청이 취소되었습니다.' 오류가 발생하는 경우 -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)

일부 쿼리는 매우 큰 데이터 집합이 반환될 수 있습니다. 이 때문에 cmdlet의 기본 동작은 메모리 비용을 줄이기 위해 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

백그라운드에서 cmdlet 실행

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-DefaultProfile

Azure와의 통신에 사용되는 자격 증명, 계정, 테넌트 및 구독입니다.

형식:IAzureContextContainer
별칭:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-IncludeRender

지정된 경우 메트릭 쿼리에 대한 렌더링 정보가 응답에 포함됩니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-IncludeStatistics

지정된 경우 쿼리 통계가 응답에 포함됩니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Query

실행할 쿼리입니다.

형식:String
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Timespan

쿼리를 바인딩할 시간 범위입니다.

형식:Nullable<T>[TimeSpan]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Wait

서버에서 쿼리를 처리하는 데 소요되는 시간에 상한을 지정합니다. 참조: https://learn.microsoft.com/azure/azure-monitor/logs/api/timeouts

형식:Nullable<T>[Int32]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Workspace

작업 영역

형식:PSWorkspace
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-WorkspaceId

작업 영역 ID입니다.

형식:String
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:False
와일드카드 문자 허용:False

입력

출력