Error handling SSIS中的审核和错误处理

Error handling SSIS中的审核和错误处理,error-handling,ssis,audit,Error Handling,Ssis,Audit,我们正在启动一个项目来处理大的平面文件。这些文件有点“规范化”,我们希望首先将它们处理为一个中间文件 我希望看到审计行的自定义表和处理过程中抛出的错误的自定义表。此外,错误必须存储在事件日志中 根据SSI(VS2008)的一般审核和错误处理,最佳做法是什么 (编辑) 通过设计1个主包,我们已经做出了(我认为)非常优雅的解决方案。此包运行一个子包(最初指定的子包)。主程序包订阅3个事件,如OnInformation、OnWarning和OnError。这些事件被路由到一个通用的审计和日志服务,该服

我们正在启动一个项目来处理大的平面文件。这些文件有点“规范化”,我们希望首先将它们处理为一个中间文件

我希望看到审计行的自定义表和处理过程中抛出的错误的自定义表。此外,错误必须存储在事件日志中

根据SSI(VS2008)的一般审核和错误处理,最佳做法是什么

(编辑)
通过设计1个主包,我们已经做出了(我认为)非常优雅的解决方案。此包运行一个子包(最初指定的子包)。主程序包订阅3个事件,如OnInformation、OnWarning和OnError。这些事件被路由到一个通用的审计和日志服务,该服务调用企业库日志记录和异常处理块。

我建议您采用以下理念来实现来自文件的稳定etl过程:

  • 不要在连接器中强制转换任何内容,只需将字段作为NVARCHAR导入到它们将达到的最大长度
  • 按程序添加行数以跟踪投射错误中的错误
  • 根据您的规格铸造和控制每一列
  • 如果某一行在某个阶段无法读取,您将不知道索引,但您将知道该文件的格式不正确(在我的经验中,对于半传输的文件来说,这种情况极为罕见),无论如何都应该拒绝该文件
  • 文件加载过程的一部分的快速屏幕截图显示了拒绝(在分配行\ id后)是如何工作的()。除此之外,您还可以添加更多的检查(重复项…),甚至可以为加载的文件创建一个存储库,用于检查拒绝以及您可能想要控制的其他内容()

    在我的一些过程中,我甚至使用平面文件连接器,将每一行作为批量文本导入,然后使用中间脚本组件将其拆分为列,从而允许文件中列的不同版本

    无论如何,很抱歉没有更详细(由于我的状态,我不能添加更多的链接或任何图片),但我希望你理解这个概念

    问候,

    弗朗西斯科