InfoGrab DocsInfoGrab Docs

잡 로그

잡 로그에 대해 설명합니다.

Job logs # - Tier: Free, Premium, Ultimate - Offering: GitLab Self-Managed Job logs는 러너가 job을 처리하는 동안 러너에 의해 전송됩니다. job 페이지, 파이프라인, 이메일 알림 등 여러 위치에서 로그를 확인할 수 있습니다. 데이터 흐름 # 일반적으로 job logs에는 log 와 archived log 의 두 가지 상태가 있습니다. 다음 표에서 로그가 거치는 단계를 확인할 수 있습니다: 단계 상태 조건 데이터 흐름 저장 경로 1: patching log job이 실행 중일 때 Runner => Puma => file storage #{ROOT_PATH}/gitlab-ci/builds/#{YYYY_mm}/#{project_id}/#{job_id}.log 2: archiving archived log job이 완료된 후 Sidekiq이 로그를 아티팩트 폴더로 이동 #{ROOT_PATH}/gitlab-rails/shared/artifacts/#{disk_hash}/#{YYYY_mm_dd}/#{job_id}/#{job_artifact_id}/job.log 3: uploading archived log 로그가 아카이브된 후 Sidekiq이 아카이브된 로그를 오브젝트 스토리지로 이동(구성된 경우) #{bucket_name}/#{disk_hash}/#{YYYY_mm_dd}/#{job_id}/#{job_artifact_id}/job.log ROOT_PATH 는 환경에 따라 다릅니다: Linux 패키지의 경우 /var/opt/gitlab 입니다. 직접 컴파일한 설치의 경우 /home/git/gitlab 입니다. Job logs 로컬 위치 변경 # Docker 설치의 경우 데이터가 마운트된 경로를 변경할 수 있습니다. Helm 차트의 경우 오브젝트 스토리지를 사용하세요. job logs가 저장되는 위치를 변경하려면: Linux package (Omnibus) 선택 사항. 기존 job logs가 있는 경우 Sidekiq을 일시적으로 중지하여 지속적인 CI/CD 데이터 처리를 일시 중지합니다: sudo gitlab-ctl stop sidekiq /etc/gitlab/gitlab.rb 에서 새 스토리지 위치를 설정합니다: gitlab_ci['builds_directory'] = '/mnt/gitlab-ci/builds' 파일을 저장하고 GitLab을 재구성합니다: sudo gitlab-ctl reconfigure rsync 를 사용하여 job logs를 현재 위치에서 새 위치로 이동합니다: sudo rsync -avzh --remove-source-files --ignore-existing --progress /var/opt/gitlab/gitlab-ci/builds/ /mnt/gitlab-ci/builds/ --ignore-existing 을 사용하여 새 job logs가 동일한 로그의 이전 버전으로 덮어쓰이지 않도록 합니다. CI/CD 데이터 처리를 일시 중지하기로 선택한 경우 Side