抑制NAnt删除任务的日志输出

时间:2009-10-07 13:06:20

标签: logging cruisecontrol.net nant

我们目前正在使用CruiseControl.NET和NAnt 0.85构建脚本,虽然一切运行良好,但日志文件对我来说有点过于冗长。

特别是,当使用<delete>任务删除文件夹时,我总是在日志中获得[delete] Deleting directory条目。

足够公平但是这个任务在foreach循环中运行并导致一个很长的条目列表(特别是如果文件夹包含文件 - 报告每个删除)这只会使日志混乱并使其难以阅读没有无休止的滚动。我添加了许多<echo>个任务来报告脚本进度,所以不需要所有这些“绒毛”。

我在verbose="false"任务上使用了<delete>属性,虽然这会压缩文件删除消息(这会提高日志的可读性,但仍会报告)文件夹删除。我尝试使用verbose上的foreach属性,但这没有任何区别。

有谁知道我如何压制这些消息,或者我坚持使用它们??

1 个答案:

答案 0 :(得分:10)

我之前已经研究过这个问题,它归结为NAnt的内部以及项目的记录阈值无法正确控制的方式(可以说是一个错误)。围绕非侵入式解决方法进行了良好的对话,即创建和使用名为 LogLevel 的新任务。

用例如下:

<loglevel level="None">
    <delete file="helloworld.txt"/>
</loglevel>

第一篇讨论此事的帖子来自Jay Flowers的Shh, Keep it Quiet。 Rory Primrose在这篇文章中有一个很好的follow up。请务必查看评论,因为有非常有用的信息显示。