调试控制流
Business Intelligence Development Studio 和 MicrosoftIntegration Services 包含了可用于排除 Integration Services 包中控制流故障的功能和工具。
Integration Services 支持容器和任务上的断点。
SSIS 设计器在运行时提供进度报告。
Business Intelligence Development Studio 提供了调试窗口。
断点
SSIS 设计器提供了**“设置断点”对话框,您可以在其中对断点进行设置:启用中断条件,指定发生多少次断点后就将包的执行挂起。断点可在包级或单个组件级启用。如果在任务或容器级上启用中断条件,则在“控制流”选项卡的设计图面上,相应的任务或容器旁边会显示断点图标。如果在包一级启用中断条件,则在“控制流”**选项卡的标签上显示断点图标。
在命中断点时,断点图标将会发生改变以帮助识别断点源。包运行时,可以添加、删除和更改断点。
Integration Services 提供了十个可以在所有任务和容器上启用的中断条件。在**“设置断点”**对话框中,可根据下列条件启用断点:
中断条件 |
说明 |
---|---|
当任务或容器接收到 OnPreExecute 事件时。 |
任务将要执行时调用。这一事件由任务或容器在其运行前一刻引发。 |
当任务或容器接收到 OnPostExecute 事件时。 |
任务的执行逻辑完成后立即调用。这一事件由个任务或容器在其运行后引发。 |
当任务或容器接收到 OnError 事件时。 |
出现错误时由任务或容器调用。 |
当任务或容器接收到 OnWarning 事件时。 |
当任务处于不能证明出错但有必要发出警告的状态时调用。 |
当任务或容器接收到 OnInformation 事件时。 |
需要任务提供信息时调用。 |
当任务或容器接收到 OnTaskFailed 事件时。 |
任务宿主失败时由其调用。 |
当任务或容器接收到 OnProgress 事件时。 |
要更新任务执行的进度时调用。 |
当任务或容器接收到 OnQueryCancel 事件时。 |
在可以取消执行的任务处理中,随时可以调用。 |
当任务或容器接收到 OnVariableValueChanged 事件时。 |
变量值更改时,由 Integration Services 运行时调用。变量的 RaiseChangeEvent 必须设置为 true 才能引发此事件。 |
当任务或容器接收到 OnCustomEvent 事件时。 |
由任务调用,用于引发自定义的任务定义事件。 |
除了对所有任务和容器可用的中断条件外,有些任务和容器还包含用来设置断点的特殊中断条件。例如,可以在 For 循环容器上启用中断条件,设置一个在循环的每个迭代开始时挂起执行的断点。
若要增加断点的灵活性和能力,可通过指定下列选项来修改断点的行为:
命中计数,即执行挂起之前中断条件出现的最大次数。
命中计数类型,或指定中断条件何时触发断点的规则。
命中计数类型(除“始终”类型以外)由命中计数进行进一步限定。例如,如果类型是“命中计数等于”并且命中计数是 5,则在中断条件第六次出现时挂起执行。
下表介绍命中计数类型。
命中计数类型 |
说明 |
---|---|
始终 |
断点命中时,执行始终挂起。 |
命中计数等于 |
当已发生的断点次数等于命中计数时,执行挂起。 |
命中计数大于或等于 |
当已发生的断点次数等于或大于命中计数时,执行挂起。 |
命中计数倍增基数 |
断点发生的次数为指定数字的倍数时挂起执行。例如,如果将此选项设置为 5,那么命中次数每第五次出现时,执行挂起。 |
设置断点
进度报告
SSIS 设计器中包含两种类型进度报告:**“控制流”选项卡设计图面上的颜色编码和“进度”**选项卡上的进度消息。
运行包时,SSIS 设计器使用可指示执行状态的颜色显示每个任务或容器,以此来描绘执行进度。可根据颜色判断元素是否正在等待运行、是否当前正在运行、是否已成功完成或者已经以失败结束。停止包执行后,颜色编码将消失。
下表介绍用于描绘执行状态的各种颜色。
颜色 |
执行状态 |
---|---|
灰色 |
等待运行 |
黄色 |
运行 |
绿色 |
成功运行 |
红色 |
运行,但有错误 |
**“进度”选项卡上按执行顺序列出了任务和容器,并包含了开始时间和结束时间、警告以及错误信息。停止包执行后,在“执行结果”**选项卡上的进度信息仍然可用。
注意 |
---|
若要允许或禁止在“进度”选项卡上显示消息,请在 SSIS 菜单上切换“调试进度报告”选项。 |
下面的关系图显示**“进度”**选项卡。
调试窗口
Business Intelligence Development Studio 是一种 MicrosoftVisual Studio 2008 开发环境,包含多个窗口,可以用来处理断点以及用来调试包含断点的包。若要了解每个窗口的更多信息,请打开该窗口,然后按 F1 显示该窗口的帮助。
若要在 Business Intelligence Development Studio 中打开这些窗口,请单击**“调试”菜单,指向“窗口”,然后单击“断点”、“输出”或“即时”**。
下表介绍这些窗口。
窗口 |
说明 |
---|---|
断点 |
列出包中的断点并提供启用和删除断点的选项。 |
输出 |
显示 Business Intelligence Development Studio 中各功能的状态消息。 |
即时 |
用于调试和评估表达式,并打印变量值。 |
|