журналы с данными и отметкой времени - PullRequest
7 голосов
/ 30 ноября 2008

Как запустить сценарии NAnt в командной строке и получить время каждой задачи в файле журнала?

using nant <record> task or 
NAnt -buildfile:testscript.build testnanttarget

Это выводит консоль, но я не вижу никакой информации о времени.

Все, что я хочу, чтобы каждое сообщение журнала с префиксом datatime.

Ответы [ 2 ]

9 голосов
/ 30 ноября 2008

Вы можете использовать задачу tstamp для отображения текущей даты / времени. Просто включите его везде, где вы хотите информацию о времени. Он не будет ставить перед каждой строкой метку времени, но, по крайней мере, вы можете рассчитать время для некоторых стратегических точек.

<tstamp />
5 голосов
/ 06 июля 2012

Вот образец 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>
...