이 문서에서는 특히 데이터베이스 분석하기 명령과 함께 해석 된 결과를 생성하는 데 사용할 쿼리를 작성하는 방법에 대해 설명합니다. 사용자 지정 쿼리에 대한 개념 정보는 사용자 지정 CodeQL 쿼리을 참조하세요.
유��한 쿼리 작성
사용자 지정 분석을 실행하기 전에 유효한 쿼리를 작성하고 .ql 확장명이 있는 파일로 저장해야 합니다. 쿼리 작성을 돕기 위한 광범위한 문서를 사용할 수 있습니다. 자세한 내용은 쿼리를 참조CodeQL하세요.
쿼리 메타데이터 포함
`database analyze` 명령으로 쿼리를 실행할 때, 결과가 올바르게 해석되도록 하려면 다음 두 가지 속성을 포함해야 합니다:
-
쿼리 식별자(
@id): 소문자 또는 숫자로 구성된 단어 시퀀스로,/또는-(으)로 구분되며, 쿼리를 식별하고 분류합니다. -
쿼리 형식(
@kind): 쿼리를 단순 경고(@kind problem), 코드 위치 시퀀스로 문서화된 경고(@kind path-problem), 추출기 문제 해결용(@kind diagnostic), 또는 요약 메트릭(@kind metric및@tags summary)으로 식별합니다.
이러한 메타데이터 속성에 대한 자세한 내용은 쿼리에 대한 CodeQL 메타데이터 및 쿼리 메타데이터 스타일 가이드를 참조하세요.
SARIF 파일에 사용자 지정 CodeQL 쿼리에 대한 쿼리 도움말 포함
쿼리 도움말 및 설명서 형식에 대한 자세한 내용은 사용자 지정 CodeQL 쿼리을 참조하세요.
코드 검사 분석을 실행할 때 SARIF 파일에 쿼리 도움말을 포함하려면 다음을 수행합니다.
-
다음 형식 중 하나로 쿼리 도움말을 작성합니다.
- Markdown 파일: 같은 이름으로 쿼리와 함께 Markdown 파일을 저장합니다(예:
my-query.md``my-query.ql).
`.qhelp` 파일**: 쿼리 도움말을 형식으로 `.qhelp` 작성한 다음, 분석을 실행하기 전에 Markdown으로 변환합니다. 자세한 내용은 [쿼리 도움말 파일](https://codeql.github.com/docs/writing-codeql-queries/query-help-files/#query-help-files) 및 [AUTOTITLE](/code-security/codeql-cli/using-the-advanced-functionality-of-the-codeql-cli/testing-query-help-files)을(를) 참조하세요. - Markdown 파일: 같은 이름으로 쿼리와 함께 Markdown 파일을 저장합니다(예:
-
`codeql database analyze`을(를) `--sarif-add-query-help` 옵션으로 실행하세요.codeql database analyze <database> --format=sarif-latest --output=results.sarif --sarif-add-query-help참고
`--sarif-add-query-help` 옵션은 v2.7.1 이상부터 사용 가능합니다. -
에 SARIF 파일을 업로드합니다 GitHub.
다음 단계
사용자 지정 쿼리를 공유하고 사용하려면 CodeQL 팩 게시 및 사용을 참조하세요.