핵심 요약OTel
filelog 수신기를 사용해 MongoDB 서버 로그(4.4+ JSON 포맷)를 ClickStack에서 수집하고 시각화합니다. 데모 데이터세트와 사전 구축된 대시보드가 포함되어 있습니다.기존 MongoDB 통합
사전 요구 사항
- 실행 중인 ClickStack 인스턴스
- 기존 자가 관리형 MongoDB 설치 환경(버전 4.4 이상)
- MongoDB 로그 파일에 대한 접근 권한
MongoDB 로깅 구성 확인
MongoDB 4.4 이상에서는 기본적으로 구조화된 JSON 로그를 출력합니다. 로그 파일 위치를 확인하세요:- Linux (apt/yum):
/var/log/mongodb/mongod.log - macOS (Homebrew):
/usr/local/var/log/mongodb/mongo.log - Docker: 일반적으로 stdout에 기록되지만,
/var/log/mongodb/mongod.log에 기록하도록 구성할 수 있습니다
mongod.conf를 업데이트하여 파일에 기록하도록 구성하십시오:MongoDB용 사용자 지정 OTel collector 구성 만들기
ClickStack에서는 사용자 지정 설정 파일을 마운트하고 환경 변수를 설정해 기본 OpenTelemetry Collector 구성을 확장할 수 있습니다. 사용자 지정 구성은 OpAMP를 통해 HyperDX가 관리하는 기본 구성과 머지됩니다.다음과 같은 내용으로mongodb-monitoring.yaml 파일을 만드세요:- 사용자 지정 구성에서는 새 수신기와 파이프라인만 정의합니다. processor(
memory_limiter,transform,batch)와 exporter(clickhouse)는 기본 ClickStack 구성에 이미 정의되어 있으므로 이름만 참조하면 됩니다. - 이 구성은 collector가 시작될 때 기존 로그를 모두 읽도록
start_at: beginning을 사용합니다. 프로덕션 배포에서는 collector 재시작 시 로그를 다시 수집하지 않도록start_at: end로 변경하세요.
사용자 지정 구성을 로드하도록 ClickStack 구성
기존 ClickStack 배포에서 사용자 지정 collector 구성을 활성화하려면 다음 작업을 수행해야 합니다.- 사용자 지정 구성 파일을
/etc/otelcol-contrib/custom.config.yaml에 마운트합니다 - 환경 변수
CUSTOM_OTELCOL_CONFIG_FILE=/etc/otelcol-contrib/custom.config.yaml를 설정합니다 - collector가 MongoDB 로그를 읽을 수 있도록 MongoDB 로그 디렉터리를 마운트합니다
- Docker Compose
- Docker Run (All-in-One Image)
ClickStack 배포 구성을 업데이트합니다.
ClickStack collector에 MongoDB log file을 읽을 수 있는 적절한 권한이 있는지 확인하십시오. production 환경에서는 읽기 전용 마운트(
:ro)를 사용하고 최소 권한 원칙을 따르십시오.HyperDX에서 로그 확인
구성이 완료되면 HyperDX에 로그인하여 로그가 정상적으로 수집되는지 확인합니다:데모 데이터세트
대시보드 및 시각화
대시보드 구성을 하십시오
사전 구축된 대시보드 가져오기
- HyperDX를 열고 Dashboards 섹션으로 이동합니다.
- 오른쪽 상단의 줄임표 메뉴에서 “Import Dashboard”를 클릭합니다.
- mongodb-logs-dashboard.json 파일을 업로드한 다음 “Finish Import”를 클릭합니다.
대시보드가 생성되며 모든 시각화가 미리 구성됩니다
데모 데이터세트를 사용하는 경우 시간 범위에 **2026-03-09 00:00:00 - 2026-03-10 00:00:00 (UTC)**가 포함되도록 설정합니다.문제 해결
HyperDX에 로그가 표시되지 않는 경우
로그가 제대로 파싱되지 않는 경우
json_parser 연산자를 regex_parser로 대체하거나 MongoDB 4.4+로 업그레이드해야 합니다.