WMI 이벤트 경고 만들기

적용 대상:SQL ServerAzure 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 사용

  1. 개체 탐색기에서 더하기 기호를 선택하여 WMI 이벤트 경고를 만들려는 서버를 확장합니다.

  2. 더하기 기호를 선택하여 SQL Server 에이전트를 확장합니다.

  3. 경고 를 마우스 오른쪽 단추로 클릭하고 새 경고를 선택합니다.

  4. 새 경고 대화 상자의 이름 상자에 이 경고의 이름을 입력합니다.

  5. 사용 확인란을 선택하여 경고를 실행할 수 있도록 합니다. 기본적으로 사용 이 선택됩니다.

  6. 유형 목록에서 WMI 이벤트 경고를 선택합니다.

  7. WMI 이벤트 경고 정의네임스페이스 상자에 이 경고를 트리거할 WMI 이벤트를 식별하는 WQL(WMI Query Language) 문에 대한 WMI 네임스페이스를 지정합니다.

  8. 쿼리 상자에 이 경고가 응답하는 이벤트를 식별할 WQL 문을 지정합니다.

  9. 확인을 선택합니다.

Transact-SQL 사용

  1. 개체 탐색기에서 데이터베이스 엔진인스턴스에 연결합니다.

  2. 표준 도구 모음에서 새 쿼리를 선택합니다.

  3. 다음 예제를 복사하여 쿼리 창에 붙여넣고 실행을 선택합니다.

    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
    

다음 단계