实例学习SSIS(四)--使用日志记录和错误流重定向

原文:实例学习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中写入了出错的行。

 

时间: 2024-09-18 04:53:05

实例学习SSIS(四)--使用日志记录和错误流重定向的相关文章

实例学习SSIS(五)--理论介绍SSIS

原文:实例学习SSIS(五)--理论介绍SSIS 导读: 实例学习SSIS(一)--制作一个简单的ETL包 实例学习SSIS(二)--使用迭代 实例学习SSIS(三)--使用包配置 实例学习SSIS(四)--使用日志记录和错误流重定向 实例学习SSIS(五)--理论介绍SSIS    一.概述                    Integration Services 是用于生成高性能数据集成和工作流解决方案(包括针对数据仓库的提取.转换和加载 (ETL) 操作)的平台.         

实例学习SSIS(一)--制作一个简单的ETL包

原文:实例学习SSIS(一)--制作一个简单的ETL包 导读: 实例学习SSIS(一)--制作一个简单的ETL包 实例学习SSIS(二)--使用迭代 实例学习SSIS(三)--使用包配置 实例学习SSIS(四)--使用日志记录和错误流重定向 实例学习SSIS(五)--理论介绍SSIS 参考内容:SQLServer2005的帮助文档. ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.zh-CHS/sqltut9/html/d6d5bb1f-4cb1-4605-9cd6-f60

实例学习SSIS(三)--使用包配置

原文:实例学习SSIS(三)--使用包配置 导读: 实例学习SSIS(一)--制作一个简单的ETL包 实例学习SSIS(二)--使用迭代 实例学习SSIS(三)--使用包配置 实例学习SSIS(四)--使用日志记录和错误流重定向 实例学习SSIS(五)--理论介绍SSIS 包配置是干嘛滴!          使用包配置可以从开发环境的外部设置运行时属性和变量. 目标:          从开发环境外部指定Foreach要遍历的文件夹,然后把该文件夹下相应的txt文件内容写入库中. 步骤:    

实例学习SSIS(二)--使用迭代

原文:实例学习SSIS(二)--使用迭代 导读: 实例学习SSIS(一)--制作一个简单的ETL包 实例学习SSIS(二)--使用迭代 实例学习SSIS(三)--使用包配置 实例学习SSIS(四)--使用日志记录和错误流重定向 实例学习SSIS(五)--理论介绍SSIS       目标:循环地连接某文件夹下的每个文件,不需要为每个文件都建立连接管理器. 在这个实例中,我们将某文件夹下的userinfo1.txt和userinfo2.txt的内容都写入数据表userinfo中. 步骤:     

一步一步学SQL Server BI 7:事务,错误输出,事件处理,日志记录

和其它程序一样,SSIS包同样需要健壮,稳定的运行,这样的程序才有可靠性和可伸缩性.SSIS提供了如下方面的支持: 1.事务: 可以对一个程序包设置成一个或者多个事务,甚至可以对两个程序包设置成一个事务.为了保证数据的一致性,你还可以DTC事务或者SQL Server引擎级的事务. 2.检查点: 用来记录一个程序包出错时任务的运行情况,以便程序包再次启动时,直接从发生错误的任务直接执行. 3.错误输出:即使再完美的程序也会有错误,尤其对于数据流中的任务来说,及有可能由于格式,类型等问题,导致这一

MVC使用Log4Net进行错误日志记录学习笔记4_实用技巧

在Web应用运行过程中,我们难免会遇到程序运行异常,这个时候我们就应该将异常信息记录下来,以便开发人员和维护人员对异常原因进行还原,对异常原因进行修复.在ASP.NET平台中进行日志记录的组件也有很多,如Log4Net.CommonLogging等,我们这里选用Log4Net进行异常日志的记录. 1. 捕获异常 在ASP.NET MVC中提供了一个全局的异常处理过滤器:HandleErrorAttribute,可以通过该过滤器捕获异常信息. 我们在Models文件夹下新建类型Log4Except

PHP中错误与异常的日志记录用法分析_php技巧

本文分析了PHP中错误与异常的日志记录用法.分享给大家供大家参考,具体如下: 提到 Nginx + PHP 服务的错误日志,我们通常能想到的有 Nginx 的 access 日志.error 日志以及 PHP 的 error 日志.虽然看起来是个很简单的问题,但里面其实又牵扯到应用配置以及日志记录位置的问题,如果是在 ubuntu 等系统下使用 apt-get 的方式来安装,其自有一套较为合理的的配置文件可用.再者运行的应用程序中的配置也会影响到日志记录的方式及内容. 错误与异常的区别 关于错误

【转】使用Log4Net进行日志记录

     首先说说为什么要进行日志记录.在一个完整的程序系统里面,日志系统是一个非常重要的功能组成部分.它可以记录下系统所产生的所有行为,并按照某种规范表达出来.我们可以使用日志系统所记录的信息为系统进行排错,优化系统的性能,或者根据这些信息调整系统的行为.      Log4net是一个很著名的开源的日志记录组件.官方网址为:http://logging.apache.org/log4net/ ,使用Log4net能够很简单的为我们的程序添加日志记录功能.下面我们先通过一个网站例子来说明如何在

我心中的核心组件(可插拔的AOP)~第三回 日志记录组件之log4net

在项目中有统一的日志是很必要的,之前自己写过vlog项目,这个项目与现在比较流行的log4net很像,用起来也很方便,今天主要说一下log4net这个日志工具,这使用vs2012测试的,使用nuget把log4net组件添加到项目中,如图: 然后在项目里为log4net建立一个配置文件,可以命名为log4net.config,一般代码如下: <log4net> <logger name="loginfo"> <level value="INFO&