다음을 통해 공유


데이터베이스 Watcher로 Azure SQL 워크로드 모니터링(프리뷰)

적용 대상: Azure SQL 데이터베이스 Azure SQL Managed Instance

데이터베이스 Watcher는 Azure SQL 패밀리의 데이터베이스 서비스를 위한 관리형 모니터링 솔루션입니다. Azure SQL 데이터베이스Azure SQL Managed Instance를 지원합니다.

데이터베이스 Watcher는 심층 워크로드 모니터링 데이터를 수집하여 데이터베이스 성능, 구성 및 상태에 대한 자세한 보기를 제공합니다. 선택한 데이터베이스, Elastic Pool, SQL Managed Instance의 모니터링 데이터는 Azure 구독의 중앙 데이터 저장소로 수집됩니다. Azure Portal의 대시보드는 Azure SQL 자산의 단일 창 보기와 각 데이터베이스, Elastic Pool, SQL Managed Instance에 대한 자세한 보기를 제공합니다.

모니터링되는 리소스에서 Watcher, 데이터 저장소, Azure Portal 대시보드로의 데이터 흐름과 데이터베이스 Watcher 구성 요소를 보여주는 다이어그램.

SQL Monitoring 데이터를 저장하고 분석하기 위해 데이터베이스 Watcher는 Azure Data Explorer 또는 Microsoft Fabric의 실시간 분석을 사용할 수 있습니다. Azure Data Explorer는 완전히 관리되고 확장성이 뛰어난 데이터 서비스로, 시계열 모니터링 데이터에 대한 빠른 수집 및 분석을 위해 특별히 제작되었습니다. 단일 Azure Data Explorer 클러스터는 수천 개의 Azure SQL 리소스에서 모니터링 데이터를 지원하도록 확장 가능합니다. 실시간 분석은 Microsoft Fabric 내에서 SaaS 제품과 동일한 핵심 엔진을 사용합니다.

KQL 또는 T-SQL을 사용하여 Azure Data Explorer 또는 실시간 분석 데이터베이스에서 데이터를 쿼리하고, Azure Data Explorer 대시보드, Power BI 또는 Grafana를 사용하여 사용자 지정 시각적 개체를 빌드하고, Excel에서 데이터를 분석할 수 있습니다. 데이터베이스 또는 테이블당 데이터 보존 정책을 설정하고 Azure Data Explorer 클러스터의 크기를 자동으로 또는 수동으로 조정 하여 최적의 가격/성능 비율을 달성할 수 있습니다.

Azure SQL 리소스 모니터링을 시작하려면 Azure 구독에서 Watcher 리소스를 만듭니다. SQL 대상이라고 하는 모니터링할 데이터 저장소와 데이터베이스, Elastic Pool 또는 SQL Managed Instance 집합을 선택하여 Watcher를 구성합니다. Watcher에 대상에 대한 액세스 권한을 부여하고 Watcher를 시작합니다.

참고 항목

데이터베이스 Watcher 현재 미리 보기로 제공됩니다. 프리뷰 기능은 제한된 기능으로 출시되지만 고객이 미리 사용해보고 피드백을 제공할 수 있도록 프리뷰로 제공됩니다. 프리뷰 기능은 별도의 추가 프리뷰 조건이 적용되며 SLA의 적용을 받지 않습니다. 지원은 특정한 경우에 최선의 노력을 다하여 제공됩니다. 그러나 Microsoft 지원에서는 프리뷰 기능에 대한 피드백을 받고자 하며 특정한 경우에 최선의 지원을 제공할 수 있습니다. 프리뷰 기능은 기능이 한정적이거나 제한될 수 있으며 선택한 지역에서만 사용 가능합니다.

지원되는 Azure SQL 대상

데이터베이스 Watcher는 Azure SQL 데이터베이스 및 Azure SQL Managed Instance의 모든 서비스 계층, 컴퓨팅 계층, 서비스 목표를 지원합니다. 여기에는 vCoreDTU 구매 모델, 프로비전서버리스 컴퓨팅 계층, 단일 데이터베이스Elastic Pool, 하이퍼스케일이 포함됩니다.

데이터베이스 Watcher는 고가용성 복제본, 지역 복제본, 보조 복제본이라는 하이퍼스케일을 포함하여 모든 유형의 읽기 가능한 보조 복제본을 모니터링할 수 있습니다.

지정된 Watcher의 경우 SQL 대상은 동일한 Microsoft Entra ID 테넌트의 모든 구독에 있을 수 있습니다.

데이터베이스 Watcher 가격

데이터베이스 Watcher 비용은 다음과 같은 개별 구성 요소에 의해 발생합니다.

구성 요소 Price 참고 사항
Watchers 무료
대시보드 무료
Azure Data Explorer 클러스터* 가격 정보 최적의 클러스터 SKU는 모니터링 대상 수와 클러스터 쿼리 워크로드에 따라 달라집니다. 클러스터 크기 조정 고려 사항은 Azure Data Explorer 클러스터 관리를 참조하세요.
Microsoft Fabric의 실시간 분석 Power BI Premium 작업 영역 사용 모델에 포함됩니다. 사용자당 청구. Azure Data Explorer 또는 실시간 분석을 사용합니다. 이러한 제품 중 하나만 필요합니다.
Azure Key Vault의 중요 보관소 가격 정보 기본 Microsoft Entra 인증 대신 선택적 SQL 인증을 사용하는 경우에만 필요합니다.
Azure 네트워크 대역폭 가격 정보 Watcher, 대상, 데이터 저장소가 동일한 Azure 지역에 배포된 경우에는 비용이 발생하지 않습니다.

*서비스 수준 계약이 필요하지 않고 사용 가능한 클러스터 용량 사양에 따라 쿼리 성능 및 스토리지 요구 사항이 충족되는 경우 무료 Azure Data Explorer 클러스터를 사용할 수 있습니다. 무료 클러스터의 평가 기간은 1년입니다.

모니터링되는 Azure SQL 리소스 또는 사용자당 요금이 부과되지 않으므로 데이터베이스 Watcher는 더 큰 Azure SQL 환경 및 더 큰 팀을 위한 저렴한 모니터링 솔루션이 됩니다.

국가별 가용성

현재 다음 Azure 지역에서 데이터베이스 Watcher를 만들 수 있습니다.

Azure 지역 Azure 지역
아시아 태평양 오스트레일리아 중부
아시아 태평양 오스트레일리아 동부
아시아 태평양 오스트레일리아 남동부
아시아 태평양 일본 서부
아시아 태평양 한국 중부
아시아 태평양 동남 아시아
Canada 캐나다 중부
캐나다 캐나다 동부
유럽 독일 중서부
유럽 북유럽
유럽 영국 남부
유럽 스웨덴 중부
유럽 서유럽
미국 미국 중부
미국 미국 동부
미국 미국 동부 2
미국 미국 중북부
미국 미국 서부

한 Azure 지역의 Watcher는 다른 지역의 대상을 모니터링할 수 있습니다. 마찬가지로 Watcher와 해당 데이터 저장소는 다른 지역에 있을 수 있습니다.

가능하면 Watcher, 대상, 데이터 저장소를 동일한 지역에 공동 배치합니다. 해당 지역에서 데이터베이스 Watcher를 아직 사용할 수 없는 경우 동일한 Azure 지역에서 하위 지역을 선택합니다. 이렇게 하면 Azure 네트워크 대역폭 비용을 줄일 수 있습니다.

제한

Watcher당 SQL 대상 수와 구독당 Watcher 수에 제한이 있습니다. 이러한 제한을 초과하는 배포는 지원되지 않습니다.

매개 변수 제한
Watcher당 SQL 대상1 100
구독당 Watcher 20

1데이터베이스, Elastic Pool 또는 SQL Managed Instance의 고가용성 복제본은 부모 복제본과 독립적으로 모니터링되며 별도의 대상으로 간주됩니다.

참고 항목

프리뷰 중에는 제한이 변경될 수 있습니다.

대시보드

데이터베이스 Watcher는 Azure 통합 문서를 사용하여 자산 수준과 리소스 수준에서 모니터링 대시보드를 제공합니다.

다음은 자산 대시보드의 데이터베이스 CPU 사용률 열 지도의 예시입니다. 각 육각형은 SQL 대상을 나타냅니다. 2개의 논리 서버가 있습니다. 하나는 6개의 데이터베이스, 다른 하나는 3개의 데이터베이스가 있습니다. 고가용성 보조 복제본은 열 지도에 별도의 대상으로 표시됩니다. 이미지를 선택하여 데이터 수집 통계를 비롯한 추가 세부 정보를 확인합니다.

데이터베이스 Watcher 자산 대시보드의 CPU 사용률 열 지도 예시를 보여주는 스크린샷.

다음은 Azure SQL 데이터베이스 대시보드에서 성능 탭의 부분 보기를 보여주는 예시입니다. 세부 정보를 확대할 이미지를 선택합니다.

Azure SQL 데이터베이스에 대한 데이터베이스 Watcher 대시보드의 예를 보여주는 스크린샷.

다음 표에서는 Azure Portal에서 데이터베이스 Watcher 대시보드의 기능을 설명합니다.

기능 설명
자산 대시보드 공통 보기에서 모니터링되는 여러 리소스에 대한 상위 수준 모니터링 데이터를 시각화합니다. 열 지도를 사용하여 데이터베이스, 탄력적 풀 또는 SQL 관리형 인스턴스를 사용하는 상위 리소스를 찾습니다.

상위 쿼리 보기를 사용하여 CPU, 기간, 실행 횟수 등을 기준으로 쿼리의 순위를 매겨 Azure SQL 자산 전체에서 리소스를 가장 많이 소비하는 쿼리를 찾으세요.

구독, 리소스 그룹 및 리소스 이름 필터를 사용하여 Azure SQL 자산의 하위 집합에 집중하세요.

특정 리소스에 대한 자세한 대시보드로 드릴다운하세요.
리소스 대시보드 데이터베이스, Elastic Pool 또는 SQL Managed Instance에 대한 자세한 모니터링 데이터 시각화(예:

활성 세션 포함)
- 백업 기록
- 일반적인 성능 카운터
- 연결 프로브
- 데이터베이스와 인스턴스의 속성 및 구성
- 지역에서 복제
- 인덱스 메타데이터, 사용 통계, 경고 및 제안
- 리소스 사용량
- 세션 및 연결 통계
- SQL 에이전트 작업 상태 및 기록
- 저장소 사용량 및 성능
- 테이블 메타데이터
- 상위 쿼리
- 대기 통계

리소스 드롭다운을 사용하여 한 리소스에서 다른 리소스로 빠르게 전환합니다. 자산 링크를 사용하여 자산 대시보드를 축소합니다.
시간 범위로 필터링 각 대시보드에서 원하는 시간 간격에 집중하도록 시간 범위를 설정합니다. 표준 또는 사용자 지정 시간 범위를 사용합니다. "브러시"를 사용하거나 차트 위로 마우스 커서를 끌어 더 짧은 시간 범위를 선택하여 시간 범위를 원하는 간격으로 좁힐 수 있습니다.
기록 데이터 데이터 세트에 따라 대시보드에는 선택한 시간 간격에 대한 요약 또는 해당 시간 간격에 수집된 최신 샘플이 표시됩니다.

선택한 시간 범위의 앞부분에서 데이터 샘플을 보려면 최신 보기와 기록 보기 사이를 전환합니다. 예를 들어 리소스 사용량이 급증했을 때 현재 활성 세션을 보는 대신 수집된 활성 세션의 이전 샘플을 검토합니다.
보조 복제본 자산 대시보드에서 HA(고가용성) 보조 복제본을 비롯한 모든 유형의 복제본을 모니터링합니다. 리소스 대시보드에서 주 복제본 보기와 HA 보조 복제본 사이를 전환합니다.
데이터를 Excel로 다운로드 추가 분석을 위해 차트와 약식 표에서 데이터를 csv 파일로 다운로드하고 Excel에서 엽니다.
데이터 새로 고침 대시보드를 열고 탭 사이를 전환할 때 모니터링 데이터 저장소에서 최신 데이터를 검색합니다. 대시보드를 일정 시간 동안 연 후 수동으로 새로 고쳐 최신 데이터를 확인하거나 대시보드 자동 새로 고침을 사용하도록 설정합니다.
임시 KQL 쿼리 각 대시보드의 링크를 사용하여 Azure Data Explorer 웹 UI를 열고 KQL을 사용하여 모니터링 데이터를 쿼리합니다. 자세한 내용은 데이터 세트KQL을 사용하여 모니터링 데이터 분석을 참조하세요.
설명 표시된 데이터를 해석하고 관련 설명서 링크를 포함하는 데 도움이 되는 설명을 보려면 설명 표시 매개 변수를 토글합니다.
도구 설명 필드에 커서를 올려 표시된 데이터에 대한 자세한 내용과 컨텍스트를 확인합니다.
수집 통계 수집 통계 링크를 사용하여 데이터 세트당 데이터 수집 대기 시간 및 기타 수집 통계를 확인합니다.
어둡게 모드 Azure Portal 모양을 전환하고 어두운 테마를 사용하여 데이터베이스 Watcher 대시보드에서 다크 모드를 사용하도록 합니다.

참고 항목

프리뷰 중에는 대시보드 시각화 및 기능이 변경될 수 있습니다.

SQL Monitoring 데이터

데이터베이스 Watcher는 70개 이상의 SQL 카탈로그 뷰DMV(동적 관리 뷰)에서 모니터링 데이터를 수집합니다. 하나 이상의 관련 뷰의 데이터가 데이터 세트로 변환됩니다. 예를 들어 sys.dm_exec_sessions, sys.dm_exec_requests, 기타 보기의 데이터가 활성 세션 데이터 세트를 구성합니다. 데이터 세트마다 Azure Data Explorer 또는 실시간 분석 데이터베이스에 별도의 테이블이 있습니다.

데이터베이스 Watcher에는 데이터베이스, Elastic Pool, SQL Managed Instance에 대한 별도의 데이터 세트 그룹이 있습니다. 각 그룹에는 10~30개의 데이터 세트가 있으며, Azure SQL 리소스에 대한 데이터베이스 성능, 구성,상태에 대한 자세한 보기를 제공합니다.

자세한 내용은 데이터베이스 Watcher 데이터 수집 및 데이터 세트를 참조하세요.

네트워크 연결

데이터베이스 Watcher는 네트워크를 통해 대상, 데이터 저장소, 키 자격 증명 모음에 연결하는 원격 데이터 수집 에이전트를 사용합니다. 네트워크 보안 요구 사항과 Azure 리소스 구성에 따라 데이터베이스 Watcher는 프라이빗 또는 퍼블릭 연결을 사용할 수 있습니다. 항상 데이터베이스 Watcher에서 Azure 리소스로의 네트워크 연결을 완전히 제어합니다.

Azure SQL의 네트워크 연결에 대한 자세한 내용은 Azure SQL 데이터베이스 연결 아키텍처Azure SQL Managed Instance 연결 아키텍처를 참조하세요.

프라이빗 연결

프라이빗 연결을 제공하기 위해 데이터베이스 Watcher는 Azure Private Link를 사용합니다. Watcher를 구성할 때 Watcher가 논리 서버의 데이터베이스 및 Elastic Pool 또는 SQL Managed Instance에 연결할 수 있도록 관리형 프라이빗 엔드포인트를 생성할 수 있습니다. Azure Data Explorer 클러스터 및 SQL 인증 자격 증명을 저장하는 키 자격 증명 모음에 대한 프라이빗 엔드포인트도 만들 수 있습니다. 현재 Microsoft Fabric의 실시간 분석에 대한 연결에 프라이빗 연결을 사용할 수 없습니다.

리소스 소유자가 프라이빗 엔드포인트를 승인해야 데이터베이스 Watcher에서 이를 사용할 수 있습니다. 반대로 리소스 소유자는 언제든지 데이터베이스 Watcher 프라이빗 엔드포인트를 삭제하여 데이터 수집을 중지할 수 있습니다.

Azure 리소스에 대한 프라이빗 엔드포인트가 만들어지고 승인되면 리소스에 대한 공용 연결이 계속 활성화되더라도 Watcher와 리소스 간의 모든 네트워크 트래픽은 프라이빗 연결을 사용합니다.

Azure SQL의 프라이빗 엔드포인트에 대한 자세한 내용은 Azure SQL 데이터베이스용 Azure Private LinkAzure SQL Managed Instance용 Azure Private Link를 참조하세요.

공용 연결

프라이빗 연결이 필요하지 않은 경우 데이터베이스 Watcher는 공용 연결을 사용하여 Azure 리소스에 연결할 수 있습니다. Watcher가 Azure SQL 데이터베이스 논리 서버의 데이터베이스 및 Elastic Pool에 연결할 수 있게 하려면 서버에 대한 공용 액세스를 사용하도록 설정하고, IP 기반 방화벽은 모든 Azure 서비스의 연결을 허용해야 합니다.

Watcher가 공용 연결을 사용하여 SQL Managed Instance에 연결할 수 있게 하려면 인스턴스의 공용 엔드포인트를 사용하도록 설정해야 합니다. 또한 TCP 포트 3342에서 Managed Instance 서브넷으로의 인바운드 트래픽을 허용하는 NSG(네트워크 보안 그룹) 규칙의 소스는 AzureCloud로 설정되어야 합니다. 자세한 내용은 Azure SQL Managed Instance에서 퍼블릭 엔드포인트 구성을 참조하세요.

Watcher가 공용 연결을 사용하여 Azure Data Explorer 클러스터 또는 키 자격 증명 모음에 연결할 수 있게 하려면 클러스터 또는 자격 증명 모음의 모든 네트워크에서 네트워크 액세스를 사용하도록 설정해야 합니다.

데이터 액세스

네트워크 연결과 마찬가지로 데이터베이스에 대한 데이터베이스 Watcher 액세스를 완전히 제어할 수 있습니다. 논리 서버 및 SQL Managed Instance에서 전용 데이터베이스 Watcher 로그인을 만든 다음, SQL 시스템 보기에서 모니터링 데이터를 수집할 수 있는 제한된 특정 권한을 부여하여 액세스 권한을 부여합니다.

Watcher 인증

데이터베이스 Watcher는 Microsoft Entra 인증(이전에는 Azure Active Directory 인증이라고 함)을 지원합니다. Watcher가 SQL 대상에 인증하는 기본 설정 및 권장 방법입니다. 모니터링하려는 모든 논리 서버 및 SQL Managed Instance에서 Watcher의 관리 ID에 대한 Microsoft Entra 인증 로그인을 만듭니다.

데이터베이스 Watcher는 암호 기반 SQL 인증도 지원합니다. Azure SQL 리소스에서 Microsoft Entra 인증을 사용하도록 설정하지 않은 경우 SQL 인증을 사용할 수 있습니다. 자세한 내용은 SQL 인증을 사용하기 위한 추가 구성을 참조하세요.

Watcher 권한 부여

모니터링 데이터를 수집하려면 데이터베이스 Watcher에서 다음 표에 설명된 대로 각 모니터링 대상에 대한 제한적인 특정 액세스 권한이 필요합니다. 이러한 역할 멤버 자격 및 권한은 Watcher에게 시스템 모니터링 데이터에 필요한 액세스 권한을 부여하지만 데이터베이스의 다른 데이터에 대한 액세스 권한은 부여하지 않습니다.

Azure SQL 데이터베이스 Azure SQL Managed Instance
다음 모든 서버 역할의 멤버십:
##MS_ServerPerformanceStateReader##
##MS_DefinitionReader##
##MS_DatabaseConnector##
다음 서버 사용 권한:
CONNECT SQL
CONNECT ANY DATABASE
VIEW ANY DATABASE
VIEW ANY DEFINITION
VIEW SERVER PERFORMANCE STATE

msdb 데이터베이스의 다음 테이블에 대한 SELECT 권한:
dbo.backupmediafamily
dbo.backupmediaset
dbo.backupset
dbo.suspect_pages
dbo.syscategories
dbo.sysjobactivity
dbo.sysjobhistory
dbo.sysjobs
dbo.sysjobsteps
dbo.sysoperators
dbo.syssessions

중요

Watcher가 Azure SQL 리소스에 연결하면 Watcher가 보유한 SQL 권한의 유효성을 검사합니다. 부여된 권한이 부족하거나 불필요한 사용 권한이 부여된 경우 Watcher의 연결이 끊어집니다. 이렇게 하면 Watcher가 시스템 모니터링 데이터를 수집할 수 있지만 데이터베이스의 다른 데이터에 대한 액세스가 실수로 허용되지는 않습니다.

SQL 대상에 대한 Watcher 액세스를 구성할 때 항상 제공된 스크립트를 사용하여 전용 로그인을 만듭니다. Watcher 로그인 또는 사용자를 SQL 역할에 추가하거나 테이블에 나열된 권한 이외의 SQL 권한을 부여하지 마세요.

데이터베이스 감시자 로그인 또는 사용자에 대한 필수 권한 또는 public데이터베이스 역할 등 데이터베이스 감시자 로그인 또는 사용자의 멤버 역할에 대한 필수 권한을 거부하는 경우 데이터베이스 감시자가 모니터링 데이터를 수집하지 않을 수 있습니다. 거부된 권한에 따라 일부 또는 모든 데이터 세트에 영향을 줄 수 있습니다.

반대로 데이터베이스 감시자 로그인 또는 사용자나 데이터베이스 감시자 로그인 또는 사용자의 멤버 역할에 대해 직간접적으로 불필요한 권한을 부여하는 경우 데이터베이스 감시자는 일부 또는 전체 데이터 세트에 대한 모니터링 데이터를 수집하지 않을 수 있습니다. 마찬가지로 기본 제공 서버 또는 데이터베이스 역할에 데이터베이스 감시자 로그인 또는 사용자를 추가하는 경우 데이터가 수집되지 않을 수 있습니다.

새로운 기능

이 섹션에서는 최근 데이터베이스 감시자 수정, 변경 및 개선 사항에 대해 설명합니다.

기간 변경
2024년 11월 - 오스트레일리아 중부, 오스트레일리아 남동부, 캐나다 동부, 미국 중부, 독일 중서부, 일본 서부, 한국 중부미국 중북부 Azure 지역에서 데이터베이스 감시자를 사용하도록 설정합니다.
- 감시자당 SQL 대상 수에 대한 제한을 50개에서 100개로 늘입니다.
2024년 10월 - 잘못된 테이블 참조가 있는 뷰 또는 여러 열 검사 제약 조건이 있는 테이블이 있는 경우 테이블 메타데이터 데이터 세트가 수집되지 않은 버그를 수정합니다.
- 사용자 할당 ID를 감시자 ID로 사용하기 위한 지원을 추가합니다. 자세한 내용은 감시자 ID 수정을 참조 하세요.
- SQL 인증을 사용하는 SQL 대상을 추가할 때 감시자에게 키 자격 증명 모음 비밀에 대한 액세스 권한을 자동으로 부여합니다.
- 기존 감시자에 데이터 저장소를 추가할 때 감시자에게 Azure Data Explorer 데이터베이스에 대한 액세스 권한을 자동으로 부여합니다.
- 개요 페이지 및 기타 페이지의 피드백 단추를 추가합니다.
2024년 9월 -MARS 논리 세션이 사용된 경우에도 세션 통계 데이터 세트의 사용자 논리 세션 수가 항상 사용자 세션 수와 동일한 버그를 수정합니다.
-하이퍼스케일 탄력적 풀에 대해 탄력적 풀 스토리지 사용률이 올바르게 보고되지 않는 버그를 수정합니다.
-특정 데이터 세트의 경우 Watcher를 다시 시작한 후 수집된 첫 번째 샘플에는 다시 시작하기 전에 이미 수집된 데이터가 포함될 수 있습니다.
-Table 메타데이터 데이터 세트에 대한 시간 제한을 방지하도록 컬렉션 쿼리 성능을 향상시킵니다.
-SQL Managed Instance에서 쿼리 런타임 통계쿼리 대기 통계 데이터 세트에 대한 컬렉션 안정성을 향상시킵니다.
-SQL Managed Instance에 대한 데이터베이스 복제본 데이터 세트에 장애 조치 관련 열을 추가합니다.
-인덱스 메타데이터 데이터 세트에 인덱스 작업 통계 열을 추가합니다.
-SQL 대상 추가 블레이드에서 여러 Azure SQL 데이터베이스를 선택하는 지원을 추가합니다.
2024년 8월 - 미국 중부, 미국 동부 2, 북유럽스웨덴 중부 Azure 지역에서 데이터베이스 감시자를 사용하도록 설정합니다.
- 자산 대시보드에 구독 및 리소스 그룹 필터를 추가합니다.
2024년 7월 - 대/소문자를 구분하는 카탈로그 데이터 정렬이 있는 데이터베이스 또는 대/소문자를 구분하는 데이터베이스 데이터 정렬이 있는 관리되는 인스턴스에서 성능 카운터 데이터 세트가 수집되지 않은 버그를 수정합니다.
- SQL 메타데이터의 데이터베이스 이름이 ARM(Azure Resource Manager) 메타데이터의 데이터베이스 이름과 다른 경우 데이터가 수집되지 않은 버그를 수정합니다.
- 많은 양의 새 쿼리 및 쿼리 계획이 쿼리 저장소 테이블에 삽입된 데이터베이스에서 쿼리 런타임 통계쿼리 대기 통계 데이터 세트가 수집되지 않은 버그를 수정합니다.
- 하이퍼스케일 데이터베이스에서 지역 복제본복제본 데이터 세트가 수집되지 않은 문제를 해결합니다.
- 모든 데이터 세트에 subscription_idresource_group_name 공통 열을 추가합니다. 감시자를 한 번 다시 시작해야 합니다.
- 모든 데이터 세트에 resource_id 공통 열을 추가합니다. 데이터는 2024년 7월 이상에 추가된 SQL 대상에 대해 표시됩니다. 기존 SQL 대상에 대한 데이터를 표시하려면 대상을 제거다시 추가하고 감시자를 다시 시작합니다.
2024년 6월 - Bicep 또는 ARM 템플릿을 통해 추가된 일부 SQL 대상에서 데이터가 수집되지 않은 버그를 수정합니다.
- 일부 Azure SQL 데이터베이스에 대해 백업 기록 데이터 세트가 수집되지 않은 버그를 수정합니다.
- Managed Instance 링크를 사용하는 데이터베이스가 인스턴스에 있는 경우 Managed Instance의 복제본 형식이 지역에서 복제 전달자로 잘못 결정되는 버그를 수정합니다. 이 경우 동일한 버그로 인해 쿼리 런타임 통계쿼리 대기 통계 데이터 세트가 수집되지 않습니다.
- 사용자가 SQL 대상의 구독에 액세스할 수 없거나 구독이 삭제된 경우 Azure Portal의 SQL 대상 블레이드에서 대상을 로드하지 못하는 오류를 발생시키는 버그를 수정합니다.
- Azure Portal에서 Watcher를 만드는 동안 기본적으로 생성된 Azure Data Explorer 데이터베이스의 보존 및 캐시 기간이 각각 365일과 31일이 아닌 무제한으로 설정되는 버그를 수정합니다.
- 관리형 프라이빗 엔드포인트 만들기 또는 삭제와 같은 특정 관리 작업이 실패한 경우에도 Azure Portal에서 성공한 것으로 보고되는 버그를 수정합니다.
- SQL 논리 서버에 1,000개 이상의 데이터베이스가 포함되면 SQL 데이터베이스 대상의 경우 드롭다운의 데이터베이스 목록이 불완전한 버그를 수정합니다.
- 데이터 저장소로 Azure Data Explorer 데이터베이스를 선택하면 동일한 리소스 그룹의 다른 Watcher가 이 데이터베이스에 대한 액세스 권한을 제거하는 버그를 수정합니다.
- Azure Portal에서 Watcher ARM 템플릿 내보내기를 사용하도록 설정합니다.
- Watcher에 대해 선택한 구독에 Microsoft.Network 리소스 공급자가 등록되지 않은 경우 Watcher를 만드는 동안 경고를 추가합니다.
- 리소스 범위에 삭제 잠금이 있어서 Watcher 또는 관리되는 프라이빗 엔드포인트를 삭제하지 못하는 경우 자세한 오류를 추가합니다.
2024년 4월 - 오스트레일리아 동부영국 남부 Azure 지역에서 데이터베이스 Watcher를 사용할 수 있도록 했습니다.
- 동일한 Watcher에 대해 여러 프라이빗 엔드포인트가 빠르게 추가되는 경우 관리 프라이빗 엔드포인트가 추가되는 오류를 수정했습니다.
- 전체 백업을 포함하도록 SQL Database에 대한 백업 기록 데이터 세트를 수정했습니다.
- 인덱스 메타데이터, 쿼리 런타임 통계, 쿼리 대기 통계테이블 메타데이터 데이터 세트의 시간 제한을 방지하기 위해 수집 쿼리 성능을 개선했습니다.
- 백업에서 데이터베이스를 복원한 후 특정 데이터 세트 데이터가 수집되지 않은 버그를 수정했습니다.
- 인덱스에 많은 키 또는 포함된 열이 있거나 이러한 열의 이름이 긴 경우 인덱스 메타데이터 데이터 세트가 수집되지 않은 버그를 수정했습니다.
- SOS 스케줄러 데이터 세트를 추가했습니다.
- 상위 쿼리 대시보드에서 선택한 쿼리 계획을 다운로드하는 버튼을 추가했습니다.
- 빠른 시작 샘플을 추가하여 Bicep 또는 ARM 템플릿을 사용해 Watcher를 만들고 구성할 수 있습니다.

제한 사항

이 섹션에서는 데이터베이스 Watcher 제한 사항을 설명합니다. 사용 가능한 경우 해결 방법이 제공됩니다.

제한 사항 해결 방법
개발/테스트 또는 초소규모와 같은 소규모 Azure Data Explorer SKU를 사용하는 경우 일부 대시보드 쿼리가 "제한으로 인해 중단됨" 오류와 함께 간헐적으로 실행되지 않을 수 있습니다. 대시보드를 다시 로드하거나 다음으로 높은 SKU로 Azure Data Explorer 클러스터를 스케일 업합니다.
Azure Portal의 데이터베이스 Watcher UI에서 무료 Azure Data Explorer 클러스터를 만드는 경우 Azure Data Explorer 웹 UI에서 클러스터에 액세스하려고 하면 "클러스터에 연결할 수 없습니다. 403-Forbidden" 오류가 발생할 수 있습니다. https://aka.ms/kustofree를 사용하여 무료 클러스터를 만드는 경우에는 이 문제가 발생하지 않습니다.

Azure Portal에서 이미 무료 클러스터를 만든 경우 다음 단계를 따르세요.

Azure Data Explorer 웹 UI의 기본 표시줄에서 프로필 이름을 선택하여 계정 관리자를 열고 디렉터리 전환을 선택합니다. Microsoft 계정 이외의 디렉터리를 선택하고 전환을 선택합니다. 이제 만든 무료 Azure Data Explorer 클러스터가 표시됩니다.

또는 편집(연필) 단추를 사용하여 Azure Data Explorer 웹 UI에서 클러스터 연결을 편집하고 마찬가지로 디렉터리를 전환할 수 있습니다.
데이터베이스, Elastic Pool 또는 SQL Managed Instance에 대한 CPU 사용량이 100% 가까이 유지되는 경우, 남은 CPU 리소스가 데이터베이스 Watcher 데이터 수집 쿼리에 부족하여 수집된 데이터에서 격차가 발생할 수 있습니다. 데이터베이스, Elastic Pool 또는 SQL Managed Instance에서 높은 CPU 사용률과 상관 관계가 있는 데이터 격차가 관찰되는 경우 애플리케이션 워크로드를 조정하여 CPU 사용량을 줄이거나 vCore 또는 DTU 수를 늘려 안정적인 모니터링을 지원하는 것이 좋습니다.

알려진 문제

프리뷰 중에 데이터베이스 Watcher에는 다음과 같은 알려진 문제가 있습니다.

문제 완화 또는 해결 방법
오류(예: SQL 대상 또는 데이터 저장소에 대한 액세스 불충분)로 인해 데이터 컬렉션을 시작하거나 계속할 수 없는 경우 해당 오류가 노출되지 않습니다. 문제를 해결하려면 데이터가 수집되지 않음을 참조하세요.
서버리스 데이터베이스가 자동 일시 중지를 사용하도록 설정되어 있고 데이터베이스 Watcher 대상으로 추가된 경우 예상대로 자동 일시 중지되지 않을 수 있습니다. 무료 제품 데이터베이스의 경우 예상보다 빨리 무료 월별 크레딧이 소진될 수 있습니다. 자동 일시 중지 기능을 유지해야 하는 경우 데이터베이스 Watcher를 사용하여 서버리스 데이터베이스를 모니터링하지 마세요.
Azure SQL Managed Instance의 경우 SQL 인증을 사용하면 읽기 가능한 고가용성 복제본 또는 지역 복제본의 데이터가 수집되지 않습니다. 두 가지 해결 방법이 있습니다.
1. Microsoft Entra ID 인증을 사용합니다(권장).
2. 암호 정책 검사를 사용하지 않도록 설정합니다. database-watcher-login-placeholder를 Watcher의 SQL 인증 로그인 이름으로 바꾸고 ALTER LOGIN [database-watcher-login-placeholder] WITH CHECK_POLICY = OFF;를 실행합니다. 주 복제본과 지역 복제본(있는 경우)에서 이 명령을 실행합니다.
Azure SQL Managed Instance에서 sys.xp_msver 시스템 저장 프로시저에 대한 EXECUTE 사용 권한이 public 역할에 대해 취소되거나 거부된 경우 데이터가 수집되지 않습니다. 데이터베이스 Watcher 로그인에 sys.xp_msver에 대한 EXECUTE 사용 권한을 부여합니다.

데이터베이스 Watcher 대상으로 추가된 모든 SQL Managed Instance에서 database-watcher-login-placeholder를 Watcher 로그인 이름으로 바꾸고 USE master; CREATE USER [database-watcher-login-placeholder] FOR LOGIN [database-watcher-login-placeholder]; GRANT EXECUTE ON sys.xp_msver TO [database-watcher-login-placeholder];를 실행합니다.
Watcher가 중지된 SQL Managed Instance에 연결할 관리형 프라이빗 엔드포인트를 만드는 경우 프라이빗 엔드포인트의 프로비전 상태가 실패로 보고되고 Watcher가 인스턴스에 연결할 수 없습니다. 실패한 프로비저닝 상태로 관리되는 프라이빗 엔드포인트를 삭제하고 SQL Managed Instance를 시작하세요. 실패한 프라이빗 엔드포인트가 삭제되고 인스턴스가 실행되면 관리형 프라이빗 엔드포인트를 다시 만듭니다.
실시간 분석의 데이터베이스를 데이터 저장소로 사용하고 OneLake 가용성 옵션을 사용하는 경우 데이터가 수집되지 않습니다. OneLake 가용성 옵션을 사용 중지하고 Watcher를 다시 시작하여 데이터 수집을 다시 시작합니다.
Bicep 또는 ARM 템플릿을 통한 데이터베이스 감시자 배포는 멱등성이 없습니다. 감시자, SQL 대상 또는 관리형 프라이빗 엔드포인트가 이미 있는 경우, 배포되지 않습니다. 조건부 배포를 사용하여 기존 리소스 배포를 생략합니다. 자세한 내용은 if 식을 사용한 Bicep의 조건부 배포ARM 템플릿의 조건부 배포를 참조하세요.
Azure SQL Database의 알려진 문제로 인해 데이터베이스 카탈로그 데이터 정렬이 기본값SQL_Latin1_General_CP1_CI_AS이 아닌 경우 Azure SQL 데이터베이스에 대한 Backup 기록 데이터 세트의 데이터가 수집되지 않습니다. 현재는 없습니다.

문제 해결

이 섹션에서는 일반적인 문제를 해결하기 위해 수행할 수 있는 단계를 설명합니다. 이 섹션의 단계로 문제가 해결되지 않으면 지원 사례를 개설하세요.

데이터가 수집되지 않음

새 Watcher를 만들었지만 대시보드와 데이터 저장소에 모니터링 데이터가 표시되지 않거나 이전 데이터만 표시되는 경우 이 섹션을 검토합니다.

  • Watcher 개요 페이지에서 상태 필드를 검사하고 Watcher가 실행 중인지 확인합니다. 그렇지 않은 경우 같은 페이지의 시작 버튼을 사용하여 데이터 수집을 시작합니다. 새 Watcher가 자동으로 시작되지 않습니다.

  • Watcher에 데이터 저장소에 대한 액세스 권한이 있는지 확인합니다.

  • Azure Data Explorer 데이터베이스를 데이터 저장소로 사용하는 경우 Azure Data Explorer 클러스터가 시작되었는지 확인합니다. 자세한 내용은 중지된 Azure Data Explorer 클러스터를 참조하세요.

  • Watcher가 SQL 대상에 대해 특정 제한된 액세스 권한을 가지고 있는지 확인합니다. 또한 대상에 SQL 인증을 사용하는 경우 키 자격 증명 모음에 대한 Watcher 액세스를 검사하거나 대신 권장되는 Microsoft Entra 인증을 사용합니다.

  • Watcher가 Microsoft Entra 인증을 사용하여 SQL 대상에 연결하게 하려면 데이터베이스 및 Elastic Pool 대상을 호스트하는 논리 서버와 Managed Instance 대상에서 Microsoft Entra 인증을 사용하도록 설정해야 합니다.

  • Watcher에 대한 프라이빗 엔드포인트를 만든 경우 리소스 소유자가 승인했는지 확인합니다.

  • 공용 연결을 사용하는 경우 Watcher가 대상, 데이터 저장소, 키 자격 증명 모음에 연결할 수 있도록 하기 위한 요구 사항이 충족되는지 확인합니다.

  • Watcher의 데이터 저장소로 선택된 후 Azure Data Explorer 클러스터 또는 데이터베이스 또는 실시간 분석 데이터베이스가 삭제되었을 수 있습니다. 클러스터 및 데이터베이스로 이동하여 해당 항목이 있는지 확인합니다.

  • 무료 Azure Data Explorer 클러스터를 사용하는 경우 클러스터의 저장소 용량에 도달하지 않았는지 확인합니다. 자세한 내용은 무료 Azure Data Explorer 클러스터를 참조 하세요.

문제 해결의 일환으로 Watcher 액세스 또는 연결을 변경하는 경우 변경 내용을 적용하려면 Watcher를 중지하고 다시 시작해야 할 수 있습니다.

대시보드가 비어 있음

Watcher의 대시보드 페이지를 선택했지만 페이지에 SQL 대상 요약이 표시되지 않는 경우 데이터 저장소 섹션을 확장합니다. 연결할 수 없습니다... 오류가 표시되면 이 섹션을 검토합니다.

액세스 권한이 있고 데이터 저장소에 연결할 수 있는지 및 데이터 저장소 데이터베이스가 있는지 확인하려면 다음 단계를 따릅니다.

  • Watcher의 대시보드 페이지에서 데이터 저장소 섹션을 확장하고 Kusto 쿼리 URI 값을 복사합니다. 전체 URI 문자열을 복사해야 합니다. Kusto 데이터베이스 값도 기록해 둡니다.

  • Azure Data Explorer 웹 UI를 엽니다. 메시지가 표시되면 로그인합니다.

  • 추가, 연결을 선택하고 복사한 URI를 연결 URI로 입력합니다.

  • 새 연결을 만들려면 추가를 선택합니다.

  • 새 연결 항목이 추가되면 해당 항목을 확장하여 데이터베이스를 확인합니다.

  • Watcher의 대시보드 페이지에서 Kusto 데이터베이스로 참조되는 데이터베이스를 선택하고 탭 표시줄에서 + 기호를 선택하여 이 데이터베이스에 연결된 새 쿼리 탭을 엽니다.

  • 다음 KQL 명령을 실행합니다.

    .show database principals;
    

    사용자 계정에 대해 뷰어 또는 더 높은 권한 있는 역할에 대한 행이 있는지 또는 사용자 계정이 포함된 Microsoft Entra ID 그룹에 있는지 확인합니다.

피드백 보내기

Microsoft의 데이터베이스 Watcher 팀은 귀하의 의견과 제안을 기대하고 있습니다. 다음 방법 중 하나로 제품 피드백을 보낼 수 있습니다.

  • SQL 피드백 포럼에 새 아이디어를 게시합니다. 새 아이디어 게시 페이지에서 SQL을 포럼으로 사용하고, Azure SQL 그룹을 선택하고, 제목에 데이터베이스 Watcher를 포함합니다. 피드백 포럼에서 제출하는 피드백은 공개됩니다. 다른 커뮤니티 구성원은 여러분의 아이디어와 제안을 찬성하거나 의견을 제시할 수 있습니다. 커뮤니티 투표 및 의견은 데이터베이스 Watcher 팀이 제품 개선을 계획하고 우선 순위를 지정하는 데 도움이 됩니다.
  • Azure Portal의 데이터베이스 감시자 페이지 중 하나에서 피드백 단추를 사용합니다. 예를 들어 감시자 개요 페이지 또는 새로 고침 단추 옆에 있는 대시보드에서 피드백 단추를 찾을 수 있습니다. 이러한 방식으로 보내는 피드백은 공개되지 않습니다. 피드백을 제출할 때 필요에 따라 Microsoft가 후속 작업 및 설명에 대해 이 피드백과 관련하여 이메일을 보내도록 허용할 수 있습니다.

기술 지원 또는 데이터베이스 Watcher 문제를 해결하는 데 도움이 되도록 지원 사례를 엽니다.