如何在SSIS数据流任务中跟踪成功处理或失败的行的状态?

lar*_*o68 3 audit ssis

我有一个非常简单的数据流任务从FF读取数据并将数据插入表中.同时我想在Audit表中写入,插入了多少行,创建日期......

我怎么能这么容易呢?

小智 9

如果您只对成功处理的行数或遇到错误的行数感兴趣,则可以使用内置SSIS logging功能.请检查下面提到的步骤.我希望这个例子能给你一个想法.我在日志表中只显示了两列,但还有其他有用的字段,如starttime,endtime等.该示例是在SSIS 2008 R2

  1. 点击SSIS package.

  2. 在菜单上,选择 SSIS --> Logging...

  3. 在"配置SSIS日志:"对话框中,选择提供程序类型,然后单击"添加".我为此示例选择了SQL Server.选中"名称"复选框,并在"配置"列下提供数据源.这里SQLServer是连接管理器的名称.SSIS 2008或者SSIS 2008 R2将在您选择的数据库中创建名为dbo.sysssislog的表和存储过程dbo.sp_ssis_addlogentry.请参阅下面的截图#1.在表名SSIS 2005dbo.sysdtslog90和存储过程被命名为dbo.sp_dts_addlogentry

  4. 如果需要处理的行,请选中OnInformation复选框.在示例中,包已成功执行,因此在OnInformation下找到了日志记录.您可能需要根据您的要求微调此事件选择.请参阅下面的截屏#2.

  5. 以下是数据流任务中的示例包执行.请参阅下面的截屏#3.

  6. 以下是日志表dbo.sysssislog的示例输出.我只显示了列id消息.表中还有许多其他列.在查询中,我仅针对名为" Package1 " 的包和事件" OnInformation " 过滤输出.您可以注意到具有ID 7,14和15的记录包含已处理的行.请参阅下面的截屏#4.

希望有所帮助.

截图#1:

记录

截图#2:

活动

截图#3:

执行

截图#4:

数据