日期:2013-04-26  浏览次数:20441 次

SSIS比DTS的日志架构愈加强大,你再也没有必要写入一个MSGBOXES来获得你所需求的日志信息

由于你的脚本组件是承继于一个有LOG方法的ScriptComponent组件,这个方法允许你前往一个音讯到SSIS包的日志中,它会触发ScriptComponentLogEntry的调用,例如下面代码
(vb 代码) 
Dim x(0) As Byte
Me.Log("Hello", 0, x)

以捕抓这个事件你必须允许日志事件,可以在SISS的日志设置中设置

但是比较讨厌的是你必须为每个任务都这样设置而不是直接从包中承继过来,如果讨厌的话可以使用下面方式

你可以在包的级别配置哪类事件可以被触发,如:音讯、进度、警告、错误等
如下代码:
Me.ComponentMetaData.FireInformation(0, "Simons Task", "Some message to return", "", 0, True)

这样一旦你允许在包级别日志记录OnInformation事件,那么上面语句所产生的信息将被捕抓到

要想很容易的在运转时看到事件的相关信息,你可以显示日志事件窗口(SSIS 菜单, LogEvents 选项)

最后,你仍然可以使用msgboxes作为断点,如果你情愿