Skip to main content

查看代码扫描日志

可以在 GitHub.com 中查看 code scanning 分析期间生成的输出。

谁可以使用此功能?

If you have write permissions to a repository, you can view the code scanning logs for that repository.

Code scanning 可用于 GitHub.com 上的所有公共存储库。 若要在组织拥有的专用存储库中使用 code scanning,必须具有 GitHub Advanced Security 许可证。 有关详细信息,请参阅“关于 GitHub 高级安全性”。

关于 code scanning 配置

可以使用各种工具在存储库中配置 code scanning。 有关详细信息,请参阅“配置代码扫描的默认设置”和“配置代码扫描的高级设置”。

您可用的日志和诊断信息取决于您在 code scanning 中使用的方法。 你可以使用警报列表中的“工具”下拉菜单,检查存储库的“安全性”选项卡中使用的 code scanning 类型。 有关详细信息,请参阅“管理存储库的代码扫描警报”。

关于分析和诊断信息

您可以使用 GitHub 上的 CodeQL 分析查看 code scanning 运行的分析和诊断信息。

在警报列表顶部的标题中显示最近分析的“分析”信息。 有关详细信息,请参阅“管理存储库的代码扫描警报”。

“诊断”信息显示在行动工作流日志中,包含摘要指标和提取器诊断。 有关访问 GitHub 上的 code scanning 日志的信息,请参阅下面的“查看 code scanning 的日志记录输出”。

如果您在 GitHub 外部使用 CodeQL CLI ,您将在数据库分析期间生成的输出中看到诊断信息。 此信息也包含在您随 code scanning 结果上传到 GitHub 的 SARIF 结果文件中。

有关 CodeQL CLI 的信息,请参阅“使用 CodeQL 查询分析代码”。

关于摘要指标

摘要指标包括:

  • 在创建和提取 CodeQL 数据库之前,代码库中的代码行(用作基线)
  • 从代码中提取的 CodeQL 数据库中的代码行,包括外部库和自动生成的文件
  • CodeQL 数据库中的代码行,不包括自动生成的文件和外部库

关于 CodeQL 源代码提取诊断信息

提取器诊断仅涵盖分析期间看到的文件,指标包括:

  • 成功分析的文件数量
  • 在创建数据库过程中生成提取器错误的文件数量
  • 在创建数据库过程中生成提取器警告的文件数量

通过启用调试日志记录,可以查看有关在创建数据库期间发生的 CodeQL 提取器错误和警告的更多详细信息。 有关详细信息,请参阅“日志不够详细”。

查看来自 code scanning 的日志记录输出

本节适用于使用 code scanning 的 GitHub Actions 运行(CodeQL 或第三方)。

为存储库配置 code scanning 后,可以监视操作运行时的输出。

  1. 在存储库名称下,单击 “操作”。

    “github/docs”存储库的选项卡的屏幕截图。 “操作”选项卡以橙色边框突出显示。

    You can view the run status of code scanning and get notifications for completed runs. For more information, see "Managing a workflow run" and "Configuring notifications." 条目的文本是提交消息的标题。

    “所有工作流”页的屏幕截图。 在工作流运行列表中,有一个标记为“创建 .github/workflows/codeql.yml”的运行。

  2. 单击 code scanning 工作流程的项目。

注意:如果要查找通过启用默认设置触发的 CodeQL 工作流运行,则条目的文本为“CodeQL”。

1. 单击左侧的作业名称。 例如,“分析(语言)”。

“分析(转到)”作业的日志输出的屏幕截图。 在左侧边栏的“作业”标题下,列出了“分析(转到)”。

  1. 查看此工作流运行时操作的日志记录输出。

  2. (可选)要查看有关触发工作流运行的提交的更多详细信息,请单击短格式提交哈希。 此短格式提交哈希是紧跟在提交作者用户名之后的 7 个小写字符。

  3. 在所有作业完成后,您可以查看已识别的任何 code scanning 警报的详细信息。 有关详细信息,请参阅“管理存储库的代码扫描警报”。