WMI 이벤트 경고 만들기
적용 대상: SQL Server Azure SQL Managed Instance
Important
현재 Azure SQL Managed Instance에서는 SQL Server 에이전트 기능이 대부분 지원됩니다. 자세한 내용은 SQL Server와 Azure SQL Managed Instance 간의 T-SQL 차이점을 참조하세요.
이 문서에서는 SQL Server Management Studio 또는 Transact-SQL을 사용하여 SQL Server에서 서버 이벤트용 WMI 공급자가 모니터링하는 특정 SQL Server 이벤트가 발생할 때 생성되는 SQL Server 에이전트 경고를 만드는 방법에 대해 설명합니다.
WMI 공급자를 사용하여 SQL Server 이벤트를 모니터링하는 방법에 대한 자세한 내용은 서버 이벤트용 WMI 공급자 클래스 및 속성을 참조하세요. WMI 이벤트 경고 알림을 받는 데 필요한 사용 권한에 대한 자세한 내용은 SQL Server 에이전트 서비스의 계정 선택을 참조하세요. WQL에 대한 자세한 내용은 서버 이벤트용 WMI 공급자에 WQL 사용을 참조하세요.
제한 사항
SQL Server Management Studio에서는 전체 경고 시스템을 그래픽 방식으로 간편하게 관리할 수 있을 뿐만 아니라 인프라도 적합한 방식으로 구성할 수 있습니다.
master
데이터베이스에서xp_logevent
로 생성된 이벤트가 발생합니다. 따라서 경고에 대한@database_name
가'master'
또는 NULL이 아닌 경우xp_logevent
는 경고를 트리거하지 않습니다.SQL Server 에이전트를 실행하는 컴퓨터의 WMI 네임스페이스만 지원됩니다.
사용 권한
기본적으로 sysadmin 고정 서버 역할의 멤버만 sp_add_alert
를 실행할 수 있습니다.
SQL Server Management Studio 사용
개체 탐색기에서 더하기 기호를 선택하여 WMI 이벤트 경고를 만들려는 서버를 확장합니다.
더하기 기호를 선택하여 SQL Server 에이전트를 확장합니다.
경고 를 마우스 오른쪽 단추로 클릭하고 새 경고를 선택합니다.
새 경고 대화 상자의 이름 상자에 이 경고의 이름을 입력합니다.
사용 확인란을 선택하여 경고를 실행할 수 있도록 합니다. 기본적으로 사용 이 선택됩니다.
유형 목록에서 WMI 이벤트 경고를 선택합니다.
WMI 이벤트 경고 정의의 네임스페이스 상자에 이 경고를 트리거할 WMI 이벤트를 식별하는 WQL(WMI Query Language) 문에 대한 WMI 네임스페이스를 지정합니다.
쿼리 상자에 이 경고가 응답하는 이벤트를 식별할 WQL 문을 지정합니다.
확인을 선택합니다.
Transact-SQL 사용
개체 탐색기에서 데이터베이스 엔진인스턴스에 연결합니다.
표준 도구 모음에서 새 쿼리를 선택합니다.
다음 예시를 복사하여 쿼리 창에 붙여넣고 실행을 선택합니다.
USE msdb; GO EXEC dbo.sp_add_alert @name = N'Test Alert 2', @message_id = 54001, @notification_message = N'Error 54001 has occurred on the Sales.SalesOrderDetail table on the AdventureWorks2022 database.', @wmi_namespace = '\.\root\Microsoft\SqlServer\ServerEvents', @wmi_query = N'SELECT * FROM ALTER_TABLE WHERE DatabaseName = ''AdventureWorks2022'' AND SchemaName = ''Sales'' AND ObjectType=''Table'' AND ObjectName = ''SalesOrderDetail'''; GO