ETL学习之八:添加日志记录

Microsoft SQL Server 2005 Integration Services (SSIS) 包含日志记录功能,这些功能使您可以通过提供任务和容器事件跟踪来对包执行进行疑难排解和监控。日志记录功能非常灵活,可以在包级别或在包中的各个任务和容器上启用。可以选择要记录的事件,也可以对单个包创建多个日志。

日志记录由日志提供程序提供。每个日志提供程序可以将日志记录信息写入不同的格式和目标类型。Integration Services 提供了以下日志提供程序:

  • 文本文件
  • SQL Server Profiler
  • Windows 事件日志
  • SQL Server
  • XML 文件
  • 在本课中,您将为第 3 课:添加包配置中创建的包创建副本。使用这个新包,您将添加并配置日志记录,以在包执行过程中监控特定事件。

 

在本任务中,您将创建 SSIS Tutorial 项目中包含的 Lesson 3.dtsx 包的副本。您将使用这一新副本来完成第 4 课剩余部分。

由于包配置信息将随包本身一同复制,所以您还必须修改包配置以反转上一课中所做的一项更改,并将 ForEach 循环指回原始的示例数据文件夹。

创建 Lesson 4 包
  1. 如果 Business Intelligence Development Studio 尚未打开,请单击“开始”,指向“所有程序”,指向 Microsoft SQL Server 2005,再单击 Business Intelligence Development Studio。

  2. 在“文件”菜单上,单击“打开”,单击“项目/解决方案”,选择 SSIS Tutorial,再单击“打开”,然后双击 SSIS Tutorial.sln。

  3. 在解决方案资源管理器中,右键单击 Lesson 3.dtsx,再单击“复制”。

  4. 在解决方案资源管理器中,右键单击“SSIS 包”,再单击“粘贴”。

    默认情况下,复制的包命名为 Lesson 4.dtsx。

  5. 在解决方案资源管理器中,双击 Lesson 4.dtsx 打开该包。

修改包配置
  1. 在记事本或其他任何文本编辑器中,找到并打开您在上一课中使用包配置向导创建的 SSISTutorial.dtsConfig 配置文件。

  2. 将 ConfiguredValue 元素的值更改回原始的示例数据文件夹。默认情况下,示例数据安装在 c:/Program Files/Microsoft SQL Server/90/Samples/Integration Services/Tutorial/Creating a Simple ETL Package/Sample Data 文件夹中。

注意:
在 XML 配置文件中,无需使用引号将路径括起。

 

 

  1. 保存更改,再关闭文本编辑器。

 

在该任务中,将要为 Lesson 4.dtsx 包中的数据流启用日志记录。然后,将配置一个文本文件日志提供程序,以记录 PipelineExecutionPlan 和 PipelineExecuteTrees 事件。该文本文件日志提供程序可以创建便于查看并可轻松传输的日志。由于便于使用,所以这些日志文件在包的基本测试阶段非常有用。

向包中添加日志记录
  1. 在 SSIS 菜单上,单击“日志记录”。

  2. 在“配置 SSIS 日志”对话框的“容器”窗格中,确保选中了最前面的表示包的对象。

  3. 在“提供程序和日志”选项卡的“提供程序类型”框中,选择“用于文本文件的 SSIS 日志提供程序”,然后单击“添加”。

    Integration Services 将向包中添加一个默认名称为用于文本文件的 SSIS 日志提供程序的新文本文件日志提供程序。现在便可对新的日志提供程序进行配置。

  4. 在“名称”列中,键入 Lesson 4 Log File。

  5. 也可以修改“说明”。

  6. 在“配置”列中,单击“<新建连接>”,以指定用于写入日志信息的目标。

    在“文件连接管理器编辑器”对话框中,对“使用类型”选择“创建文件”,然后单击“浏览”。默认情况下,“选择文件”对话框将打开项目文件夹,但您可以将日志信息保存到任何位置。

  7. 在“选择文件”对话框的“文件名”框中,键入 TutorialLog.log,然后单击“打开”。

  8. 单击“确定”关闭“文件连接管理器编辑器”对话框。

  9. 在“容器”窗格中,展开包容器层次结构的所有节点,然后清除 Extract Sample Currency Data 复选框之外的所有复选框。

  10. 在“详细信息”选项卡的“事件”列中,选择 PipelineExecutionPlan 和 PipelineExecutionTrees 事件。

  11. 单击“高级”可查看日志提供程序将为每个事件写入日志的详细信息。默认情况下,将为您指定的事件自动选择所有信息类别。

  12. 单击“基本”返回到“详细信息”选项卡。

  13. 在“提供程序和日志”选项卡上的“名称”列中,选择 Lesson 4 Log File。为包创建日志提供程序后,可以选择取消选择它以临时关闭日志记录,而不必删除和重新创建日志提供程序。

  14. 单击“确定”。

 

在该任务中,将运行 Lesson 4.dtsx 包。执行完包之后,将验证日志提供程序所生成的日志文件的内容。

运行 Lesson 4 教程包
  1. 在“调试”菜单上,单击“启动调试”。

  2. 当包运行完毕后,在“调试”菜单上,单击“停止调试”。

检查生成的日志文件
  • 使用记事本或其他任何文本编辑器,打开 TutorialLog.log 文件。

  • 尽管为 PipelineExecutionPlan 和 PipelineExecutionTrees 事件所生成的信息的语义超出了本教程的讨论范围,但是,可以看到第一行列出了在“配置 SSIS 日志”对话框的“详细信息”选项卡中所指定的信息字段。此外,可以验证已为 Foreach 循环的每个迭代记录了所选择的两个事件:PipelineExecutionPlan 和 PipelineExecutionTrees。

    有关如何使用日志文件的详细信息,请参阅在包中实现日志记录。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 如果你想成为一名ETL工程师,以下是一个学习计划的建议: 1. 学习数据库知识: ETL工程师需要对数据库有深入的了解,包括SQL语言、数据库设计和优化等方面。你可以通过学习相关的教材、参加培训课程或者在线学习平台来提升自己的数据库知识。 2. 掌握ETL工具: ETL工程师需要熟悉常用的ETL工具,比如Informatica、DataStage、SSIS等。你可以通过阅读官方文档、参加培训课程或者实际项目经验来掌握这些工具的使用。 3. 理解业务需求: ETL工程师需要对业务数据有深入的了解,能够理解业务需求并将其转化为ETL工作流的设计。你可以通过与业务部门的合作、参与项目实施等方式来提升自己的业务理解能力。 4. 学习数据仓库设计: 数据仓库是ETL工程师的核心工作之一,你需要学习数据仓库的设计原理、维度建模等知识。可以通过阅读相关的书籍、参加培训课程或者实际项目经验来提升自己的数据仓库设计能力。 5. 实践项目经验: 除了理论知识,实际项目经验对于成为一名优秀的ETL工程师也非常重要。你可以通过参与实际项目、做一些个人的小项目或者参加一些开源项目来积累实践经验。 总之,成为一名优秀的ETL工程师需要综合的技术能力和业务理解能力。通过学习数据库知识、掌握ETL工具、理解业务需求、学习数据仓库设计和积累实践经验,你可以逐步提升自己的能力,并成为一名出色的ETL工程师。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *2* [ETL工作经验分享(1)](https://blog.csdn.net/weixin_39408986/article/details/106750488)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [大数据测试之ETL测试入门](https://blog.csdn.net/lyy51/article/details/122002610)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值