200만 로그를 58개 템플릿으로 압축하는 ML 도구, Rocketgraph (github.com)
목차(4)
한줄 요약
LLM 없이 결정론적 ML 3단계로 수백만 로그에서 이상 징후를 90초 만에 찾아내는 오픈소스 옵저버빌리티 도구.
로그 기반 장애 탐지의 가장 큰 고통은 "무엇을 검색해야 하는지 모른다"는 점이다. 기존 모니터링 툴은 내가 미리 정의한 조건에만 반응한다. 지금 이 순간 시스템에서 무엇이 비정상인지 스스로 알려주는 도구는 드물다. Rocketgraph는 그 간극을 파고든 오픈소스 프로젝트다.
무엇이 달라지나?
Rocketgraph의 핵심은 ML 엔진 하나와 Node.js 자동 계측 패키지로 구성된다. ML 엔진은 기존 로그 소스에 직접 붙는다. Datadog, New Relic, Loki, CloudWatch, Sentry, ClickHouse 등 이미 사용 중인 스택에 추가 파이프라인 없이 연결된다.
동작 방식은 세 알고리즘의 순차 실행이다.
- Drain3 — 원시 로그 라인에서 구조적 템플릿을 추출한다. 비슷한 패턴의 로그 수백만 건이 단 수십 개의 템플릿으로 축약된다.
- Isolation Forest — 서비스별로 템플릿에 이상 점수를 매겨 비정상적인 패턴을 부상시킨다.
- Half-Space Trees — 실시간으로 새로 들어오는 로그를 학습된 모델 기준으로 즉시 채점한다.
공개된 벤치마크에 따르면 실제 프로덕션 버스트 환경에서 200만 건의 로그를 58개 템플릿으로 압축하고 그 중 9개 이상 징후를 탐지하는 데 단일 컨테이너 기준 90초가 걸린다. LLM을 전혀 사용하지 않기 때문에 환각이 없고 결과가 재현 가능하다.
선택적으로 --ai 플래그를 붙이면 Claude가 결정론적 클러스터 결과를 설명해주는 방식으로 LLM이 보조적으로 개입할 수 있다. 엔진 자체의 판단은 여전히 ML 알고리즘이 담당한다.
실무에서 어떤 의미인가?
장애 대응 현장에서 로그를 뒤지는 작업은 경험 많은 개발자도 상당한 시간을 소모한다. 어디를 봐야 할지 모르는 상태에서 Kibana나 Datadog 대시보드를 열어 필터를 조합하다 보면 골든 타임이 지나간다.
Rocketgraph가 제시하는 접근은 다르다. 로그 전체를 구조적으로 요약한 뒤, 이전에 한 번도 등장하지 않은 패턴이나 통계적으로 희귀한 패턴을 자동으로 플래그 처리한다. 예시로 제시된 출력에서는 15,000줄의 로그가 11개 클러스터로 압축되고, 그 중 "Database failover: replica promoted to primary" 템플릿이 단 8줄임에도 이상 탐지 1순위로 올라온다. 규칙을 직접 작성한 게 아니라, 희귀성과 구조 자체가 신호가 된 것이다.
외주 개발이나 내부 개발 모두 마찬가지지만, 마이크로서비스 환경에서 서비스가 늘어날수록 로그 볼륨은 기하급수적으로 증가한다. 이 도구는 기존 스택을 교체하지 않고도 그 위에 ML 기반 이상 탐지 레이어를 올릴 수 있다는 점에서 현실적인 선택지다.
로그가 VPC 밖으로 나가지 않는 구조이고, 별도 SaaS 요금이 없으며, 설치는 Docker Compose 한 줄로 끝난다. 스키마 설계나 에이전트 배포 없이 파일 하나를 드롭해도 즉시 분석이 가능하다.
도입 전 체크포인트
- Python 3.11 이상, Docker 환경 필요. 기존 인프라와의 통합은 환경 변수 설정 수준이다.
- 기존 로그 소스가 있어야 한다. Rocketgraph는 수집 파이프라인을 대체하지 않는다. 기존 소스 옆에 붙는 분석 레이어다.
- LLM 연동은 선택 사항이다.
--ai옵션 없이도 핵심 기능은 완전히 동작한다. Anthropic API 키가 필요한 것은 AI 해설 기능뿐이다. - OpenTelemetry 미적용 Node.js 서비스라면
@rgraph/otel-node패키지로 약 90초 안에 자동 계측이 가능하다고 명시돼 있다. - Apache 2.0 라이선스로 상업적 활용이 자유롭다.
자주 묻는 질문
Q.기존에 Datadog이나 New Relic을 이미 쓰고 있어도 Rocketgraph를 함께 쓸 수 있나?
그렇다. Rocketgraph는 기존 스택을 대체하는 것이 아니라 그 옆에 붙는 분석 레이어로 설계됐다. Datadog, New Relic, Loki, CloudWatch, Sentry, ClickHouse를 소스로 직접 연결할 수 있으며, 별도의 로그 수집 파이프라인을 새로 구성할 필요가 없다. 이미 지불하고 있는 도구의 가치를 보완하는 방식으로 활용하는 게 권장 사용 패턴이다.
Q.LLM을 쓰지 않는다면 이상 탐지 정확도는 어떻게 보장하나?
Drain3, Isolation Forest, Half-Space Trees 세 알고리즘은 통계적 희귀성과 구조적 패턴을 기반으로 동작한다. 사전에 레이블이나 규칙을 정의하지 않아도 이전에 등장하지 않은 패턴, 또는 발생 빈도가 낮은 패턴을 자동으로 이상 후보로 분류한다. LLM을 배제했기 때문에 환각이 없고 동일 입력에 대해 결과가 재현된다는 점이 오히려 프로덕션 환경에서 신뢰를 확보하는 근거가 된다.
Q.소규모 팀이나 스타트업도 바로 도입할 수 있나?
Docker Compose 한 줄과 기존 로그 파일 하나만 있으면 시작할 수 있다. 계정 생성, 스키마 정의, 호스트 에이전트 설치 같은 초기 설정 비용이 없다. kubectl 로그를 파일로 내보내거나 Datadog에서 CSV/JSON으로 내려받아 로컬에서 바로 분석하는 방식도 지원한다. 외주 개발이나 사내 개발을 막론하고 인프라 담당자 없이 개발팀 단독으로 시험해볼 수 있는 진입 장벽이다. 📌 원문: [GitHub - Rocketgraph/rocketgraph](https://github.com/Rocketgraph/rocketgraph) 🔗 새로운 기술 도입이나 기술 검토가 필요하다면 → [삼태연구소에 문의하기](/contact)
관련 아티클
관련 사례
이 글의 키워드와 맞닿은 실제 개발 사례를 함께 보세요.