{"meta":{"title":"코드 검사 분석 시간이 너무 오래 걸립니다","intro":"구성을 code scanning 미세 조정하여 분석 시간을 최소화할 수 있습니다.","product":"보안 및 코드 품질","breadcrumbs":[{"href":"/ko/code-security","title":"보안 및 코드 품질"},{"href":"/ko/code-security/reference","title":"Reference"},{"href":"/ko/code-security/reference/code-scanning","title":"코드 검사"},{"href":"/ko/code-security/reference/code-scanning/troubleshoot-analysis-errors","title":"분석 오류 문제 해결"},{"href":"/ko/code-security/reference/code-scanning/troubleshoot-analysis-errors/analysis-takes-too-long","title":"분석 시간이 너무 오래 걸립니다"}],"documentType":"article"},"body":"# 코드 검사 분석 시간이 너무 오래 걸립니다\n\n구성을 code scanning 미세 조정하여 분석 시간을 최소화할 수 있습니다.\n\n분석에서 빌드 시간을 줄이기 위해 시도할 수 있는 code scanning 몇 가지 방법이 있습니다.\n\n## 메모리 또는 코어 늘리기\n\nGitHub 분석에 code scanning 호스팅된 실행기를 사용하고 있다면 대형 러너(으)로 업그레이드를 고려하십시오. 이들은 표준 실행기보다 더 많은 RAM, CPU 및 디스크 공간을 갖춘 GitHub-호스팅 실행기입니다. 자세한 대형 러너 정보는 code scanning 및 [더 큰 러너 사용](/ko/actions/how-tos/manage-runners/larger-runners)과 [기본 설정용으로 대형 러너 구성하기](/ko/code-security/how-tos/find-and-fix-code-vulnerabilities/manage-your-configuration/configure-larger-runners)를 참조하세요.\n\n자체 호스팅 실행기를 사용하여 분석을 실행하는 code scanning 경우 해당 실행기의 메모리 또는 코어 수를 늘릴 수 있습니다. 분석에 고급 설정으로 CodeQL를 사용하는 경우, 자체 호스팅 러너가 해당 요구 사항을 충족하는지 확인할 수 있도록 CodeQL에 권장되는 하드웨어 리소스를 검토하세요. 자세한 내용은 [CodeQL을 실행하기 위한 권장 하드웨어 리소스](/ko/code-security/reference/code-scanning/codeql/hardware-resources-for-codeql)을(를) 참조하세요.\n\n## 행렬 빌드를 사용하여 분석 병렬 처리\n\n여러 작업으로 구성된 워크플로의 분석 속도를 높이기 위해 행렬을 사용하도록 워크플로를 수정할 수 있습니다. 자세한 내용은 [워크플로에서 작업 변형 실행](/ko/actions/how-tos/write-workflows/choose-what-workflows-do/run-job-variations)을(를) 참조하세요.\n\n기본값 CodeQL 분석 워크플로 은 각 언어의 분석이 병렬로 실행되도록 하는 언어 행렬을 사용합니다. 그러나 고급 설정에서 사용하고 CodeQL \"CodeQL 초기화\" 단계에서 직접 분석하려는 언어를 지정한 경우 각 언어의 분석이 순차적으로 수행됩니다. 이 구성에서는 고급 설정 워크플로를 수정하여 행렬을 사용하도록 하면 분석 속도를 높일 수 있습니다. 예제는 [일부 언어는 CodeQL 고급 설정으로 분석되지 않았습니다.](/ko/code-security/reference/code-scanning/troubleshoot-analysis-errors/some-languages-not-analyzed)의 워크플로 추출을 참조하세요.\n\n## 단일 워크플로에서 분석되는 코드의 양을 줄입니다.\n\n분석 시간은 일반적으로 분석되는 코드의 양에 비례합니다. 고급 설정과 함께 사용하는 CodeQL 경우 한 번에 분석되는 코드의 양을 줄여 분석 시간을 줄일 수 있습니다. 예를 들어 테스트 코드를 제외하거나, 코드를 여러 개의 하위 집합으로 나누어 분석하는 방식으로 워크플로를 분리하여 실행할 수 있습니다.\n\nJava, Kotlin, Go, C, C++, C# `build-mode: autobuild` 과 같은 컴파일된 언어를 사용 `build-mode: manual` 하거나 CodeQL사용하는 경우 워크플로 실행 중에 빌드된 모든 코드를 분석합니다. 분석되는 코드의 양을 제한하려면 `run` 블록에 고유한 빌드 단계를 지정하여 분석하려는 코드만 빌드합니다. 사용자 고유의 빌드 단계 지정을 `paths` 및 `paths-ignore` 이벤트에서 `pull_request` 또는 `push` 필터를 사용하여 특정 코드가 변경된 경우에만 워크플로가 실행되도록 할 수 있습니다. 자세한 내용은 [GitHub Actions에 대한 워크플로 구문](/ko/actions/reference/workflows-and-actions/workflow-syntax#onpushpull_requestpull_request_targetpathspaths-ignore)을(를) 참조하세요.\n\n소스 코드를 컴파일하지 않고 분석하는 JavaScript, Python 및 TypeScript CodeQL 와 같은 언어 또는 사용하는 컴파일된 언어`build-mode: none`의 경우 분석할 코드 양을 제한하는 추가 구성 옵션을 지정할 수 있습니다. 자세한 내용은 [코드 검색을 위한 워크플로 구성 옵션](/ko/code-security/reference/code-scanning/workflow-configuration-options#specifying-directories-to-scan)을(를) 참조하세요.\n\nCodeQL 분석을 여러 워크플로로 나누는 경우에도, 리포지토리의 모든 코드를 분석하는 워크플로를 `schedule`에서 하나 이상 두는 것을 권장합니다. 구성 요소 간의 데이터 흐름을 분석하기 때문에 CodeQL 일부 복잡한 보안 동작은 전체 빌드에서만 검색될 수 있습니다.\n\n## `schedule` 이벤트 중에만 실행\n\n분석이 `push` 또는 `pull_request` 이벤트 중 느려질 수 있습니다. 그렇다면 `schedule` 이벤트에서만 트리거되도록 분석을 설정할 수 있습니다. 분석에 사용하는 경우 고급 설정 워크플로를 사용하여 CodeQLcode scanning 구성할 수 있지만 기본 설정에서는 구성할 수 없습니다. 자세한 내용은 [GitHub Actions에 대한 이해](/ko/actions/get-started/understand-github-actions#events)을(를) 참조하세요.\n\n## 워크플로가 실행되는 쿼리 또는 규칙 확인\n\n분석 시간을 줄이는 또 다른 방법은 끌어오기 요청에서 실행되는 워크플로에서 중요하다고 판단되는 쿼리나 규칙만 실행하는 것입니다. 타사 도구를 사용하는 경우 도구에 대한 code scanning설명서를 참조해야 합니다.\n\nCodeQL에는 각 언어마다 사용할 수 있는 두 가지 주요 쿼리 모음이 있습니다. 데이터베이스 빌드를 CodeQL 최적화했고 프로세스가 너무 긴 경우 실행하는 쿼리 수를 줄일 수 있습니다. 기본 쿼리 도구 모음은 자동으로 실행되며 품질과 속도 간의 최적의 균형을 제공합니다.\n\n고급 설정과 함께 사용하는 CodeQL 경우 기본 쿼리 외에도 추가 쿼리 또는 쿼리 그룹을 실행할 수 있습니다. 워크플로가 `queries` 요소를 사용하여 실행할 추가 쿼리 도구 모음 또는 추가 쿼리를 정의하는지 확인합니다. 추가 쿼리 도구 모음 또는 쿼리를 사용하지 않도록 설정하여 실험할 수 있습니다. 자세한 내용은 [코드 검색을 위한 워크플로 구성 옵션](/ko/code-security/reference/code-scanning/workflow-configuration-options#using-queries-in-ql-packs)을(를) 참조하세요."}