第 6 课:添加事件提供程序

在本课中,将配置一个非宿主事件提供程序,以后向 Weather 应用程序提交事件时将使用该提供程序。然后,将升级 Notification Services 实例,应用对应用程序数据库所做的更改。

事件提供程序概述

事件提供程序可以收集事件数据,并将其提交给 Notification Services。事件提供程序提交一组事件时,会将事件提交给一个事件类视图。该组事件(称为“事件批次”**)将被插入事件类视图。然后,每个事件将成为基础事件类表中的一行。

为了帮助您快速开发和部署 Notification Services 应用程序,Notification Services 包含了三个标准的宿主事件提供程序、一个文件系统观察器、SQL Server 事件提供程序和 Analysis Services 事件提供程序。使用这些事件提供程序,可以方便地从一个 XML 文件收集事件,使用 Transact-SQL 查询收集事件,以及使用 MDX 查询收集事件。Notification Services 引擎承载了上述所有事件提供程序。也就是说,Notification Services 引擎可以启动和运行宿主事件提供程序。

您可以在应用程序定义中指定预定义的名称和自定义操作参数,以此在应用程序中使用标准的事件提供程序。有关详细信息,请参阅定义事件提供程序

如果标准事件提供程序不符合应用程序的要求,则可开发事件提供程序,以适应具体的环境和事件源。Notification Services 引擎可以承载自定义事件提供程序。自定义事件提供程序也可以是非宿主事件提供程序。

非宿主事件提供程序是独立的应用程序,该程序向通知应用程序提交事件,但不以 Notification Services 引擎为宿主。如果要定义一个非宿主事件提供程序,则需在 ADF 中为该非宿主事件提供程序指定一个名称。此名称将用于跟踪事件收集和排除事件收集故障。

WeatherSPEventProvider 事件提供程序

对于此应用程序,将在 ADF 中添加一个非宿主事件提供程序。如前所述,将为此事件提供程序提供一个名称,以便以后可以确定该程序提交给应用程序的事件。

事件提供程序的名称为 WeatherSPEventProvider。稍后,将使用存储过程向 Weather 应用程序提交事件,并在提交事件时使用 WeatherSPEventProvider 这个名称。

在 ADF 中添加提供程序代码

本部分的 XML 定义了非宿主事件提供程序。检查 XML,然后按照说明将 XML 复制到 ADF。

在 ADF 中添加提供程序代码

  1. 单击**“复制代码”**以将 XML 复制到 Windows 剪贴板。

    <!-- Event Providers -->
    <Providers>
      <NonHostedProvider>
        <ProviderName>WeatherSPEventProvider</ProviderName>
      </NonHostedProvider>
    </Providers>
    
  2. 在解决方案资源管理器中,打开 WeatherADF.xml。

  3. 用刚刚复制的 XML 替换以下注释。

    <!-- Replace with Providers XML -->

  4. 在**“文件”菜单上,选择“保存 WeatherADF.xml”**。

更新 Notification Services 的实例

修改了 ADF 后,即可更新 Notification Services 实例,将事件提供程序的定义添加到应用程序数据库中。

更新 Notification Services 的实例

  1. 在对象资源管理器中,展开 Notification Services

  2. 右键单击 Tutorial,指向**“任务”,再选择“更新”**。

  3. 在**“更新实例”对话框中,单击“浏览”,找到 TutorialICF.xml 文件,再单击“打开”**。

  4. 在**“参数”**网格中,查看参数的值。使用与创建该实例时相同的值。

  5. 单击**“确定”**。

  6. 查看**“Notification Services - 更新摘要”对话框,再单击“更新”**。

  7. 更新操作完成后,单击**“关闭”**。

查看在应用程序数据库中所做的更改

更新实例时,Notification Services 会将有关事件提供程序的信息添加到 TutorialWeather 应用程序数据库中的 NSProviders 表中。

查看 TutorialWeather 事件提供程序

  1. 在解决方案资源管理器中,展开 Weather,再展开**“查询”**。

  2. 双击 ViewEventProviders.sql

    您可能必须连接到数据库引擎实例。

  3. 按 F5 运行 Transact-SQL 查询。

下一课

第 7 课:配置生成器和分发服务器

请参阅

概念

Notification Services 教程

其他资源

定义事件提供程序
生成通知解决方案
SQL Server Notification Services 简介

帮助和信息

获取 SQL Server 2005 帮助