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 包
如果 Business Intelligence Development Studio 尚未打开,请单击“开始”,指向“所有程序”,指向 Microsoft SQL Server 2005,再单击 Business Intelligence Development Studio。
在“文件”菜单上,单击“打开”,单击“项目/解决方案”,选择 SSIS Tutorial,再单击“打开”,然后双击 SSIS Tutorial.sln。
在解决方案资源管理器中,右键单击 Lesson 3.dtsx,再单击“复制”。
在解决方案资源管理器中,右键单击“SSIS 包”,再单击“粘贴”。
默认情况下,复制的包命名为 Lesson 4.dtsx。
在解决方案资源管理器中,双击 Lesson 4.dtsx 打开该包。
修改包配置
在记事本或其他任何文本编辑器中,找到并打开您在上一课中使用包配置向导创建的 SSISTutorial.dtsConfig 配置文件。
将 ConfiguredValue 元素的值更改回原始的示例数据文件夹。默认情况下,示例数据安装在 c:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Tutorial\Creating a Simple ETL Package\Sample Data 文件夹中。
注意: |
---|
在 XML 配置文件中,无需使用引号将路径括起。 |
- 保存更改,再关闭文本编辑器。
在该任务中,将要为 Lesson 4.dtsx 包中的数据流启用日志记录。然后,将配置一个文本文件日志提供程序,以记录 PipelineExecutionPlan 和 PipelineExecuteTrees 事件。该文本文件日志提供程序可以创建便于查看并可轻松传输的日志。由于便于使用,所以这些日志文件在包的基本测试阶段非常有用。
向包中添加日志记录
在 SSIS 菜单上,单击“日志记录”。
在“配置 SSIS 日志”对话框的“容器”窗格中,确保选中了最前面的表示包的对象。
在“提供程序和日志”选项卡的“提供程序类型”框中,选择“用于文本文件的 SSIS 日志提供程序”,然后单击“添加”。
Integration Services 将向包中添加一个默认名称为用于文本文件的 SSIS 日志提供程序的新文本文件日志提供程序。现在便可对新的日志提供程序进行配置。
在“名称”列中,键入 Lesson 4 Log File。
也可以修改“说明”。
在“配置”列中,单击“<新建连接>”,以指定用于写入日志信息的目标。
在“文件连接管理器编辑器”对话框中,对“使用类型”选择“创建文件”,然后单击“浏览”。默认情况下,“选择文件”对话框将打开项目文件夹,但您可以将日志信息保存到任何位置。
在“选择文件”对话框的“文件名”框中,键入 TutorialLog.log,然后单击“打开”。
单击“确定”关闭“文件连接管理器编辑器”对话框。
在“容器”窗格中,展开包容器层次结构的所有节点,然后清除 Extract Sample Currency Data 复选框之外的所有复选框。
在“详细信息”选项卡的“事件”列中,选择 PipelineExecutionPlan 和 PipelineExecutionTrees 事件。
单击“高级”可查看日志提供程序将为每个事件写入日志的详细信息。默认情况下,将为您指定的事件自动选择所有信息类别。
单击“基本”返回到“详细信息”选项卡。
在“提供程序和日志”选项卡上的“名称”列中,选择 Lesson 4 Log File。为包创建日志提供程序后,可以选择取消选择它以临时关闭日志记录,而不必删除和重新创建日志提供程序。
单击“确定”。
在该任务中,将运行 Lesson 4.dtsx 包。执行完包之后,将验证日志提供程序所生成的日志文件的内容。
运行 Lesson 4 教程包
在“调试”菜单上,单击“启动调试”。
当包运行完毕后,在“调试”菜单上,单击“停止调试”。
检查生成的日志文件
使用记事本或其他任何文本编辑器,打开 TutorialLog.log 文件。
尽管为 PipelineExecutionPlan 和 PipelineExecutionTrees 事件所生成的信息的语义超出了本教程的讨论范围,但是,可以看到第一行列出了在“配置 SSIS 日志”对话框的“详细信息”选项卡中所指定的信息字段。此外,可以验证已为 Foreach 循环的每个迭代记录了所选择的两个事件:PipelineExecutionPlan 和 PipelineExecutionTrees。
有关如何使用日志文件的详细信息,请参阅。
转载于:https://www.cnblogs.com/millen/archive/2009/03/20/1417800.html
ETL学习之八:添加日志记录相关推荐
- 模块单元学习笔记(日志记录模块os模块sys)
一.日志记录模块 Logging 默认情况下,logging将日志打印到屏幕,日志级别大小关系为:CRITICAL > ERROR > WARNING > INFO > DEB ...
- Web API——添加Swagger、SQL Server、日志记录、导出到Excel和Docker
目录 介绍 要求 1.创建一个新的Web API项目 2.将Swagger添加到项目 3.将项目连接到SQL Server数据库 4.登录到SQL Server 5.添加"导出到Excel& ...
- 基于.NetCore3.1系列 —— 日志记录之日志核心要素揭秘
前言 在上一篇中,我们已经了解了内置系统的默认配置和自定义配置的方式,在学习了配置的基础上,我们进一步的对日志在程序中是如何使用的深入了解学习.所以在这一篇中,主要是对日志记录的核心机制进行学习说明. ...
- python日志记录_Python日志记录
python日志记录 To start, logging is a way of tracking events in a program when it runs and is in executi ...
- SpringBoot 项目使用 SLF4J+logback 进行日志记录,来增强可维护性
点击上方 好好学java ,选择 星标 公众号重磅资讯,干货,第一时间送达 今日推荐:推荐19个github超牛逼项目!个人原创100W +访问量博客:点击前往,查看更多 作者:云深不知处 blog. ...
- Spring Cloud 设置Feign的日志记录级别
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-c ...
- Java学习day051 记录日志(基本日志、高级日志、修改日志管理器配置、本地化、处理器、过滤器、格式化器、日志记录说明)
使用的教材是java核心技术卷1,我将跟着这本书的章节同时配合视频资源来进行学习基础java知识. day051 记录日志(基本日志.高级日志.修改日志管理器配置.本地化.处理器.过滤器.格式化器 ...
- 【Spring学习】AOP实现日志记录
AOP知识点 AOP,面向切面编程.通过预编译方式和运行时动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术. AOP编程思想就是把很多类对象中的横切问题点,从业务逻辑中分离出来,减少 ...
- 74. 学会使用 SAP ABAP Application Log 在代码里添加应用日志记录功能
文章目录 ABAP 应用日志对象的概念和创建 如何创建需要通过应用日志记录的消息(message) 使用应用日志创建 API 进行日志记录的创建 使用事物码 SLG1 查看生成的应用日志内容 总结 笔 ...
- 浅析Entity Framework Core2.0的日志记录与动态查询条件
前言 Entity Framework Core 2.0更新也已经有一段时间了,园子里也有不少的文章.. 本文主要是浅析一下Entity Framework Core2.0的日志记录与动态查询条件 去 ...
最新文章
- 2022-2028年中国pu管行业市场深度分析及市场规模预测报告
- 据lovecherry的一步一步学Remoting序列文章学习.net Remoting日记(2)
- SpringMVC中@ResponseBody和@RequestBody的使用
- JQuery对selecte中的元素的操作
- ANTLR入门:构建一种简单的表达语言
- 使用TensorFlow概率预测航空乘客人数
- 前端学习(1808):前端调试之微博头部开发
- slice 定义和用法
- mysqld_exporter报错Error 1146: Table 'my2.status' doesn't exist
- oracle的ocm怎么算通过,Oracle 11g OCM的通过祝贺信
- 创建Dockerfile,构建jdk+tomcat环境
- Maven发布工程到公共库
- sql server 2000 生成数据库的SQL脚本
- poi之Excel下载之详细设置
- PDF虚拟打印机(virtual printer)软件汇总
- css canvas_混合canvas API和HTML / CSS模型
- python scipy 密度函数 分位数 累计函数计算p值 卡方检验 t检验 F检验 假设检验 AB实验 显著性检验
- 深度学习笔记(50) 一维到三维推广
- 程序员啊 ,请保护好你的眼睛 !
- 【洛谷八连测R2】fateice-or
热门文章
- w ndows SE,2017《wndows可视化编程》在线作业附答案.docx
- 查询输出优秀人数_sql 第五关多表查询
- 微信之微信支付(封装)--jsapi
- 2.8.PHP7.1 狐教程-【控制语句 Switch】
- JQuery 动画之 淡入淡出
- php工作要求,PHP工作岗位要求
- 阶段5 3.微服务项目【学成在线】_day01 搭建环境 CMS服务端开发_26-页面查询接口测试-Postman...
- 阶段3 1.Mybatis_03.自定义Mybatis框架_5.自定义Mybatis的编码-创建两个默认实现类并分析类之间的关系...
- 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_08 转换流_3_转换流的原理...
- [py]__name__ 属于哪个文件