关于 CodeQL for Visual Studio Code 扩展中的设置
您可以更改大量 CodeQL for Visual Studio Code 扩展的设置,包括
- 扩展使用的 CodeQL CLI 版本。
- 扩展如何显示先前的查询。
- 扩展如何运行查询。
编辑 CodeQL 扩展的设置
-
打开 “Extensions” 视图,右键单击 CodeQL,然后点击 Extension Settings。

-
在设置窗口中,根据需要编辑设置。新设置会自动保存。

提示
或者,您也可以通过打开 VS Code 命令面板并选择 Preferences: Open User Settings (JSON) 来以 JSON 格式编辑设置。
选择 CodeQL CLI 的版本
要覆盖默认行为并使用特定版本的 CodeQL CLI,您可以在扩展设置中指定 CodeQL CLI 的 “Executable Path”,并指向您已有的 CodeQL CLI 副本。即名为 codeql(Linux 和 macOS)或 codeql.exe(Windows)的文件。有关默认行为的更多信息,请参阅 在 VS Code 扩展中管理 CodeQL CLI。
更改查询历史项的标签
查询历史的 “Format” 设置决定扩展在查询历史中列出查询的方式。默认情况下,每个项的标签采用以下格式
QUERY-NAME on DATABASE-NAME - QUERY-STATUS NUMBER-OF-RESULTS [QUERY-RUNTIME]
要覆盖默认标签,您可以为查询历史项指定不同的格式。
更改查询历史项的保留期限
默认情况下,“Query History” 视图中的项会保留 30 天。您可以通过更改 “Query History: Ttl” 设置来设定不同的生存时间(TTL)。若要无限期保留项,请将该值设为 0。
配置本地运行查询的设置
“Running Queries” 下有多项设置。例如,如果查询运行过慢且经常超时,您可能希望通过更改 “Running Queries: Memory” 设置来增加内存。
如果您想检查查询性能,请启用 “Running Queries: Debug” 设置,以包含时间统计和元组计数。这些信息将显示在 “Output” 视图的 CodeQL “Query Server” 选项卡的日志中。元组计数很有用,因为它指示查询计算的 predicates(谓词) 的规模。
若要将查询服务器日志保存到自定义位置,请编辑 “Running Queries: Custom Log Directory” 设置。使用自定义日志目录后,扩展会永久保存日志,而不是在每个工作区会话结束后自动删除。这在您想分析这些日志以提升查询性能时非常有用。
配置变体分析的设置
“Variant Analysis” 下有多项设置,可用于定义或编辑用于变体分析的 GitHub 仓库列表,并切换到不同的控制仓库。有关控制仓库的目的和要求的信息,请参阅 使用多仓库变体分析大规模运行 CodeQL 查询。
您还可以通过编辑工作区中的 databases.json 文件来修改 “Variant Analysis Repositories” 视图中显示的项。该文件包含视图中所有项的 JSON 表示。要在编辑器窗口中打开 databases.json 文件,请点击 “Variant Analysis Repositories” 视图右上角的 { } 图标。这样您即可看到视图中仓库、组织及列表的结构化表示。例如
{
"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"
}
}
您可以直接编辑此文件来更改视图中显示的项或添加新项。
配置添加数据库的设置
要自动将数据库源文件夹添加到工作区,您可以启用 “Adding Databases: Add Database Source to Workspace” 设置。
此设置默认已禁用。如果您经常浏览数据库的源代码(例如查看代码的抽象语法树),可能需要启用该设置。更多信息请参阅 探索源代码的结构。
注意
如果您使用的是单文件夹工作区,添加数据库源文件夹会导致工作区重新加载为多根工作区。这可能会导致查询历史和数据库列表被重置。
在启用此设置之前,建议先将工作区保存为多根工作区。更多信息请参阅 Visual Studio Code 文档中的 Multi-root Workspaces(多根工作区)。
配置本地测试查询的设置
要增加用于测试查询的线程数,您可以更新 “Running Tests: Number Of Threads” 设置。
若要在运行测试时向 CodeQL CLI 传递额外参数,您可以更新 “Running Tests: Additional Test Arguments” 设置。有关可用参数的更多信息,请参阅 test run(测试运行)。
配置遥测和数据收集的设置
您可以配置 CodeQL 扩展是否收集遥测数据。默认情况下此功能已禁用。更多信息请参阅 CodeQL for Visual Studio Code 中的遥测。
延伸阅读
- Visual Studio Code 文档中的 用户和工作区设置