如何在命令行中运行NAnt脚本并获取日志文件中每个任务的时间?
using nant <record> task or
NAnt -buildfile:testscript.build testnanttarget
Run Code Online (Sandbox Code Playgroud)
这会产生控制台输出,但我看不到任何计时信息.
我希望每个日志消息都以datatime为前缀.
您可以使用tstamp任务 显示当前日期/时间.只需将它包含在您想要定时信息的任何地方.它不会为每一行添加时间戳前缀,但至少可以计算一些战略要点.
<tstamp />
Run Code Online (Sandbox Code Playgroud)
这是tstamp的示例
<echo>
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
TASK : INITIALIZE
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
</echo>
<loadtasks assembly="nantcontrib-0.85/bin/NAnt.Contrib.Tasks.dll" />
<!-- http://www.basilv.com/psd/blog/2007/how-to-add-logging-to-ant-builds -->
<tstamp>
<formatter property="timestamp" pattern="yyMMdd_HHmm"/>
</tstamp>
<property name="build.log.filename" value="build_${timestamp}.log"/>
<echo message="build.log.filename: ${build.log.filename}" />
<record name="${build.log.dir}/${build.log.filename}" action="Start" level="Verbose"/>
<echo message="Build logged to ${build.log.filename}"/>
<echo message="Build Start at: ${datetime::now()}" />
</target>
Run Code Online (Sandbox Code Playgroud)