我们正在MSBuild的构建服务器(Jenkins)上构建一个非常大的Visual C++ 2010解决方案(约150个项目,完整构建需要大约一个小时)。不幸的是,当一个项目失败时,很难找出哪些原因和原因,因为控制台日志很长,错误很难找到。好的MSbuild日志格式化程序?
是否有一个很好的msbuild日志解析器或msbuild记录器,很好地列出所有失败的项目和错误消息?迄今为止我们发现的最好的是Warnings Plugin,但在很多情况下这几乎没有用。
我们正在MSBuild的构建服务器(Jenkins)上构建一个非常大的Visual C++ 2010解决方案(约150个项目,完整构建需要大约一个小时)。不幸的是,当一个项目失败时,很难找出哪些原因和原因,因为控制台日志很长,错误很难找到。好的MSbuild日志格式化程序?
是否有一个很好的msbuild日志解析器或msbuild记录器,很好地列出所有失败的项目和错误消息?迄今为止我们发现的最好的是Warnings Plugin,但在很多情况下这几乎没有用。
我发现Log Parser Plugin非常有用,但您需要提供自己的解析器文件(在/ jobs/vs_parsing_rules中)。我用下面的,这对于msbuild
error /[Ee]rror *:/
error /Error on line/
error /error [CM]/
error /fatal error/
error /unresolved external/
error /[aA]ccess is denied/
error /aborted/
warning /[Ww]arning *:/
warning /[Ww]arning C/
warning /WARNING/
warning /Couldn't/
warning /Can't/
warning /Cannot/
warning /ld.*unsupported/
error /[uU]ndefined symbols/
warning /[rR]eferenced from/
warning /[nN]ot found/
warning /exit status/
warning /no symbols/
error /ERROR[^A-Za-z]/
info /INFO/
start /BUILD/
另一个有用的分析规则,对MSBuild的工作效果很好:
# Divide into sections based on project compile start
start /^------/
# Compiler Error
error /(?i)error [A-Z]+[0-9]+:/
error /MSBUILD : (?i)error :/
error /\(\d+(,\d+)?\): (?i)error [A-Za-z]*:/
# Compiler Warning
warning /(?i)warning [A-Z]+[0-9]+:/