Skip to main content

Настройка параметров

Параметры для расширения CodeQL можно изменить для расширения Visual Studio Code в соответствии с вашими потребностями.

Сведения о параметрах в расширении CodeQL для расширения Visual Studio Code

Можно изменить множество параметров для расширения CodeQL для расширения Visual Studio Code, включая:

  • Какая версия CodeQL CLI использует расширение.
  • Как расширение отображает предыдущие запросы.
  • Как расширение выполняет запросы.

Изменение параметров расширения CodeQL

  1. Откройте представление "Расширения" и щелкните правой кнопкой мыши CodeQL, а затем щелкните "Параметры расширения".

    Снимок экрана: представление "Расширения" с меню правой кнопкой мыши и "Параметры расширения", описанные в темно-оранжевый цвет.

  2. В окне "Параметры" измените параметры по мере необходимости. Новые параметры сохраняются автоматически.

    Снимок экрана: окно параметров расширения CodeQL для VS Code, отображаемое в VS Code.

Tip

Кроме того, можно изменить параметры в формате JSON, открыв VS Code Command Palette и выбрав параметры: открыть параметры пользователя (JSON).

Выбор версии CodeQL CLI

Чтобы переопределить поведение по умолчанию и использовать определенную версию CodeQL CLI, можно указать CodeQL CLI "Исполняемый путь" в параметрах расширения и указать ей существующую копию данных CodeQL CLI. То есть файл с именем codeql (Linux и macOS) или codeql.exe (Windows). Дополнительные сведения о поведении по умолчанию см. в разделе "Настройка доступа к CLI CodeQL".

Изменение меток элементов журнала запросов

Параметр журнала запросов "Формат" определяет, как расширение перечисляет запросы в журнале запросов. По умолчанию каждый элемент имеет метку со следующим форматом:

QUERY-NAME on DATABASE-NAME - QUERY-STATUS NUMBER-OF-RESULTS [QUERY-RUNTIME]

Чтобы переопределить метку по умолчанию, можно указать другой формат для элементов журнала запросов.

Изменение срока хранения элементов журнала запросов

По умолчанию элементы в представлении "Журнал запросов" хранятся в течение 30 дней. Можно задать другое время жизни (TTL), изменив параметр "Журнал запросов: Ttl". Чтобы сохранить элементы на неопределенный срок, задайте значение 0.

Настройка параметров локального выполнения запросов

В разделе "Выполнение запросов" существует ряд параметров. Например, если запросы выполняются слишком медленно и часто истекает время ожидания, может потребоваться увеличить память, изменив параметр "Выполнение запросов: память".

Если вы хотите проверить производительность запросов, включите параметр "Выполнение запросов: отладка", чтобы включить количество времени и кортежей. Затем это будет отображаться в журналах на вкладке CodeQL "Сервер запросов" представления "Вывод". Количество кортежей полезно, так как оно указывает размер предикатов , вычисляемых запросом.

Чтобы сохранить журналы сервера запросов в пользовательском расположении, измените параметр "Выполнение запросов: Пользовательский каталог журналов". Если вы используете пользовательский каталог журналов, расширение сохраняет журналы безвозвратно, а не автоматически удаляет их после каждого сеанса рабочей области. Это полезно, если вы хотите исследовать эти журналы, чтобы повысить производительность запросов.

Настройка параметров для анализа вариантов

Вы также можете изменить элементы, отображаемые в представлении "Репозитории анализа вариантов", изменив файл в рабочей databases.jsonобласти Visual Studio Code. Этот файл содержит представление 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"
  }
}

Вы можете изменить элементы, отображаемые в представлении, или добавить новые элементы, напрямую изменив этот файл.

Настройка параметров для добавления баз данных

Чтобы автоматически добавить папки источника базы данных в рабочую область, можно включить параметр "Добавление баз данных: добавление источника базы данных в рабочую область".

Этот флажок по умолчанию снят. Можно включить параметр, если вы регулярно просматриваете исходный код баз данных (например, чтобы просмотреть абстрактное дерево синтаксиса кода). Дополнительные сведения см. в разделе Изучение структуры исходного кода.

Note

Если вы находитесь в рабочей области с одной папкой, добавление папок источника базы данных приведет к перезагрузке рабочей области в виде нескольких корневых рабочих областей. Это может привести к сбросу журналов запросов и списков баз данных.

Перед включением этого параметра рекомендуется сохранить рабочую область в качестве много корневой рабочей области. Дополнительные сведения см. в документации по Visual Studio Code в нескольких корневых рабочих областях.

Настройка параметров для локального тестирования запросов

Чтобы увеличить количество потоков, используемых для тестирования запросов, можно обновить параметр "Выполнение тестов: количество потоков".

Чтобы передать дополнительные аргументы в CodeQL CLI при выполнении тестов, можно обновить параметр "Выполнение тестов: дополнительные аргументы теста". Дополнительные сведения о доступных аргументах см. в разделе "тестовое выполнение".

Настройка параметров для телеметрии и сбора данных

Можно настроить, собирает ли расширение CodeQL данные телеметрии. Эта функция отключена по умолчанию. Дополнительные сведения см. в разделе Телеметрия в CodeQL для Visual Studio Code.

Дополнительные материалы

  • Параметры пользователя и рабочей области в документации по Visual Studio Code