关于 CodeQL for Visual Studio Code 扩展中的设置
您可以更改 CodeQL for Visual Studio Code 扩展的众多设置,包括
- 扩展使用的 CodeQL CLI 版本。
- 扩展显示先前查询的方式。
- 扩展运行查询的方式。
编辑 CodeQL 扩展的设置
-
打开“扩展”视图,右键单击**CodeQL**,然后单击**扩展设置**。
-
在“设置”窗口中,根据需要编辑设置。新设置会自动保存。
提示
或者,您可以通过打开 VS Code 命令面板并选择**首选项:打开用户设置 (JSON)**以 JSON 格式编辑设置。
选择 CodeQL CLI 版本
要覆盖默认行为并使用特定版本的 CodeQL CLI,您可以在扩展设置中指定 CodeQL CLI 的“可执行文件路径”,并将其指向您现有的 CodeQL CLI 副本。也就是说,名为codeql
(Linux 和 macOS)或codeql.exe
(Windows)的文件。有关默认行为的更多信息,请参阅“配置对 CodeQL CLI 的访问”。
更改查询历史记录项的标签
查询历史记录“格式”设置控制扩展如何在查询历史记录中列出查询。默认情况下,每个项目都带有一个具有以下格式的标签
QUERY-NAME on DATABASE-NAME - QUERY-STATUS NUMBER-OF-RESULTS [QUERY-RUNTIME]
要覆盖默认标签,您可以为查询历史记录项指定不同的格式。
更改查询历史记录项的保留期限
默认情况下,“查询历史记录”视图中的项目保留 30 天。您可以通过更改“查询历史记录:TTL”设置来设置不同的生存时间 (TTL)。要无限期保留项目,请将值设置为 0。
配置本地运行查询的设置
“运行查询”下有许多设置。例如,如果您的查询运行速度太慢并且经常超时,您可能需要通过更改“运行查询:内存”设置来增加内存。
如果要检查查询性能,请启用“运行查询:调试”设置以包含时间和元组计数。然后,这将在“输出”视图的 CodeQL“查询服务器”选项卡中的日志中显示。元组计数很有用,因为它指示查询计算的谓词的大小。
要将查询服务器日志保存在自定义位置,请编辑“运行查询:自定义日志目录”设置。如果使用自定义日志目录,扩展会永久保存日志,而不是在每次工作区会话后自动删除它们。如果您想调查这些日志以提高查询性能,这将很有用。
配置变体分析设置
“变体分析”下有许多设置,您可以使用这些设置来定义或编辑用于变体分析的 GitHub 代码库列表,并更改为不同的控制器代码库。有关控制器代码库的目的和要求的信息,请参阅“使用多代码库变体分析大规模运行 CodeQL 查询”。
您还可以通过编辑 Visual Studio Code 工作区中名为databases.json
的文件来编辑“变体分析存储库”视图中显示的项目。此文件包含视图中显示的所有项目的 JSON 表示形式。要在编辑器窗口中打开您的databases.json
文件,请单击“变体分析存储库”视图右上方的**{ }**图标。然后,您可以看到视图中存储库、组织和列表的结构化表示形式。
{
"version": 1,
"databases": {
"variantAnalysis": {
"repositoryLists": [
{
"name": "My favorite JavaScript repos",
"repositories": [
"facebook/react",
"babel/babel",
"angular/angular"
]
}
],
"owners": [
"microsoft"
],
"repositories": [
"apache/hadoop"
]
}
},
"selected": {
"kind": "variantAnalysisSystemDefinedList",
"listName": "top_10"
}
}
您可以通过直接编辑此文件来更改视图中显示的项目或添加新项目。
配置添加数据库的设置
要自动将数据库源文件夹添加到您的工作区,您可以启用“添加数据库:将数据库源添加到工作区”设置。
此设置默认情况下处于禁用状态。如果您定期浏览数据库的源代码(例如,查看代码的抽象语法树),则可能需要启用此设置。有关更多信息,请参阅“探索源代码的结构”。
注意
如果您处于单文件夹工作区,则添加数据库源文件夹会导致工作区重新加载为多根工作区。这可能会导致查询历史记录和数据库列表重置。
在启用此设置之前,我们建议您将工作区保存为多根工作区。有关更多信息,请参阅 Visual Studio Code 文档中的多根工作区。
配置在本地测试查询的设置
要增加用于测试查询的线程数,您可以更新“运行测试:线程数”设置。
要运行测试时向 CodeQL CLI 传递其他参数,您可以更新“运行测试:其他测试参数”设置。有关可用参数的更多信息,请参阅“测试运行”。
配置遥测和数据收集的设置
您可以配置 CodeQL 扩展是否收集遥测数据。默认情况下,此功能处于禁用状态。有关更多信息,请参阅“CodeQL for Visual Studio Code 中的遥测”。
进一步阅读
- 用户和工作区设置(Visual Studio Code 文档)