SuperAPI AI 工具集

binlog-failure-analysis

通用与其它

查看项目

更新于 10-16 00:04

技能介绍

用途:从 .binlog 文件诊断 MSBuild 构建失败,适用于控制台输出难以定位问题、需要排查跨项目级联失败等场景。

主要能力:优先使用随插件提供的 binlog MCP 服务器(Microsoft.AITools.BinlogMcp,命名空间 binlog),以结构化工具查询构建错误与警告、MSBuild 属性与值、MSBuild 项(PackageReference、ProjectReference 等)、项目求值数据、目标执行细节以及嵌入 binlog 的文件内容。不确定可用工具时先调用 tools/list。

使用方式:.binlog 是二进制格式,禁止用 cat、head、strings 等直接读取,只能通过 MCP 工具查询。源文件/项目文件(.csproj、.props、.targets、App.config 等)可能不在磁盘上,若找不到只能通过 MCP 工具从 binlog 内嵌内容读取。调查过程中应边查边总结,证据足够即给出结论,部分结论加清晰推理优于超时。

回退流程(MCP 不可用,如旧版 SDK 或离线环境):将 binlog 重放为文本日志: dotnet msbuild build.binlog -noconlog
-fl "-flp:v=diag;logfile=full.log;performancesummary"
-fl1 "-flp1:errorsonly;logfile=errors.log"
-fl2 "-flp2:warningsonly;logfile=warnings.log" PowerShell 中需使用 -flp:"v=diag;logfile=full.log;performancesummary"(分号加引号)。随后搜索文本日志,例如:cat errors.log;grep -n -B2 -A2 "CS0246" full.log;grep -i "CoreCompile.FAILED|Build FAILED|error MSB" full.log;grep 'Target "CoreCompile"' full.log | grep -oP 'project "[^"]"'。

若无 binlog,可用 dotnet build /bl:build.binlog 生成。

限制:依赖 binlog MCP 服务器或 dotnet msbuild 重放能力;资料未提供具体收费、平台与效果信息。