HtmlLogProvider 示例

新建日期: 2006 年 4 月 14 日

HtmlLogProvider 示例说明如何创建自定义日志提供程序 - Html 日志提供程序,它可将日志记录输出写入 HTML 文档。

有关如何创建自定义日志提供程序的详细信息,请参阅Creating a Custom Log Provider。有关使用 Integration Services 中的日志提供程序的一般信息,请参阅 Integration Services 日志提供程序

自定义日志提供程序先从现有的文件连接管理器中获取扩展名为 .htm.html 的目标文件的名称。然后它将记录事件输出到指定目标文件的 HTML 表中,并忽略最后两个标准列(dataCode 和 dataBytes),这两列中可能包含在 HTML 文档中无法正确显示的二进制数据。为了便于再次使用,该示例将 HTML 日志记录代码封装到独立的 HtmlLogWriter 帮助器类中。此帮助器类有 OpenLogHtml、LogHtml 和 CloseLogHtml 子例程,它们分别使用 OpenLogLogCloseLog 调用。基于 Itanium 的操作系统不支持该示例。

此代码示例实现了以下功能:

  • 替换 LogProviderBase 类。
  • 不要求开发人员编写自定义持久性代码的默认持久性支持。
ms365184.note(zh-cn,SQL.90).gif重要提示:
提供的示例仅供教学使用。这些示例不是针对生产环境设计的,也没有在生产环境中进行测试。对于这些示例,Microsoft 不提供相关的技术支持。

运行示例

如果已经知道如何查找、生成和安装代码示例,则可以直接转到 测试示例部分,阅读有关如何配置和运行代码示例的信息。

必备条件

此示例要求安装下列组件:

  • Microsoft Visual Studio 2005
  • Microsoft SQL Server 2005 Integration Services

位置

如果代码示例安装到默认位置,则该示例将位于以下目录中:

C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services\\Programming Samples\Control Flow\HtmlLogProvider Sample

代码示例的 C# 解决方案位于 CS 目录,而 Visual Basic 解决方案位于 VB 目录。

有关安装示例所需的两步过程的详细信息,请参阅 安装示例。若要获取示例的最新版本,包括在最初发布 SQL Server 2005 之后发布的新示例,请参阅 SQL Server 2005 示例和示例数据库(2006 年 4 月)

生成示例

如果尚未在 Samples 文件夹中生成强名称密钥文件,则请使用以下过程生成此密钥文件。在**“项目属性”对话框的“签名”**选项卡中配置示例项目,以在生成时使用此密钥文件对程序集签名。

生成强名称密钥文件

  1. 若要打开 Microsoft Visual Studio 2005 命令提示,请单击**“开始”,依次指向“所有程序”Microsoft Visual Studio 2005“Visual Studio 工具”,然后单击“Visual Studio 2005 命令提示”**。

    - 或 -

    若要打开 Microsoft .NET Framework 命令提示,请单击**“开始”,依次指向“所有程序”Microsoft .NET Framework SDK v2.0,然后单击“SDK 命令提示”**。

  2. 在命令提示符下,使用更改目录 (CD) 命令将命令提示窗口的当前文件夹更改为 Samples 文件夹。在此文件夹中创建的密钥文件将由所有 SQL Server 2005 代码示例使用。

    ms365184.note(zh-cn,SQL.90).gif注意:
    若要确定示例所在的文件夹,请单击“开始”,依次指向“所有程序”Microsoft SQL Server 2005“文档和教程”,然后单击“示例目录”。如果使用了默认安装位置,则示例将位于 <system_drive>:\Program Files\Microsoft SQL Server\90\Samples 中。
  3. 在命令提示符下,运行以下命令以生成密钥文件:

    sn -k SampleKey.snk
    
    ms365184.note(zh-cn,SQL.90).gif重要提示:
    有关强名称密钥对的详细信息,请参阅 MSDN 上 .NET 开发中心中的“安全简讯:.NET Framework 中的强名称和安全性”。

在 Microsoft Visual Studio 2005 中生成示例

  1. 在**“文件”|“打开”菜单中,单击“项目”**并打开 HtmlLogProviderVB.slnHtmlLogProviderCS.sln

  2. 在**“生成”菜单上,单击“生成解决方案”**以生成解决方案。

安装示例

同时提供此示例的 Visual Basic 和 C# 版本。为了区分每个示例版本的程序集,在输出程序集的名称中追加有 CS 或 VB。成功生成组件后,在 Business Intelligence Development Studio 中按照以下步骤将其添加为包中的连接管理器。

将组件复制到 Connections 文件夹

  1. 打开 Windows 资源管理器或要在文件系统中使用的首选应用程序。

  2. 将程序集(HtmlLogProviderCS.dll 或 HtmlLogProviderVB.dll)复制到位于 %system%\Program Files\Microsoft SQL Server\90\DTS 的 LogProviders 文件夹中。

通过拖放程序集的方式将组件安装到全局程序集缓存 (GAC) 中

  1. 打开 Windows 资源管理器或要在文件系统中使用的首选应用程序。

  2. 将程序集从 LogProviders 文件夹拖放到全局程序集缓存 (GAC) 所在的文件夹,该文件夹位于 %system%\assembly。

使用 gacutil.exe 将组件安装到全局程序集缓存 (GAC) 中

  1. 打开命令提示符窗口。

  2. 键入以下命令以将 C# 版本的组件安装到 GAC 中:

    gacutil.exe -iF " C:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Programming Samples\Control Flow\HtmlLogProvider Sample\CS\HtmlLogProviderCS\bin\Debug\HtmlLogProviderCS.dll"
    

    - 或 -

    键入以下命令,将 Visual Basic 版本的组件安装到 GAC 中:

    gacutil.exe -iF " C:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Programming Samples\Control Flow\HtmlLogProvider Sample\VB\HtmlLogProviderVB\bin\Debug\HtmlLogProviderVB.dll"
    

测试示例

现在您可以测试包中的自定义日志提供程序。

使用包中的示例日志提供程序

  1. 在 Integration Services 项目中,添加一个新文件连接管理器并将其配置为指向扩展名为 **.**htm 或 **.**html 的文件。

  2. SSIS 菜单中,选择**“日志记录”**,并添加 HTML 文件 (CS) 的自定义日志提供程序或 HTML 文件 (VB) 的自定义日志提供程序。

  3. 在“配置”列,输入文件连接管理器的名称。

  4. 适当配置日志记录,以使包及其组件可将其事件记录到自定义日志提供程序中。

  5. 运行该包,然后打开 HTML 文件以查看日志记录输出。