我已经制作了一个SSIS包,可以将1个或多个文件加载到一系列表中。我想跟踪软件包中使用了哪些文件,并将它们存储在表格中,理想情况下包含以下几列:
我已经在线阅读了多篇使用SSIS日志记录功能的文章,但这似乎只记录了运行的软件包,而不记录该软件包中使用的文件。
是否可以这样做?非常感谢您的任何帮助。
答案 0 :(得分:1)
是的,您可以创建自定义日志记录,但是我发现使用Execute SQL Task
更加容易且可移植。
我的包裹通常采用这种形式
我审核程序包的开始,执行工作,然后记录程序包完成情况。这种模式应该适合您。 “开始审核”步骤类似于
INSERT INTO dbo.MyAudit
SELECT ? AS EtlId, ? AS StartDate;
然后,在包完成后,像这样回填运行数据
UPDATE dbo.MyAudit
SET SourceFile = ?, EndDate = ?, RowsInserted = ?, RowsUpdated = ?
WHERE RunId = ?;
假设您正在使用OLE DB连接管理器,问号?
是Execute SQL任务中的序号占位符,它们已连接到参数(SSIS变量)。
也可能相关-> getting current file name