我有一个SSIS包,必须为目录中的每个文件执行SQL任务,其中文件的数量非常大。这导致日志记录问题,因为每次SQL任务执行时都会产生以下输出:
每天将数十万个文件相乘,您可以获得每天大小为GB的日志。作为一个临时解决方案,我们是.rar的文件。这工作正常,因为重复数据压缩得很好。
但是,如果我可以一起阻止这种重复输出,那就太好了。 除非任务失败,否则有没有办法不在日志文件中显示任务的输出?
我们正在通过批处理记录任务,如下所示:
dtexec /f "path\to\package\mypackage.dtsx" >> "path\to\log\logfile.log"
答案 0 :(得分:2)
将报告级别更改为错误和/或警告,
这是令人讨厌的进度报告。
dtexec /Reporting E /f "path\to\package\mypackage.dtsx" >> "path\to\log\logfile.log"
dtexec /Reporting W /f "path\to\package\mypackage.dtsx" >> "path\to\log\logfile.log"
dtexec /Reporting EW /f "path\to\package\mypackage.dtsx" >> "path\to\log\logfile.log"
报告错误。
报告W警告。
https://technet.microsoft.com/en-us/library/ms162810(v=sql.105).aspx
如果未指定/ Reporting选项,则默认级别为
E(错误),W(警告)和P(进度)。
答案 1 :(得分:1)
您可以使用标记为/Reporting
的标记N
( N 代表无报告。),以防止向其报告任何状态命令行控制台。
还有其他级别,例如 E 仅错误, W 仅适用于警告。您可以选择要在控制台上看到的输出选择。
Learn more about dtexec Utility this MSDN article.
dtexec /f Package.dtsx /Reporting N
dtexec /f Package.dtsx /Rep N