Skip to main content

데이터베이스 내보내기 진단

[실험적] 실패한 분석에 대한 진단 정보를 데이터베이스에서 내보냅니다.

누가 이 기능을 사용할 수 있나요?

CodeQL은(는) 다음 리포지토리 유형에 사용할 수 있습니다.

이 문서의 내용

참고 항목

이 콘텐츠는 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부터 사용할 수 있습니다.

Options

기본 옵션

<database>

          \[필수] 생성 중인 CodeQL 데이터베이스의 경로입니다. 이는 [codeql database init](/code-security/codeql-cli/codeql-cli-manual/database-init)를 사용하여 추출 준비가 되어 있어야 합니다.

--db-cluster 옵션이 지정되면 이는 데이터베이스 자체가 아니라, 데이터베이스를 포함하는 디렉터리이며, 해당 디렉터리 내의 데이터베이스들은 모두 함께 처리됩니다.

--format=<format>

          \[필수] 결과를 기록할 형식입니다. 다음 중 하나입니다.

          `raw`: JSON 객체로, 파싱되지 않은 원시 진단 메시지의 목록입니다.

          `sarif-latest`: SARIF(정적 분석 결과 교환 형식)는 정적 분석 결과를 설명하기 위한 JSON 기반 형식입니다. 이 형식 옵션은 지원되는 최신 버전인 v2.1.0을 사용합니다. 이 옵션은 CodeQL 버전마다 서로 다른 SARIF 버전을 생성하므로 자동화에 사용하기에 적합하지 않습니다.

          `sarifv2.1.0`: SARIF v2.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 팩과 컴파일된 쿼리 계획 등, CLI를 여러 번 실행해도 유지되는 디스크에 캐시된 데이터의 위치를 제어합니다. 명시적으로 설정하지 않으면, 기본적으로 사용자의 홈 디렉터리에 지정된 `.codeql` 이름의 디렉터리로 설정됩니다. 디렉터리가 아직 존재하지 않는 경우, 새로 생성됩니다.

v2.15.2부터 사용할 수 있습니다.