诊断生成问题

诊断和修复的问题的生成为软件开发的常规任务。Team Foundation build 提供的工具可以帮助您诊断和解决问题例如:

  • 未通过或生成部分成功

  • 异常、错误或警告

  • 意外事件或结果

您希望做什么?

  • 确定生成为何不运行

  • 查找有关的问题的信息在生成结果窗口

  • ,在使用承载生成控制器时,请解决问题

  • 请求并查看诊断记录

    • 获取诊断录制,则可使用一个在"系统生成控制器

    • 获取诊断录制,则可使用承载生成控制器

    • 查看诊断记录

  • 检查您的生成系统和调试您的生成过程

  • 更多的技巧的访问

所需权限

您必须为窗口 administrators 组的成员生成的服务器和项目集合生成管理员组的成员您的团队项目集合。请参见 Team Foundation Server 权限

确定生成为何不运行

如果生成是下 在队列,但仍未运行,请确保生成控制器和至少一个其生成代理可用并且启用。如果生成过程具有生成代理筛选器,确定满足条件的生成代理可用并启用。请参见 Manage Your Build System指定使用哪些生成代理处理您的生成部署和配置生成代理

查找有关的问题的信息在生成结果窗口

如果生成运行,悬停在处理的某些部分或完成,则可以获取有关问题的更多信息。生成结果窗口。选择 查看日志 显示详细信息:

  • 选择 下一个错误下一个警告 跳过直接添加到生成的问题。

  • 无论在何处参见 MSBuild 日志文件 的实例链接,选择该有关发生的事件的访问详细信息,请 MSBuild 事件编译和执行其他任务的代码。

  • 可以复制信息,因此,如果需要,使用可帮助您解决问题的人共享。选择在记录的特定文本或打开中的任何位置记录的一个快捷菜单中选择 全选。然后可以打开快捷菜单并选择 复制 将文本复制到剪贴板。

诊断记录视图

如果仍没有诊断足够的信息问题,您可以查看更详细的诊断记录。

JJ635150.collapse_all(zh-cn,VS.110).gif获取诊断录制,则可使用一个在"系统生成控制器

在承载时在系统在 放置文件夹生成控制器,诊断记录存储。在 生成结果窗口,选择 诊断,然后:

  • 如果生成完成,选择 最终记录自 日期和时间。

  • 如果生成未完成,选择 请求日志

    检索诊断日志

    系统程序集记录。

    当记录准备就绪后,选择 诊断 日期和时间 请求的用户记录。

系统会打开包含诊断跟踪的放置文件夹的子文件夹。

说明说明

如果使用 Visual Studio 2010,诊断 菜单在生成结果窗口中显示,但是,您仍然可以查看该诊断登录放置文件夹,在生成完成时。

JJ635150.collapse_all(zh-cn,VS.110).gif获取诊断录制,则可使用承载生成控制器

当您使用时 托管生成控制器,我们建议您为 临时位置选择 将生成输出复制到服务器。在这种情况下,诊断记录在 TFS 中,它可以查看它们下载这些从您的浏览器。

生成结果窗口,选择 操作在浏览器中打开,然后在该浏览器的生成结果,请选择 诊断。您可以选择 查看日志 打开可以选择记录要查看的菜单,或通过任何登录 .zip 文件。

JJ635150.collapse_all(zh-cn,VS.110).gif查看诊断记录

在打开放置文件夹或下载 .zip 文件后,可以查看以下记录之一:

  • 从生成控制器:ActivityLog

  • 从参与生成的每个生成代理:**ActivityLog.AgentScope.**Build_Agent_ID

  • MSBuild 事件生成的每个解决方案:Solution_Name

最好的方式查看这些日志将文件复制到您的计算机 dev 并打开这些文件从此处。

检查您的生成系统和调试您的生成过程

某些问题可由您在系统生成系统生成。

提示提示

尝试部署您的 dev 计算机作为生成服务器,以便能够更容易地可以获取直接访问生成过程运行的环境。请参见 部署和配置生成服务器

JJ635150.collapse_all(zh-cn,VS.110).gif签入生成系统组件

确保正确配置生成服务器、控制器和代理。请参见 部署和配置生成服务器部署和配置生成控制器部署和配置生成代理

登录到生成服务器并确认其是否正常工作。您还可以查看有关生成服务器的详细诊断数据。请参见 Manage Your Build System

JJ635150.collapse_all(zh-cn,VS.110).gif调试生成过程在生成服务器

若要诊断未捕获的异常导致的。自定义生成过程 事件,或者问题,尝试调试版本在生成服务器进程。

  1. 登录到生成服务器。

  2. 运行 Visual Studio。

  3. 在 Visual Studio 中,从菜单栏上,依次选择 工具附加到进程

  4. 附加到进程 对话框中:

    1. 选择 显示所有用户的进程

    2. 选择 TFSBuildServiceHost.exe

    3. 选择 附加

  5. 从菜单栏选择 调试异常。在 异常 对话框中,选择 公共语言运行库异常。选择**“确定”**。

  6. 从菜单栏,选择 工具选项。在 选项 对话框中,在节点构树窗格中,选择 调试。在 常规 列表,并清除 启用“仅我的代码 复选框。选择**“确定”**。

  7. 在 Visual Studio 中,对生成进行排队,并确保在生成服务器上已启用调试器的生成控制器和生成服务器上运行。

现在可以调试时引发在生成过程,并设置断点和自定义生成过程事件的异常。请参见 使用 Visual Studio 进行调试

提示

  • 提示 当您诊断生成过程的问题时,可能省去自己,并且您的团队成员问题通过暂停它,直到可以修复过程:

    • 编辑生成定义,然后在 常规 选项的底部,选择 已暂停

    • 当生成定义暂停时,测试解决到生成过程,选择 排队的生成,打开其快捷菜单,并选择 立即启动

  • 提示如果您认为某个生成系统组件可能原因是的一个问题,可以启动,中断或重新启动生成服务器或启用或禁用控制器或代理根据需要。请参见 Manage Your Build System

  • 提示通常,那么,当尝试修复生成过程问题,您需要重复排队具有相同的选项卡中的生成测试各种解决。可以快速试生成:

    • 生成结果窗口 通过选择 操作重试生成

    • 在团队资源管理器中 编译页 或从生成资源管理器通过选择已完成的生成,打开其快捷菜单并选择 重试生成