SSIS从理论到实战,再到应用(6)----SSIS的自带日志功能
上期回顾:
SSIS从理论到实战,再到应用(5)----流程控制之Foreach循环
博主最近新负责了一个ssis大项目的架构,压力山大,所以都没有怎么正儿八经的更文章了,给园友们说声抱歉,接下来的一些文章可能都比较偏重于实用技巧方面^_^.
我们都知道,不论在任何一个项目,日志系统的重要意义都是不言而喻的。
如果你的SSIS项目管理到了以百为级别,那很有必要去为它专门构建一个日志管理平台,这个时候你可以参考@BIWork大大的文章
如何在 ETL 项目中统一管理上百个 SSIS 包的日志和包配置框架
当然,有的时候,追求快速开发,你可能会寻求是否有一种更快速的解决方案?
答案是肯定的,SSIS本身就自带了这样一套日志系统:
一,在已经构建好的SSIS包中单击右键,出现日志记录菜单
二,选中后进入日志记录系统界面
三,勾选里面左边菜单栏的包,这里SSIS提供了各种日志类型:文本文件,xml文件,sql数据库,windows事件日志...这里以sql数据库系统表日志为准,选中,然后添加数据:
在配置里面选中我们的数据库链接(这里指的是将包的运行日志记录在哪个库里面,一般来说,ETL控制台在哪个服务器哪个库,相应的,就将SSIS日志记录在哪里)
四,选中日志将要记录的行为,一般来说,我们关注的是两个,包开始的系统信息,以及包出错时的信息,所以一般来说选中两个事件就可以了,OnInformation,OnError
五,如果你对日志表的某些列有特殊的要求,可以在高级操作里面选中要记录的列名:
关于列名我就不用过多解释了,一看就知道了。
Ok,日志系统就配置完成了,那我们来看看日志系统是否真能记录呢?
在ExecuteSql任务中写语句select 1/0;
运行:
查看相应的表:
可以很明显的看到,包在BITEST库中自动新建了一个表sysssislog表,用于记录日志行为。以后的每个包都写入这样的配置,可以准确的记录日志信息。非常方便。