Azure Monitor Log Analytics의 로그 쿼리 범위 및 시간 범위

Azure Portal의 Log Analytics에서 로그 쿼리를 실행하는 경우 쿼리에서 평가되는 데이터 집합은 선택한 범위 및 시간 범위에 따라 달라집니다. 이 문서에서는 범위 및 시간 범위와 요구 사항에 따라 각 범위를 설정하는 방법을 설명합니다. 또한 다양한 범위의 동작에 대해서도 설명합니다.

필수 사용 권한

예를 들어 Log Analytics 읽기 권한자 기본 제공 역할에서 제공하는 것처럼 쿼리하는 Log Analytics 작업 영역에 대한 Microsoft.OperationalInsights/workspaces/query/*/read 권한이 있어야 합니다.

쿼리 범위

쿼리 범위는 쿼리가 평가하는 레코드를 정의합니다. 이 정의는 일반적으로 단일 Log Analytics 작업 영역 또는 Application Insights 애플리케이션의 모든 레코드를 포함합니다. Log Analytics를 사용하면 모니터링되는 특정 Azure 리소스에 대한 범위를 설정할 수도 있습니다. 이렇게 하면 해당 리소스가 여러 작업 영역에 기록되더라도 리소스 소유자가 데이터에만 집중할 수 있습니다.

범위는 항상 Log Analytics 창의 왼쪽 위에 표시됩니다. 아이콘은 범위가 Log Analytics 작업 영역인지 아니면 Application Insights 애플리케이션인지를 나타냅니다. 다른 Azure 리소스를 나타내는 아이콘은 없습니다.

Screenshot of scope displayed in portal.

Log Analytics를 시작하는 데 사용하는 방법은 범위를 결정하며 경우에 따라 범위를 클릭하여 변경할 수 있습니다. 다음 표에는 사용되는 다양한 유형의 범위와 각각에 대한 다양한 세부 정보가 나와 있습니다.

Important

Application Insights에서 작업 영역 기반 애플리케이션을 사용하는 경우 해당 데이터는 다른 모든 로그 데이터가 있는 Log Analytics 작업 영역에 저장됩니다. 이전 버전과의 호환성을 위해 애플리케이션을 범위로 선택할 때 클래식 Application Insights 환경을 사용할 수 있습니다. Log Analytics 작업 영역에서 이 데이터를 보려면 범위를 작업 영역으로 설정합니다.

쿼리 범위 범위 내 레코드 선택하는 방법 범위 변경
Log Analytics 작업 영역 Log Analytics 작업 영역의 모든 레코드입니다. Azure Monitor 메뉴 또는 Log Analytics 작업 영역 메뉴에서 로그를 선택합니다. 범위를 다른 리소스 종류로 변경할 수 있습니다.
Application Insights 애플리케이션 Application Insights 애플리케이션의 모든 레코드입니다. 애플리케이션의 Application Insights 메뉴에서 로그를 선택합니다. 다른 Application Insights 애플리케이션으로만 범위를 변경할 수 있습니다.
Resource group 리소스 그룹의 모든 리소스에서 만든 레코드입니다. 여러 Log Analytics 작업 영역의 데이터를 포함할 수 있습니다. 리소스 그룹 메뉴에서 로그를 선택합니다. 범위를 변경할 수 없습니다.
구독 구독의 모든 리소스에서 만든 레코드입니다. 여러 Log Analytics 작업 영역의 데이터를 포함할 수 있습니다. 구독 메뉴에서 로그를 선택합니다. 범위를 변경할 수 없습니다.
기타 Azure 리소스 리소스에서 만든 레코드입니다. 여러 Log Analytics 작업 영역의 데이터를 포함할 수 있습니다. 리소스 메뉴에서 로그를 선택합니다.
또는
Azure Monitor 메뉴에서 로그를 선택한 다음 새 범위를 선택합니다.
범위를 동일한 리소스 종류로만 변경할 수 있습니다.

리소스로 범위를 지정하는 경우의 제한 사항

쿼리 범위가 Log Analytics 작업 영역 또는 Application Insights 애플리케이션인 경우 포털의 모든 옵션과 모든 쿼리 명령을 사용할 수 있습니다. 하지만 리소스로 범위를 지정하는 경우 포털의 다음 옵션은 단일 작업 영역 또는 애플리케이션과 연결되어 있으므로 사용할 수 없습니다.

  • 저장
  • 쿼리 탐색기
  • 새 경고 규칙

쿼리 범위에 해당 리소스 또는 리소스 집합에 대한 데이터가 있는 작업 영역이 이미 포함되어 있으므로 리소스로 범위가 지정된 경우 쿼리에서 다음 명령을 사용할 수 없습니다.

쿼리 범위 한도

범위를 리소스 또는 리소스 집합으로 설정하는 것은 단일 쿼리에서 분산 데이터를 자동으로 통합할 수 있는 Log Analytics의 강력한 기능입니다. 그러나 여러 Azure 지역의 작업 영역에서 데이터를 검색해야 하는 경우 성능에 큰 영향을 줄 수 있습니다.

Log Analytics는 특정 수의 지역을 사용할 때 경고 또는 오류를 발생시켜 여러 지역의 작업 영역에 걸쳐 있는 쿼리로로 인한 과도한 오버헤드를 방지하는 데 도움을 줍니다. 범위에 5개 이상의 지역의 작업 영역이 포함된 경우 쿼리에 경고가 표시됩니다. 여전히 실행은 가능하지만 완료하는 데 시간이 너무 오래 걸릴 수 있습니다.

Screenshot of query warning.

범위에 20개 이상의 지역의 작업 영역이 포함된 경우 쿼리 실행이 차단됩니다. 이 경우 작업 영역의 지역 수를 줄이고 쿼리를 다시 실행하라는 메시지가 표시됩니다. 드롭다운은 쿼리 범위의 모든 지역을 표시하며, 쿼리를 다시 실행하기 전에 지역 수를 줄여야 합니다.

Screenshot of query failed.

시간 범위

시간 범위는 레코드가 만들어진 시기에 따라 쿼리에 대해 평가되는 레코드 집합을 지정합니다. 다음 표에 지정된 대로 작업 영역 또는 애플리케이션의 모든 레코드의 TimeGenerated 열에 의해 정의됩니다. 클래식 Application Insights 애플리케이션의 경우 타임스탬프 열이 시간 범위에 사용됩니다.

Log Analytics 창의 맨 위에 있는 시간 선택기에서 선택하여 시간 범위를 설정합니다. 미리 정의된 기간을 선택하거나 사용자 지정을 선택하여 특정 시간 범위를 지정할 수 있습니다.

Screenshot of the time picker.

위의 표와 같이 표준 시간 열을 사용하는 쿼리에서 필터를 설정하면 시간 선택기가 쿼리에서 설정으로 변경되고 시간 선택기가 비활성화됩니다. 이 경우 필터링된 레코드만 후속 처리할 수 있도록 쿼리 맨 위에 필터를 배치하는 것이 가장 효율적입니다.

Screenshot of filtered query.

작업 영역 또는 명령을 사용하여 다른 작업 영역 또는 클래식 애플리케이션에서 데이터를 검색하는 경우 시간 선택기가 다르게 동작할 수 있습니다. 범위가 Log Analytics 작업 영역이고 을 사용하는 경우 또는 범위가 클래식 Application Insights 애플리케이션이고 작업 영역을 사용하는 경우 Log Analytics는 필터에 사용된 열이 시간 필터를 결정해야 한다는 것을 이해하지 못할 수 있습니다.

다음 예제에서는 범위가 Log Analytics 작업 영역으로 설정됩니다. 쿼리는 작업 영역을 사용하여 다른 Log Analytics 작업 영역에서 데이터를 검색합니다. 예상 TimeGenerated 열을 사용하는 필터가 표시되므로 시간 선택기는 쿼리에서 설정으로 변경됩니다.

Screenshot of query with workspace.

하지만 쿼리가 을 사용하여 클래식 Application Insights 애플리케이션에서 데이터를 검색하는 경우 Log Analytics는 필터의 타임스탬프 열을 인식하지 못하며 시간 선택기는 변경되지 않습니다. 이 경우 두 필터가 모두 적용됩니다. 이 예제에서는 where 절에서 7일을 지정하더라도 지난 24시간 동안 만든 레코드만 쿼리에 포함됩니다.

Screenshot of query with app.

다음 단계