2015-01-26 125 views
1

我在Git团队项目中使用默认模板构建TFS。它生成一个.proj文件,其中包含一个在Powershell.exe中执行.PS1文件的目标。自定义TFS生成日志文件

.PS1生成自己的日志文件。我一直想弄清楚如何让这个文件复制到drop directory \ logs文件夹。从我可以告诉这个输出目录,TFS仅复制特定的文件:

  • ActivityLog.AgentScope [ID] .XML
  • ActivityLog.xml
  • build.log

任何人尝试让自定义日志记录信息到这个目录?我尝试写入build.log,但失败并出现错误。

+0

什么是PowerShell脚本在做什么? – 2015-01-26 20:30:03

+0

它正在运行一个吞咽任务。 – 2015-01-26 20:35:44

回答

0

在您的PowerShell中,您可以轻松执行主机写入以写入生成日志。所有standers输出方法都被捕获,尽管您需要使用“-verbose”标签来让文本始终写入。

+0

谢谢!这简化了很多事情!尽管由于[此博客],我正在使用写输出(http://www.jsnover.com/blog/2013/12/07/write-host-considered-harmful/)。 – 2015-01-27 15:54:56

2

我喜欢@ MrHinsh的答案比我的好,但是我发现你可以在这个位置编写一个文件:$(TF_BUILD_DROPLOCATION)\logs

我认为,由于路径不存在,直到日志文件被复制,它不会工作。但它确实...... TFS/MSBuild日志文件被简单地合并在一起。它甚至似乎与名称冲突一起工作。例如,如果您的文件名为build.log,则MSBuild将被重命名为build.01.log。