【发布时间】:2018-09-19 13:51:23
【问题描述】:
我听取了许多在线的建议,并在 SSIS 中创建了一个序列容器来保存我所有的子包,这样它还可以包含一个 OnError 事件来聚合来自所有子包的所有错误。
在 OnError 事件中,我有以下 Expression 任务,使用此表达式:
@[User::AllFailureErrors] = @[User::AllFailureErrors] + "
Package: " + @[System::SourceName] +"
Description: "+ @[System::SourceDescription] +"
Error: "+ @[System::ErrorDescription]
它将所有错误汇总到一个字符串变量中,然后我将其包含在电子邮件中。它在大多数情况下工作得很好——它告诉我所有的错误是什么,以及出错的任务(在子包中)。
但是,我不知道如何捕获的是包含引发错误的任务的子包的名称。没有这些信息就很难调试,而且我还没有弄清楚如何在不使用非常冗长的名称重命名所有子包中的所有任务的情况下获得它。
有人知道如何捕捉这个吗?
请注意,我目前拥有 SQL Server 2008 R2,但很快将升级到 2014,据我所知,它具有一些额外的 SSIS 日志记录功能。
【问题讨论】:
标签: sql-server ssis