zoukankan      html  css  js  c++  java
  • 实例学习SSIS(四)使用日志记录和错误流重定向

    导读:

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

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

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

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

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

     

    一、使用日志记录

    SSIS提供的日志记录方式:

             文本文件

             SQL Server Profiler

             Windows 事件日志

             SQL Server

             XML 文件

    准备工作

    使用上节的包,修改myconfig.dtsConfig,将文件夹对应到D:\lyp\SQL\SSIS\package4

    在文件夹下新建userinfo5.txtuserinfo6.txt

             Userinfo5.txt11|name11|我是name11|,12|name12|我是name12|

             Userinfo6.txt13|name13|我是name13|,14|name14|我是name14|

    步骤:

             1、添加一条文本日志,如下图:

            

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

             3、选择要记录的事件:

            

    调试:

             D:\lyp\SQL\SSIS\package4下创建了一个log.txt文件,可以看到里面有相应的事件执行记录。

    二、使用错误流重定向

    SSIS错误处理方式

    在数据转换时很有可能会发生错误,SSIS对错误的处理方式:

    1、选择忽略某些列中的失败;

    2、重定向整个失败的行;

    3、使组件失败。

    默认情况下,所有组件发生错误时失败,从而导致包失败并停止后续处理。

    为了不让包停止,发生错误时,通过配置来处理错误,通常是将失败的行重定向到别处进行处理。

    准备工作

                       1、使用上面日志记录用到的包;

                       2、创建有错误的数据源文件userinfo7.txtD:\lyp\SQL\SSIS\package5\)。

                                userinfo7.txt15|name15|我是name15|,abc|name17|我是name17|,18|name18|我是name18|

                                在转换idint时会出现错误。

    使用组件失败的情况

                       在“数据流”中编辑“用户来源”平面文件源,在“错误输出”中将各列的“错误”选成“组件失败”:

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

    使用错误流重定向

             目标

                       把出错的行重定向的别的文件(errorLog.txt)而不会使包停止。

             步骤:

                       1、拖拽一个“平面文件目标”到数据流选项卡。

                       2、把“用户来源”的红箭头拖到该目标上,在弹出的“配置错误输出”中将UiD的“错误”选择为“重定向行”。

                       3、编辑“平面文件目标”:

                                新建“平面文件链接管理器”,选择错误记录文件(errorLog.txt),如下:

     

             调试:

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

  • 相关阅读:
    Jedis客户端以及redis中的pipeline批量操作
    Redis5.x两种持久化方式以及主从复制配置
    博客园原创文章防剽窃、反爬虫指南(持续更新.....)
    【金主打赏榜】
    Swift LeetCode 目录 | Catalog(每周日更新......)
    [Swift]SkeletonView:在UITableView中使用骨架屏
    【Xcode】加快Xcode编译调试速度
    【Xcode】ITMS-90809:查找UIWebView
    [Swift]PhotoKit-照片框架
    [SourceTree]remote: HTTP Basic: Access denied
  • 原文地址:https://www.cnblogs.com/tenghoo/p/SSIS_Log_and_error.html
Copyright © 2011-2022 走看看