분산 추적

Tier: Ultimate Offering: GitLab.com Status: Beta
  • GitLab 16.2에 도입되었으며 observability_group_tabobservability_tracing이라는 플래그로 제공됩니다. 기본적으로 비활성화되어 있습니다. 이 기능은 Beta 상태입니다.
  • 기능 플래그 observability_group_tab은 GitLab 16.5에 제거되었습니다.
GitLab.com의 경우, 기본적으로 이 기능을 사용할 수 없습니다. 사용하려면 관리자가 observability_tracing이라는 기능 플래그를 활성화해야 합니다. 이 기능은 프로덕션 환경에서 사용할 준비가 되지 않았습니다.

분산 추적을 사용하면 요청이 서로 다른 서비스 및 시스템을 통해 어떻게 이동하고 각 작업의 타이밍, 발생하는 오류 또는 로그를 검사하여 응용 프로그램 성능 문제를 해결할 수 있습니다. 추적은 특히 사용자 요청을 충족하기 위해 여러 독립적인 서비스를 그룹화하는 마이크로서비스 응용 프로그램의 맥락에서 특히 유용합니다.

이 기능은 Beta 상태입니다. 자세한 내용은 그룹 방향 페이지를 참조하십시오. 추적 버그 또는 기능에 대한 피드백을 제공하려면 피드백 이슈에 댓글을 남기거나 새 이슈를 열어주십시오.

프로젝트용 분산 추적 구성

분산 추적을 구성하려면:

  1. 액세스 토큰을 생성하고 추적을 활성화합니다.
  2. 응용 프로그램을 OpenTelemetry 익스포터를 사용하도록 구성합니다.

액세스 토큰을 생성하고 추적을 활성화

전제 조건:

  • 프로젝트의 유지 관리자 역할을 최소한으로 가지고 있어야 합니다.

프로젝트에서 추적을 활성화하려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
  2. 설정 > 액세스 토큰을 선택합니다.
  3. 다음 범위를 갖는 액세스 토큰을 생성합니다: read_api, read_observability, write_observability.
  4. 액세스 토큰의 값을 복사합니다.
  5. Monitor > Tracing을 선택합니다.
  6. 활성화를 선택합니다.

응용 프로그램을 OpenTelemetry 익스포터를 사용하도록 구성

다음으로, 응용 프로그램을 GitLab으로 추적을 보냈도록 구성합니다.

이를 위해 다음 환경 변수를 설정합니다.

OTEL_EXPORTER = "otlphttp"
OTEL_EXPORTER_OTLP_TRACES_ENDPOINT = "https://observe.gitlab.com/v3/<namespace-id>/<gitlab-project-id>/ingest/traces"
OTEL_EXPORTER_OTLP_TRACES_HEADERS = "PRIVATE-TOKEN=<gitlab-access-token>"

다음 값을 사용합니다:

  • namespace-id: 프로젝트가 위치한 최상위 네임스페이스 ID.
  • gitlab-project-id: 프로젝트 ID.
  • gitlab-access-token: 이전에 생성한 액세스 토큰.

응용 프로그램이 구성된 경우 실행하고 OpenTelemetry 익스포터가 추적을 GitLab으로 보내도록 합니다.

추적 보기

추적이 성공적으로 내보내진 경우, 프로젝트에서 이를 볼 수 있습니다.

추적 목록을 보려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
  2. Monitor > Traces를 선택합니다.

추적의 세부 정보를 보려면 목록에서 선택합니다. 또는 산점도에서 추적을 직접 선택할 수 있습니다.

추적 목록

추적 세부 정보 페이지와 목록이 표시됩니다.

추적 세부 정보

단일 스패ㄴ의 속성을 보려면 목록에서 선택합니다.

추적 서랍

추적 유입 한도

추적은 분당 최대 102,400바이트를 유입합니다. 제한을 초과하면 429 Too Many Requests 응답이 반환됩니다.

분당 104,8576바이트까지 제한을 늘리려면 GitLab 지원팀에 문의하십시오.

데이터 보존

GitLab은 모든 추적에 대해 30일 보존 제한이 있습니다.