Classes e propriedades do Provedor WMI para Eventos de Servidor

Aplica-se a: SQL Server

Há duas categorias principais de eventos que compõem o modelo de programação para o Provedor WMI para Eventos de Servidor, que podem ser consultados emitindo consultas WQL no provedor. Esses são eventos DDL (linguagem de definição de dados) e eventos de rastreamento. Os QUEUE_ACTIVATION eventos do agente de serviços e BROKER_QUEUE_DISABLED também podem ser consultados.

Eventos e grupos de eventos

Para obter uma lista completa de eventos do servidor, consulte a exibição do sys.event_notification_event_types catálogo com o script Transact-SQL a seguir.

; 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;

Comentários

O DDL_ASSEMBLY_EVENTS evento, por exemplo, inclui qualquer ALTER_ASSEMBLYevento , CREATE_ASSEMBLY, e .DROP_ASSEMBLY Da mesma forma, o TRC_FULL_TEXT evento inclui qualquer FT_CRAWL_ABORTEDevento , FT_CRAWL_STARTED, e .FT_CRAWL_STOPPED ALL_EVENTS abrange todos os eventos DDL, eventos QUEUE_ACTIVATIONde rastreamento e BROKER_QUEUE_DISABLED.

Para saber quais propriedades podem ser examinadas de um evento ou grupo de eventos, consulte o esquema de evento. Por padrão, o esquema de eventos é instalado no seguinte diretório:

C: \ Arquivos de programas \ Microsoft SQL Server \ nn \ Tools \ Binn \ schemas \ sqlserver \ 2006 \ 11 \ events \ events.xsd

Por exemplo, ao se referir ao ALTER_DATABASE evento, seu evento pai é DDL_SERVER_LEVEL_EVENTS e suas propriedades são TSQLCommand e DatabaseName. O evento também herda as propriedades SQLInstance, PostTime, ComputerNameSPID e LoginName. O evento não tem nenhum evento filho.

Observação

Os procedimentos armazenados do sistema que executam operações similares a DDL também podem acionar notificações de eventos. Teste as notificações de eventos para determinar suas respostas aos procedimentos armazenados que são executados. Por exemplo, a instrução e sp_addtype o CREATE TYPE procedimento armazenado dispararão uma notificação de evento criada em um CREATE_TYPE evento. Para obter mais informações, consulte Eventos DDL.