서버 이벤트 클래스 및 속성에 대한 WMI 공급자

적용 대상:SQL Server

서버 이벤트용 WMI 공급자에 대한 프로그래밍 모델을 구성하는 두 가지 기본 범주의 이벤트가 있으며, 공급자에 대해 WQL 쿼리를 실행하여 쿼리할 수 있습니다. DDL(데이터 정의 언어) 이벤트 및 추적 이벤트입니다. QUEUE_ACTIVATION 서비스 브로커 이벤트와 BROKER_QUEUE_DISABLED 서비스 브로커 이벤트를 쿼리할 수도 있습니다.

이벤트 및 이벤트 그룹

서버 이벤트의 전체 목록을 얻으려면 다음 Transact-SQL 스크립트를 사용하여 카탈로그 뷰를 쿼리 sys.event_notification_event_types 합니다.

; WITH EventsCTE (Child, Level, Hierarchy)
AS (
    SELECT t.[type],
        0,
        CAST(t.[type_name] AS NVARCHAR(MAX))
    FROM sys.event_notification_event_types t
    WHERE t.parent_type IS NULL

    UNION ALL

    SELECT t.[type],
        Level + 1,
        CAST(rc.Hierarchy + '/' + cast(t.[type_name] AS NVARCHAR(MAX)) AS NVARCHAR(MAX))
    FROM sys.event_notification_event_types t
    INNER JOIN EventsCTE rc
        ON t.parent_type = rc.Child
    )
SELECT Level, Hierarchy
FROM EventsCTE
WHERE Level > 0
ORDER BY Hierarchy;

설명

예를 들어 이벤트에는 DDL_ASSEMBLY_EVENTS 모든 ALTER_ASSEMBLY이벤트 CREATE_ASSEMBLYDROP_ASSEMBLY 이벤트가 포함됩니다. 마찬가지로 이벤트에는 TRC_FULL_TEXT 모든 FT_CRAWL_ABORTED이벤트 FT_CRAWL_STARTEDFT_CRAWL_STOPPED 이벤트가 포함됩니다. ALL_EVENTS 에서는 모든 DDL 이벤트, 추적 이벤트 QUEUE_ACTIVATIONBROKER_QUEUE_DISABLED.

이벤트나 이벤트 그룹에서 쿼리할 수 있는 속성에 대해서는 이벤트 스키마를 참조하십시오. 기본적으로 이벤트 스키마는 다음 디렉터리에 설치됩니다.

C:\Program Files\Microsoft SQL Server\nnn\Tools\Binn\schemas\sqlserver\2006\11\events\events.xsd

예를 들어 이벤트를 참조하여 ALTER_DATABASE 해당 부모 이벤트는 해당 이벤트이며 해당 속성은 DDL_SERVER_LEVEL_EVENTS 다음과 같습니다 TSQLCommandDatabaseName. 또한 이 이벤트는 속성SQLInstance, , PostTimeComputerNameSPIDLoginName. 이벤트에 자식 이벤트가 없습니다.

참고 항목

DDL과 같은 작업을 수행하는 시스템 저장 프로시저에서 이벤트 알림을 발생시킬 수도 있습니다. 이벤트 알림을 테스트하여 실행되는 시스템 저장 프로시저에 대한 응답을 확인합니다. 예를 들어 CREATE TYPE 문과 sp_addtype 저장 프로시저는 모두 이벤트에 생성 CREATE_TYPE 되는 이벤트 알림을 실행합니다. 자세한 내용은 DDL 이벤트를 참조 하세요.