서버 이벤트 클래스 및 속성에 대한 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_ASSEMBLY
와 DROP_ASSEMBLY
이벤트가 포함됩니다. 마찬가지로 이벤트에는 TRC_FULL_TEXT
모든 FT_CRAWL_ABORTED
이벤트 FT_CRAWL_STARTED
와 FT_CRAWL_STOPPED
이벤트가 포함됩니다. ALL_EVENTS
에서는 모든 DDL 이벤트, 추적 이벤트 QUEUE_ACTIVATION
및 BROKER_QUEUE_DISABLED
.
이벤트나 이벤트 그룹에서 쿼리할 수 있는 속성에 대해서는 이벤트 스키마를 참조하십시오. 기본적으로 이벤트 스키마는 다음 디렉터리에 설치됩니다.
C:\Program Files\Microsoft SQL Server\nnn\Tools\Binn\schemas\sqlserver\2006\11\events\events.xsd
예를 들어 이벤트를 참조하여 ALTER_DATABASE
해당 부모 이벤트는 해당 이벤트이며 해당 속성은 DDL_SERVER_LEVEL_EVENTS
다음과 같습니다 TSQLCommand
DatabaseName
. 또한 이 이벤트는 속성SQLInstance
, , PostTime
ComputerName
및 SPID
LoginName
. 이벤트에 자식 이벤트가 없습니다.
참고 항목
DDL과 같은 작업을 수행하는 시스템 저장 프로시저에서 이벤트 알림을 발생시킬 수도 있습니다. 이벤트 알림을 테스트하여 실행되는 시스템 저장 프로시저에 대한 응답을 확인합니다. 예를 들어 CREATE TYPE
문과 sp_addtype
저장 프로시저는 모두 이벤트에 생성 CREATE_TYPE
되는 이벤트 알림을 실행합니다. 자세한 내용은 DDL 이벤트를 참조 하세요.