查看、保存和配置生成日志文件
在 Visual Studio 交互式开发环境(IDE)中生成项目后,可以在 Visual Studio 输出 窗口中查看有关生成的记录信息。 输出数据可以保存到可以在 Visual Studio 和其他编辑器中查看的日志文件。
这些日志可帮助你排查构建中的问题。 可以找到用于所有生成工具的确切命令行,并获取有关整个生成过程的完整诊断数据。 Visual Studio 提供了用于指定要在生成输出和生成日志文件中看到的信息类型的选项。
本文介绍如何在 Visual Studio 中生成、配置和查看生成日志文件。
生成和查看生成日志文件
请按照以下步骤为你的方案生成和查看生成日志文件。
C++项目:
生成项目时,Visual Studio 会为你保存日志文件。 日志文件的常见位置包括 Release\<ProjectName>.log、Debug\<ProjectName>.log,以及 <ProjectName>.txt。 所有文件位置都相对于项目根文件夹,并基于特定的配置。
使用 Windows 资源管理器 或 文件资源管理器 浏览到日志文件。
在首选编辑器中打开日志文件。
.NET 项目:
对于 .NET 项目,指示 Visual Studio 保存日志文件:
在 Visual Studio 中,选择“生成”>“生成解决方案”。
在“输出”窗口中,选择文本并使用 ctrl+S 键盘快捷方式。
Visual Studio 会提示你输入保存生成输出的位置。 然后,可以在 Visual Studio 或其他编辑器中从该位置打开日志文件。
MSBuild:
可以使用
-fileLogger
(-fl
) 命令行选项直接从命令行运行 MSBuild 来生成生成日志。 有关详细信息,请参阅 使用 MSBuild获取生成日志。使用 MSBuild,还可以生成二进制日志(
-binaryLogger
或-bl
命令行选项)。 可以在 结构化日志查看器中查看二进制日志。 结构化日志查看器提供了更丰富的 UI,可以更轻松地理解复杂的生成过程。
可以将环境变量设置为将 Visual Studio 配置为将二进制日志写入文件系统。 将 MSBuildDebugEngine
设置为 1
,并将 MSBUILDDEBUGPATH
设置为生成日志文件的所需位置。 必须在启动 Visual Studio 的环境中设置变量。 这些设置会影响所有 Visual Studio 内部版本,因此,如果只想获取生成的特定调用的日志,则它可能不是一个不错的选择。
有关在 .NET 项目中生成日志记录的更高级 UI 支持,请考虑安装项目系统工具扩展。 安装扩展后,可以在 UI 中打开和关闭二进制日志记录,然后从日志列表中选择。 但是,由于它与 Visual Studio 生成系统集成的方式,日志与从 输出 窗口或环境变量中获取的日志略有不同。
指定生成日志的数据详细程度
可以指定要包含在生成日志文件中的信息量。 日志文件列中的数据量按“记录器详细程度”来度量。 日志文件行数表示“收集的消息数”。 日志详细程度(列值)会影响记录的消息类型(行值)。 “安静”详细程度表示在生成输出中产生最少日志记录。 诊断 是最详细的设置,并生成包含所有可能数据的日志文件。
下表基于记录器详细程度显示收集的消息类型:
消息类型/详细程度 | 安静 | 最少 | 正常 | 详细 | 诊断 |
---|---|---|---|---|---|
错误 | ✅ | ✅ | ✅ | ✅ | ✅ |
警告 | ✅ | ✅ | ✅ | ✅ | ✅ |
高重要性消息 | ✅ | ✅ | ✅ | ✅ | |
一般重要性消息 | ✅ | ✅ | ✅ | ||
低重要性消息 | ✅ | ✅ | |||
其他 MSBuild 引擎信息 | ✅ |
您可以通过以下步骤来配置日志记录器的详细程度:
在 Visual Studio 中,选择 工具>选项 打开 选项 对话框。
在对话框中,展开 项目和解决方案 部分,然后选择 生成和运行 选项卡。
使用“MSBuild 项目生成输出详细程度”下拉列表并选择生成输出首选项。
使用“MSBuild 项目生成日志文件详细程度”下拉列表并选择记录器详细程度首选项。
提示
若要查看用于编译器和其他工具的命令行,请至少选择”详细”详细程度级别。
若要应用更改,请选择“确定”。
重要
要使更改在“输出”窗口中生效,必须为更改重新生成项目。 对于C++项目,项目重新生成还可确保更改反映在 <ProjectName>.txt 文件中。
有关详细信息,请参阅 选项对话框、项目和解决方案、生成和运行 和 LoggerVerbosity。
对大型日志文件使用二进制日志
二进制日志是 .NET 项目的一项可选功能,可让你拥有更丰富的日志浏览体验,以便更轻松地在大型日志中查找信息。 若要使用二进制日志,请安装 Project System Tools。 有关详细信息,请参阅 https://msbuildlog.com
和 二进制日志。
二进制日志是 .NET 项目的一项可选功能,可让你拥有更丰富的日志浏览体验,以便更轻松地在大型日志中查找信息。 若要使用二进制日志,请安装 Project System Tools 2022。 有关详细信息,请参阅 https://msbuildlog.com
和 二进制日志。
相关内容
- Visual Studio 中生成和清理项目和解决方案
- 编译和生成
- 使用 MSBuild 获取生成日志