跳至主要内容

自定义设置

您可以编辑 CodeQL for Visual Studio Code 扩展的设置,以满足您的需求。

关于 CodeQL for Visual Studio Code 扩展中的设置

您可以更改大量 CodeQL for Visual Studio Code 扩展的设置,包括

  • 扩展使用的 CodeQL CLI 版本。
  • 扩展如何显示先前的查询。
  • 扩展如何运行查询。

编辑 CodeQL 扩展的设置

  1. 打开 “Extensions” 视图,右键单击 CodeQL,然后点击 Extension Settings

    Screenshot of the "Extensions" view, with the right-click menu displayed and "Extension Settings" outlined in dark orange.

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

    Screenshot of the CodeQL for VS Code Extension Settings window displayed inside VS Code.

提示

或者,您也可以通过打开 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 中的遥测

延伸阅读

© . This site is unofficial and not affiliated with GitHub, Inc.