Skip to main content

диагностика экспорта базы данных

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

Кто эту функцию можно использовать?

GitHub CodeQL лицензируется на основе каждого пользователя при установке. Вы можете использовать CodeQL только для определенных задач в соответствии с ограничениями лицензии. Дополнительные сведения см. в разделе Сведения о интерфейсе командной строки CodeQL.

Если у вас есть лицензия GitHub Advanced Security, можно использовать CodeQL для автоматического анализа, непрерывной интеграции и непрерывной доставки. Дополнительные сведения см. в разделе Сведения о GitHub Advanced Security.

Это содержимое описывает последний выпуск данных CodeQL CLI. Дополнительные сведения об этом выпуске см. в статье https://github.com/github/codeql-cli-binaries/releases.

Чтобы просмотреть сведения о параметрах, доступных для этой команды в предыдущем выпуске, выполните команду с --help параметром в терминале.

Краткие сведения

Shell
codeql database export-diagnostics --format=<format> [--output=<output>] <options>... -- <database>

Description

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

Доступно с момента v2.12.6.

Параметры

Основные параметры

<database>

[Обязательный] Путь к базе данных CodeQL в стадии разработки. Это должно быть подготовлено для извлечения с помощью инициализации базы данных codeql.

--db-cluster Если этот параметр задан, это не сама база данных, а каталог, содержащий базы данных, и все эти базы данных будут обрабатываться вместе.

--format=<format>

[Обязательный] Формат, в котором нужно записать результаты. Одно из двух значений:

raw: список необработанных и непретируемых диагностических сообщений в виде объектов JSON.

sarif-latest: формат обмена статическими результатами анализа (SARIF), формат на основе JSON для описания результатов статического анализа. Этот параметр формата использует последнюю поддерживаемую версию (версии 2.1.0). Этот параметр не подходит для использования в автоматизации, так как он создает разные версии SARIF между различными версиями CodeQL.

sarifv2.1.0: SARIF версии 2.1.0.

text: список точек маркера диагностических сообщений.

--[no-]db-cluster

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

-o, --output=<output>

Выходной путь для записи диагностических сведений в.

--sarif-exit-code=<sarifExitCode>

[Только форматы SARIF] Код выхода из неработоемого процесса.

--sarif-exit-code-description=<sarifExitCodeDescription>

[Только форматы SARIF] Причина завершения сбоя процесса.

--sarif-category=<category>

[Только форматы SARIF] [Рекомендуется] Укажите категорию для этого анализа, включаемую в выходные данные SARIF. Категорию можно использовать для различения нескольких анализов, выполняемых в одном и том же фиксации и репозитории, но на разных языках или в разных частях кода.

Если вы анализируете одну и ту же версию базы кода различными способами (например, для разных языков) и отправляете результаты в GitHub для презентации в сканировании кода, это значение должно отличаться между каждым из анализов, что указывает сканирование кода, что дополнение_ к анализу_, а не заменять друг друга. (Значения должны быть согласованы между выполнением одного и того же анализа для разных версий базы кода.)

Это значение будет отображаться (с косой косой чертой, добавленной, если она еще не присутствует) в качестве <run>.automationDetails.id свойства.

Распространенные параметры

-h, --help

Отображение этого текста справки.

-J=<opt>

[Дополнительно] Укажите параметр JVM, выполняя команду.

(Убедитесь, что параметры, содержащие пробелы, не будут обрабатываться правильно.)

-v, --verbose

Постепенно увеличьте число отображаемых сообщений о ходе выполнения.

-q, --quiet

Постепенно уменьшайте количество отображаемых сообщений о ходе выполнения.

--verbosity=<level>

[Дополнительно] Явным образом задайте уровень детализации на одну из ошибок, предупреждений, хода выполнения, хода выполнения+, хода выполнения++, хода выполнения+++. Переопределяет -v и -q.

--logdir=<dir>

[Дополнительно] Запись подробных журналов в один или несколько файлов в указанном каталоге с созданными именами, включающими метки времени и имя выполняющегося подкоманда.

(Чтобы записать файл журнала с именем, над которым у вас есть полный контроль, вместо этого предоставьте --log-to-stderr и перенаправите stderr по мере необходимости.)

--common-caches=<dir>

[Дополнительно] Управляет расположением кэшированных данных на диске, которые будут сохраняться между несколькими запусками интерфейса командной строки, такими как скачанные пакеты QL и скомпилированные планы запросов. Если этот параметр не задан явным образом, по умолчанию используется каталог с именем .codeql в домашнем каталоге пользователя; он будет создан, если он еще не существует.

Доступно с момента v2.15.2.