튜토리얼: NodeJS 애플리케이션과 GitLab Observability 사용하기
이 튜토리얼에서는 GitLab Observability 기능을 사용하여 NodeJS 애플리케이션을 구성, 계기화 및 모니터링하는 방법을 배우게 됩니다.
시작하기 전에
잠시 시간을 내서 다음 사항을 확인하세요.
- GitLab.com 또는 GitLab Self-Managed용 GitLab Ultimate 구독
- NodeJS의 로컬 설치
- Git, NodeJS, JavaScript 및 OpenTelemetry의 핵심 개념에 대한 기본 지식
새로운 GitLab 프로젝트 생성
먼저 새 GitLab 프로젝트와 해당 접근 토큰을 만듭니다.
이 튜토리얼은 프로젝트 이름을 nodejs-O11y-tutorial
로 사용합니다.
- 왼쪽 사이드바에서 맨 위에 있는 새로 만들기 ()와 새 프로젝트/저장소 만들기를 선택합니다.
- 템플릿에서 만들기를 선택합니다.
- NodeJS Express를 위한 템플릿 사용을 선택합니다.
- 프로젝트 세부 정보를 입력합니다.
-
프로젝트 이름 필드에
nodejs-O11y-tutorial
을 입력합니다.
-
프로젝트 이름 필드에
- 프로젝트 만들기를 선택합니다.
-
nodejs-O11y-tutorial
프로젝트에서 왼쪽 사이드바에서 설정 > 엑세스 토큰을 선택합니다. -
api
스코프와 개발자 역할을 가진 접근 토큰을 만듭니다. 토큰 값을 안전한 곳에 저장하세요. 나중에 필요할 것입니다.
NodeJS 애플리케이션 계기화
다음으로 NodeJS 애플리케이션을 계기화해야 합니다.
-
다음을 실행하여 NodeJS가 설치되어 있는지 확인하세요:
node -v
-
nodejs-O11y-tutorial
프로젝트를 복제하고nodejs-O11y-tutorial
디렉터리로 이동합니다. -
다음을 실행하여 종속성을 설치합니다:
npm install
-
애플리케이션을 실행합니다:
PORT=8080 node server.js
- 웹 브라우저에서
http://localhost:8080
을 방문하여 애플리케이션이 올바르게 실행되는지 확인하세요. -
OpenTelemetry 패키지를 추가합니다:
npm install --save @opentelemetry/api \ @opentelemetry/auto-instrumentations-node
- 프로젝트 ID를 찾습니다.
-
nodejs-O11y-tutorial
프로젝트 개요 페이지에서 오른쪽 상단에 있는 작업 ()을 선택합니다. - 프로젝트 ID 복사를 선택합니다. 나중에 사용할 복사한 ID를 저장하세요.
-
-
계기화와 함께 프로젝트를 구성하고 실행합니다:
env OTEL_TRACES_EXPORTER="otlphttp" \ OTEL_EXPORTER_OTLP_ENDPOINT="https://gitlab.com/api/v4/projects/{{PROJECT_ID}}/observability" \ OTEL_EXPORTER_OTLP_HEADERS="PRIVATE-TOKEN={{ACCESS_TOKEN}}" \ OTEL_SERVICE_NAME="nodejs-O11y-tutorial" \ OTEL_LOG_LEVEL="debug" \ NODE_OPTIONS="--require @opentelemetry/auto-instrumentations-node/register" \ PORT=8080 node server.js
반드시 이전에 얻은
PROJECT_ID
및ACCESS_TOKEN
값으로 대체하세요. Self-Managed GitLab 인스턴스를 사용하는 경우gitlab.com
을 자체 관리형 인스턴스 호스트 이름으로 대체하세요.
추적 보기
이제 Observability 추적을 사용하도록 애플리케이션을 구성했으므로, GitLab.com에서 내보낸 추적을 볼 수 있습니다.
내보낸 추적을 보려면:
- 다시 계기화된
nodejs-O11y-tutorial
애플리케이션을 시작합니다. -
http://localhost:8080/
을 방문하여 애플리케이션에서 일부 작업을 수행합니다. -
nodejs-O11y-tutorial
프로젝트에서 왼쪽 사이드바에서 모니터 > 추적을 선택합니다. 모든 것이 올바르게 작동 중이라면 각 요청에 대한 추적을 볼 수 있습니다. -
선택 사항. 추적을 선택하여 해당 범위를 볼 수 있습니다.
축하합니다! 애플리케이션을 만들고 GitLab Observability 기능을 사용하도록 구성하고, 애플리케이션이 생성한 추적을 조사하는 데 성공했습니다. 이 애플리케이션을 계속 실험하거나 보다 복잡한 애플리케이션을 구성하여 추적을 내보내는 방법을 시도할 수 있습니다.
Observability 추적은 아직 제품용으로 사용할 준비가 되지 않았음을 기억하세요. NodeJS 애플리케이션에서 OpenTelemetry 컬렉터를 사용하여 로그나 메트릭을 공식적으로 지원하는 것은 없습니다.