SQL 인사이트를 사용하여 SQL 배포 모니터링(미리 보기)

적용 대상: Azure VM의 SQL Server Azure SQL DatabaseAzure SQL Managed Instance

데이터베이스 감시자(미리 보기) 는 낮은 데이터 수집 대기 시간, 자산 수준 모니터링, 쿼리 수준 세부 정보를 포함한 포괄적인 모니터링 데이터 및 수집된 모니터링 데이터에 대한 고급 분석 지원이 필요한 시나리오에 권장되는 모니터링 솔루션입니다.

현재 데이터베이스 감시자는 Azure SQL Database 및 Azure SQL Managed Instance를 지원합니다.

SQL Insights(미리 보기)는 Azure SQL 제품군제품에 대한 모니터링 솔루션입니다. SQL 인사이트는 동적 관리 뷰를 사용하여 상태를 모니터링하고 문제를 진단하고 성능을 조정하는 데 필요한 데이터를 공개합니다.

SQL 인사이트는 원격으로 모든 모니터링을 수행합니다. 전용 가상 머신의 모니터링 에이전트는 SQL 리소스에 연결하고 원격으로 데이터를 수집합니다. 수집된 데이터는 Azure Monitor 로그에 저장되어 쉽게 집계, 필터링 및 추세 분석이 가능합니다. SQL 인사이트 통합 문서 템플릿에서 수집된 데이터를 보거나 로그 쿼리를 사용하여 데이터를 직접 확인할 수 있습니다.

다음 다이어그램은 데이터베이스 엔진 및 Azure 리소스 로그의 정보가 취한 단계와 표시 방법을 자세히 설명합니다. Azure SQL 로깅에 대한 자세한 다이어그램은 모니터링 및 진단 원격 분석을 참조하세요.

AzureDiagnostics 및 Log Analytics를 통해 데이터베이스 엔진 정보 및 리소스 로그가 표시되는 방식을 보여 주는 다이어그램

가격 책정

SQL Insights(미리 보기)에 대한 직접적인 비용은 없습니다. 모든 비용은 데이터를 수집하는 가상 머신, 데이터를 저장하는 Log Analytics 작업 영역 및 데이터에 구성된 경고 규칙에 의해 발생합니다.

가상 머신

가상 머신의 경우 가상 머신 가격 책정 페이지에 게시된 가격 책정에 따라 요금이 청구됩니다. 필요한 가상 머신의 수는 모니터링하려는 연결 문자열 수에 따라 달라집니다. 연결 문자열 100개마다 Standard_B2s 크기의 가상 머신 하나를 할당하는 것이 좋습니다. 자세한 내용은 Azure 가상 머신 요구 사항을 참조하세요.

Log Analytics 작업 영역

Log Analytics 작업 영역의 경우 Azure Monitor 가격 책정 페이지에 게시된 가격 책정에 따라 요금이 청구됩니다. SQL Insights에서 사용하는 Log Analytics 작업 영역에는 데이터 수집, 데이터 보존 및 데이터 내보내기(선택 사항)에 대한 비용이 발생합니다.

정확한 요금은 수집, 보존 및 내보낸 데이터의 양에 따라 달라집니다. 이 데이터의 양은 데이터베이스 활동 및 모니터링 프로필에 정의된 컬렉션 설정에 따라 달라집니다.

경고 규칙

Azure Monitor의 경고 규칙의 경우 Azure Monitor 가격 책정 페이지에 게시된 가격 책정에 따라 요금이 청구됩니다. SQL 인사이트(미리 보기)로 경고를 만들도록 선택하면 생성된 모든 경고 규칙 및 전송된 알림에 대해 요금이 청구됩니다.

지원되는 버전

SQL Insights(미리 보기)는 다음 환경을 지원합니다.

  • Azure SQL Database
  • Azure SQL Managed Instance
  • SQL Server 2012 이상 버전이 다음에서 실행됩니다.

SQL 인사이트(미리 보기)는 다음을 지원하지 않거나 제한적으로 지원합니다.

  • 비 Azure 인스턴스: Azure 외부 환경에서 실행되는 SQL Server는 온-프레미스 및 가상 머신을 포함하여 지원되지 않습니다.
  • Azure SQL Database 탄력적 풀: 탄력적 풀 또는 탄력적 풀 내의 데이터베이스에 대한 메트릭을 수집할 수 없습니다.
  • Azure SQL Database 낮은 서비스 계층: 기본, S0, S1 및 S2 서비스 계층의 데이터베이스에 대해서는 메트릭을 수집할 수 없습니다.
  • Azure SQL Database 서버리스 계층: 서버리스 컴퓨팅 계층을 통해 데이터베이스에 대한 메트릭을 수집할 수 있습니다. 그러나 메트릭을 수집하는 프로세스는 자동 일시 중지 지연 타이머를 다시 설정하여 데이터베이스가 자동 일시 중지된 상태로 들어가지 못하게 합니다.
  • 보조 복제본: 데이터베이스당 단일 보조 복제본에 대해서만 메트릭을 수집할 수 있습니다. 데이터베이스에 둘 이상의 보조 복제본이 있는 경우 하나만 모니터링할 수 있습니다.
  • Microsoft Entra ID(이전의 Azure Active Directory)를 사용한 인증: 모니터링에 지원되는 유일한 인증 방법은 SQL 인증입니다. Azure Virtual Machines의 SQL Server의 경우 사용자 지정 do기본 컨트롤러에서 Active Directory를 통한 인증은 지원되지 않습니다.

국가별 가용성

SQL Insights(미리 보기)는 Azure Government 및 국가별 클라우드를 제외하고 Azure Monitor를 사용할 수 있는 모든 Azure 지역에서 사용할 수 있습니다.

SQL 인사이트 열기

SQL 인사이트(미리 보기)를 열려면 다음을 수행합니다.

  1. Azure Portal에서 Azure Monitor 메뉴로 이동합니다.
  2. 인사이트 섹션에서 SQL(미리 보기)을 선택합니다.
  3. 모니터링 중인 SQL 리소스에 대한 환경을 로드할 타일을 선택합니다.

Azure Portal에서 SQL 인사이트를 보여 주는 스크린샷

자세한 내용은 SQL 인사이트(미리 보기) 사용SQL 인사이트(미리 보기) 문제 해결을 참조하세요.

참고 항목

온-프레미스 SQL Server 인스턴스는 현재 SQL Insights(미리 보기)에서 지원되지 않습니다. Azure Portal의 레이블은 무시할 수 있습니다.

수집된 데이터

SQL 인사이트는 원격으로 모든 모니터링을 수행합니다. SQL Server를 실행하는 가상 머신에는 에이전트가 설치되어 있지 않습니다.

SQL 인사이트는 전용 모니터링 가상 머신을 사용하여 SQL 리소스에서 데이터를 원격으로 수집합니다. 각 모니터링 가상 머신에는 Azure Monitor 에이전트와 WLI(워크로드 인사이트) 확장이 설치되어 있습니다.

WLI 확장에는 오픈 소스 Telegraf 에이전트가 포함됩니다. SQL 인사이트는 데이터 수집 규칙을 사용하여 Telegraf의 SQL Server 플러그 인에 대한 데이터 컬렉션 설정을 지정합니다.

Azure SQL Database, Azure SQL Managed Instance 및 SQL Server에 다양한 데이터 집합을 사용할 수 있습니다. 다음 표에서는 사용 가능한 데이터를 설명합니다. 모니터링 프로필을 만들 때 수집할 데이터 세트와 수집 빈도를 사용자 지정할 수 있습니다.

테이블에는 다음 열이 있습니다.

  • 식별 이름: 모니터링 프로필을 만들 때 Azure Portal에 표시되는 쿼리 이름입니다.
  • 구성 이름: 모니터링 프로필을 편집할 때 Azure Portal에 표시되는 쿼리 이름입니다.
  • 네임스페이스: Log Analytics 작업 영역에 있는 쿼리의 이름입니다. 이 식별자는 InsighstMetrics 테이블의 Tags 열에 있는 Namespace 속성에 표시됩니다.
  • DMV: 데이터 세트를 생성하는 데 사용되는 동적 관리 뷰입니다.
  • 기본적으로 사용: 기본적으로 데이터가 수집되는지 여부입니다.
  • 기본 수집 빈도: 기본적으로 데이터가 수집되는 빈도입니다.

Azure SQL Database에 대한 데이터

식별 이름 구성 이름 네임스페이스 DMV 기본값으로 사용 설정됨 기본 수집 빈도
DB 대기 통계 AzureSQLDBWaitStats sqlserver_azuredb_waitstats sys.dm_db_wait_stats 아니요 해당 없음
DBO 대기 통계 AzureSQLDBOsWaitstats sqlserver_waitstats sys.dm_os_wait_stats 60초
메모리 클럭 AzureSQLDBMemoryClerks sqlserver_memory_clerks sys.dm_os_memory_clerks 60초
데이터베이스 I/O AzureSQLDBDatabaseIO sqlserver_database_io sys.dm_io_virtual_file_stats
sys.database_files
tempdb.sys.database_files
60초
서버 속성 AzureSQLDBServerProperties sqlserver_server_properties sys.dm_os_job_object
sys.database_files
sys.databases
sys.database_service_objectives
60초
성능 카운터 AzureSQLDBPerformanceCounters sqlserver_performance sys.dm_os_performance_counters
sys.databases
60초
리소스 통계 AzureSQLDBResourceStats sqlserver_azure_db_resource_stats sys.dm_db_resource_stats 60초
리소스 거버넌스 AzureSQLDBResourceGovernance sqlserver_db_resource_governance sys.dm_user_db_resource_governance 60초
요청 AzureSQLDBRequests sqlserver_requests sys.dm_exec_sessions
sys.dm_exec_requests
sys.dm_exec_sql_text
아니요 해당 없음
스케줄러 AzureSQLDBSchedulers sqlserver_schedulers sys.dm_os_schedulers 아니요 해당 없음

Azure SQL Managed Instance용 데이터

식별 이름 구성 이름 네임스페이스 DMV 기본값으로 사용 설정됨 기본 수집 빈도
대기 통계 AzureSQLMIOsWaitstats sqlserver_waitstats sys.dm_os_wait_stats 60초
메모리 클럭 AzureSQLMIMemoryClerks sqlserver_memory_clerks sys.dm_os_memory_clerks 60초
데이터베이스 I/O AzureSQLMIDatabaseIO sqlserver_database_io sys.dm_io_virtual_file_stats
sys.master_files
60초
서버 속성 AzureSQLMIServerProperties sqlserver_server_properties sys.server_resource_stats 60초
성능 카운터 AzureSQLMIPerformanceCounters sqlserver_performance sys.dm_os_performance_counters
sys.databases
60초
리소스 통계 AzureSQLMIResourceStats sqlserver_azure_db_resource_stats sys.server_resource_stats 60초
리소스 거버넌스 AzureSQLMIResourceGovernance sqlserver_instance_resource_governance sys.dm_instance_resource_governance 60초
요청 AzureSQLMIRequests sqlserver_requests sys.dm_exec_sessions
sys.dm_exec_requests
sys.dm_exec_sql_text
아니요 해당 없음
스케줄러 AzureSQLMISchedulers sqlserver_schedulers sys.dm_os_schedulers 아니요 해당 없음

SQL Server용 데이터

식별 이름 구성 이름 네임스페이스 DMV 기본값으로 사용 설정됨 기본 수집 빈도
대기 통계 SQLServerWaitStatsCategorized sqlserver_waitstats sys.dm_os_wait_stats 60초
메모리 클럭 SQLServerMemoryClerks sqlserver_memory_clerks sys.dm_os_memory_clerks 60초
데이터베이스 I/O SQLServerDatabaseIO sqlserver_database_io sys.dm_io_virtual_file_stats
sys.master_files
60초
서버 속성 SQLServerProperties sqlserver_server_properties sys.dm_os_sys_info 60초
성능 카운터 SQLServerPerformanceCounters sqlserver_performance sys.dm_os_performance_counters 60초
볼륨 공간 SQLServerVolumeSpace sqlserver_volume_space sys.master_files 60초
SQL Server CPU SQLServerCpu sqlserver_cpu sys.dm_os_ring_buffers 60초
스케줄러 SQLServerSchedulers sqlserver_schedulers sys.dm_os_schedulers 아니요 해당 없음
요청 SQLServerRequests sqlserver_requests sys.dm_exec_sessions
sys.dm_exec_requests
sys.dm_exec_sql_text
아니요 해당 없음
가용성 복제본 상태 SQLServerAvailabilityReplicaStates sqlserver_hadr_replica_states sys.dm_hadr_availability_replica_states
sys.availability_replicas
sys.availability_groups
sys.dm_hadr_availability_group_states
아니요 60초
가용성 데이터베이스 복제본 SQLServerDatabaseReplicaStates sqlserver_hadr_dbreplica_states sys.dm_hadr_database_replica_states
sys.availability_replicas
아니요 60초