关于 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 后,可以监视操作运行时的输出。
-
在仓库名称下,单击“ Actions”****。

你将看到一个列表,���中包含一个用于运行 code scanning 工作流的条目。 条目的文本是提交消息的标题。

-
单击 code scanning 工作流程的项目。
注意
如果要查找通过启用默认设置触发的 CodeQL 工作流运行,则条目的文本为“CodeQL”。
-
单击左侧的作业名称。 例如,分析(语言)。

-
查看此工作流运行时操作的日志记录输出。
-
(可选)要查看有关触发工作流运行的提交的更多详细信息,请单击短格式提交哈希。 此短格式提交哈希是紧跟在提交作者用户名之后的 7 个小写字符。
-
在所有作业完成后,您可以查看已识别的任何 code scanning 警报的详细信息。 有关详细信息,请参阅“评估存储库的代码扫描警报”。
确定 code scanning 默认设置是否使用了任何专用注册表
Code scanning 默认设置工作流包括 Setup proxy for registries 步骤。 查看用于默认设置的工作流运行时,可以展开此步骤以查看相应的日志并查找以下消息:
-
`Using registries_credentials input.` 为组织配置了至少一个专用注册表。 这包括 code scanning 默认设置不支持的专用注册表类型的配置。 有关支持的注册表类型的更多详细信息,请参阅 [AUTOTITLE](/code-security/securing-your-organization/enabling-security-features-in-your-organization/giving-org-access-private-registries#code-scanning-default-setup-access-to-private-registries)。 -
Credentials loaded for the following registries:- 如果下面没有配置列表,则表示找不到 code scanning 默认设置支持的专用注册表配置。
- 否则,将为每个成功加载的受支持配置显示一行。 例如,包含
Type: nuget_feed; Host: undefined; Url: https://nuget.pkg.github.com/; Username: undefined; Password: true; Token: false的行表示已加载专用 NuGet 源配置。 - 日志中有关配置的信息可能与用户界面 (UI) 中为组织配置的内容不完全一致。 例如,日志可能显示已设置
Password,即使 UI 中配置的是Token。
如果 Setup proxy for registries 步骤的输出符合预期,但 code scanning 默认设置无法成功访问专用注册表中的依赖项,则可以获取其他故障排除信息。 请参阅“日志不够详细”。
有关将 code scanning 默认配置访问权限授予专用注册表的详细信息,请参阅 授予安全功能访问专用注册表的权限。