SSIS包日志记录中的ExecutionID更改

时间:2012-06-19 15:01:07

标签: sql-server-2008 logging ssis

我希望能找到答案:

在sysssislog表中,executionID会对同一个包进行两次更改。例如,在预验证阶段,executionID为19EF7848-F626-4AF6-8B5F-0F419530597E。但是当程序包开始执行时,此executionID将更改为DA549ABD-27CC-4965-9DA0-FC701FB8F92C

为了找到更多相关信息,我阅读了关于sysssislog表的BOL条目,并指出(作为ExecutionID的特别说明):

  

运行单个包可能会创建不同的日志条目   ExecutionID元素的值。例如,当你运行一个   在SQL Server数据工具中,可能会创建验证阶段   具有与SQL Server对应的ExecutionID元素的日志条目   数据工具。但是,执行阶段可能会创建日志条目   与dtshost.exe对应的ExecutionID元素。为了另一个   例如,当您运行包含执行包任务的包时,   每个任务都运行一个子包。这些子包可能   创建与ExecutionID元素不同的日志条目   父包创建的日志条目。

我无法理解这种行为。在整个包执行过程中,executionID不应该保持相同吗?我正在考虑使用packageGUID作为我的标识符,以便我可以解决这个问题,但是对此有任何帮助将不胜感激。 TIA。

1 个答案:

答案 0 :(得分:2)

就像BOL所述,如果您在BIDS(2005-2008R2)/ SSDT(2012)中运行包,则包的执行ID将根据事件流处理的位置而波动。如果这是不可接受的,则只从命令行(dtexec /file myPackage.dtsx)或通过代理作业运行包。这将消除验证阶段获取不同执行ID的机会。我不相信你对儿童套餐有任何追索权。