Skip to main content

диагностический экспорт

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

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

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

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

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

Краткий обзор

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

Описание

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

Доступно начиная с v2.12.6.

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

--format=<format>

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

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

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

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

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

-o, --output=<output>

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

--sarif-exit-code=<sarifExitCode>

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

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

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

--sarif-category=<category>

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

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

Это значение будет отображаться (с добавлением косой черты в конце, если ее еще нет) в качестве свойства <run>.automationId в SARIF v1, свойства <run>.automationLogicalId в SARIF v2 и свойства <run>.automationDetails.id в SARIF v2.1.0.

--diagnostic-dir=<diagnosticDirs>

Каталог, содержащий диагностические сообщения CodeQL. Вы можете передать его несколько раз, чтобы включить несколько каталогов.

Общие параметры

-h, --help

Показать этот текст справки.

-J=<opt>

[Дополнительно] Предоставьте параметр виртуальной машине Java, запустив команду .

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

-v, --verbose

Добавочное увеличение числа выводемых сообщений о ходе выполнения.

-q, --quiet

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

--verbosity=<level>

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

--logdir=<dir>

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

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