实例学习SSIS(四)--使用日志记录和错误流重定向
导读:
实例学习SSIS(一)--制作一个简单的ETL包
实例学习SSIS(二)--使用迭代
实例学习SSIS(三)--使用包配置
实例学习SSIS(四)--使用日志记录和错误流重定向
实例学习SSIS(五)--理论介绍SSIS
一、使用日志记录
SSIS提供的日志记录方式:
文本文件
SQL
Server Profiler
Windows
事件日志
SQL
Server
XML
文件
准备工作
使用上节的包,修改myconfig.dtsConfig,将文件夹对应到D:\lyp\SQL\SSIS\package4。
在文件夹下新建userinfo5.txt和userinfo6.txt。
Userinfo5.txt:11|name11|我是name11|男,12|name12|我是name12|女
Userinfo6.txt:13|name13|我是name13|男,14|name14|我是name14|女
步骤:
1、添加一条文本日志,如下图:

2、指定写入日志信息的txt文件,如下图:

3、选择要记录的事件:

调试:

在D:\lyp\SQL\SSIS\package4下创建了一个log.txt文件,可以看到里面有相应的事件执行记录。
二、使用错误流重定向
SSIS错误处理方式
在数据转换时很有可能会发生错误,SSIS对错误的处理方式:
1、选择忽略某些列中的失败;
2、重定向整个失败的行;
3、使组件失败。
默认情况下,所有组件发生错误时失败,从而导致包失败并停止后续处理。
为了不让包停止,发生错误时,通过配置来处理错误,通常是将失败的行重定向到别处进行处理。
准备工作
1、使用上面日志记录用到的包;
2、创建有错误的数据源文件userinfo7.txt(D:\lyp\SQL\SSIS\package5\)。
userinfo7.txt:15|name15|我是name15|男,abc|name17|我是name17|女,18|name18|我是name18|女
在转换id为int时会出现错误。
使用组件失败的情况
在“数据流”中编辑“用户来源”平面文件源,在“错误输出”中将各列的“错误”选成“组件失败”:

调试程序,可以看到“用户来源”变成了红色,整个包停止了,文件中的数据没有被成功导入到数据库中。

使用错误流重定向
目标
把出错的行重定向的别的文件(errorLog.txt)而不会使包停止。
步骤:
1、拖拽一个“平面文件目标”到数据流选项卡。
2、把“用户来源”的红箭头拖到该目标上,在弹出的“配置错误输出”中将UiD的“错误”选择为“重定向行”。
3、编辑“平面文件目标”:
新建“平面文件链接管理器”,选择错误记录文件(errorLog.txt),如下:


调试:
调试程序,可以看到向数据库中插入了两条记录,并在errorLog.txt中写入了出错的行。

实例学习SSIS(四)--使用日志记录和错误流重定向的更多相关文章
- 【干货】.NET开发通用组件发布(四) 日志记录组件
组件介绍和合作开发 http://www.cnblogs.com/MrHuo/p/MrHuoControls.html 日志记录组件功能介绍 通过基类Logger,实现了文本记录日志和数据库记录日志两 ...
- Python 日志记录与程序流追踪(基础篇)
日志记录(Logging) More than print: 每次用 terminal debug 时都要手动在各种可能出现 bug 的地方 print 相关信息来确认 bug 的位置: 每次完成 d ...
- 实例学习SSIS(五)--理论介绍SSIS
原文:实例学习SSIS(五)--理论介绍SSIS 导读: 实例学习SSIS(一)--制作一个简单的ETL包 实例学习SSIS(二)--使用迭代 实例学习SSIS(三)--使用包配置 实例学习SSIS( ...
- 实例学习SSIS(三)--使用包配置
原文:实例学习SSIS(三)--使用包配置 导读: 实例学习SSIS(一)--制作一个简单的ETL包 实例学习SSIS(二)--使用迭代 实例学习SSIS(三)--使用包配置 实例学习SSIS(四)- ...
- 实例学习SSIS(二)--使用迭代
原文:实例学习SSIS(二)--使用迭代 导读: 实例学习SSIS(一)--制作一个简单的ETL包 实例学习SSIS(二)--使用迭代 实例学习SSIS(三)--使用包配置 实例学习SSIS(四)-- ...
- 实例学习SSIS(一)--制作一个简单的ETL包
原文:实例学习SSIS(一)--制作一个简单的ETL包 导读: 实例学习SSIS(一)--制作一个简单的ETL包 实例学习SSIS(二)--使用迭代 实例学习SSIS(三)--使用包配置 实例学习SS ...
- 从零开始编写自己的C#框架(20)——框架异常处理及日志记录
最近很忙,杂事也多,所以开发本框架也是断断续续的,终于在前两天将前面设定的功能都基本完成了,剩下一些小功能遗漏的以后发现再补上.接下来的章节主要都是讲解在本框架的基础上进行开发的小巧. 本框架主要有四 ...
- 第十二篇 Integration Services:高级日志记录
本篇文章是Integration Services系列的第十二篇,详细内容请参考原文. 简介在前一篇文章我们配置了SSIS内置日志记录,演示了简单和高级日志配置,保存并查看日志配置,生成自定义日志消息 ...
- 第十一篇 Integration Services:日志记录
本篇文章是Integration Services系列的第十一篇,详细内容请参考原文. 简介在前一篇,我们讨论了事件行为.我们分享了操纵事件冒泡默认行为的方法,介绍了父子模式.在这一篇,我们会配置SS ...
随机推荐
- Xenomai 3 和 PREEMPT_RT 有哪些优势相比,
Q: 我可以在我的开发板PREEMPT_RT直接在内核环境中执行POSIX应用, 使用Xenomai3 这是什么原因它? A:假设你的应用程序已经完全是POSIX,而且性能也满足,则,而且也没有理由去 ...
- struts2-dojo-plugin-2.3.1.2.jar!/struts-plugin.xml:29:119
Unable to load configuration. - bean - jar:file:/D:/code_workspace/SSHWorkSpace3/.metadata/.plugins/ ...
- S3C2416裸机开发系列19_Fatfs播放录像wav音频文件
S3C2416裸机开发系列19 Fatfs播放录像wav音频文件 国际象棋男孩 1048272975 多媒体资源,一般都是以文件的形式存储在固化存储器中.Fatfs所支持的fat32为windo ...
- Linux经常使用的命令-权利管理命令-权利管理命令chmod
指令名字:chmod 命令英语的意图:change the permissions mode of a file 凡路径命令:/bin/chmod 语法:chmod [{ugoa}{+-=}{rwx} ...
- 十天学Linux内核之第六天---调度和内核同步
原文:十天学Linux内核之第六天---调度和内核同步 心情大好,昨晚我们实验室老大和我们聊了好久,作为已经在实验室待了快两年的大三工科男来说,老师让我们不要成为那种技术狗,代码工,说多了都是泪啊,, ...
- Codeforces Round #265 (Div. 2) C. No to Palindromes! 构建无回文串子
http://codeforces.com/contest/465/problem/C 给定n和m,以及一个字符串s,s不存在长度大于2的回文子串,如今要求输出一个字典比s大的字符串,且串中字母在一定 ...
- C++ Primer第九章课后编程问题
1. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZ3V1Z2xlMjAxMA==/font/5a6L5L2T/fontsize/400/fill/I0J ...
- Cocos2d-x 3.2 大富翁游戏项目开发-第五部分 单机游戏-级别选择ScrollView
于MenuScene.cpp 点击单机游戏后会调用 Director::getInstance()->pushScene(MapChooseScene::createScene()); 进入到关 ...
- 【百度地图API】如何根据摩卡托坐标进行POI查询,和计算两点距离
原文:[百度地图API]如何根据摩卡托坐标进行POI查询,和计算两点距离 摘要: 百度地图API有两种坐标系,一种是百度经纬度,一种是摩卡托坐标系.在本章你将学会: 1.如何相互转换这两种坐标: 2. ...
- Java数据结构与算法(2) - ch03排序(冒泡、插入和选择排序)
排序需要掌握的有冒泡排序,插入排序和选择排序.时间为O(N*N). 冒泡排序: 外层循环从后往前,内存循环从前往后到外层循环,相邻数组项两两比较,将较大的值后移. 插入排序: 从排序过程的中间开始(程 ...