[Paper] LLM‑SrcLog: 대형 언어 모델을 활용한 사전적이고 통합된 로그 템플릿 추출
발행: (2025년 12월 4일 오후 02:30 GMT+9)
8 min read
원문: arXiv
Source: arXiv - 2512.04474v1
개요
이 논문은 LLM‑SrcLog이라는 새로운 프레임워크를 소개한다. 이 프레임워크는 대형 언어 모델(LLM)을 활용해 시스템의 소스 코드에서 직접 로그‑메시지 템플릿을 추출한다. 정적 코드 분석과 데이터‑기반 파싱을 결합함으로써 높은 정확도의 로그 템플릿을 제공하면서도, 운영 환경에서 사용할 수 있을 만큼 낮은 런타임 오버헤드를 유지한다.
주요 기여
- 사전 템플릿 추출: 소프트웨어가 배포되기 전에 소스 코드에서 로그 템플릿을 생성하여 사후 로그 마이닝에 대한 의존도를 낮춘다.
- 통합 파이프라인: 화이트‑박스 LLM 기반 추출기(코드‑구동)와 블랙‑박스 데이터‑구동 추출기를 결합해, 소스 코드에 접근할 수 없는 로그도 처리한다.
- 교차‑함수 정적 분석: 함수와 모듈을 가로질러 로깅 컨텍스트를 재구성함으로써, LLM이 상수 텍스트와 변수 자리표시자를 구분하도록 지원한다.
- 성능 향상: LLM‑only 베이스라인 대비 F1‑score가 2–17 % 높고, 기존 파서 대비 8–35 % 향상되며, 온라인 파싱 지연시간은 로그당 LLM 추론 대비 약 1,000배 감소한다.
- 실제 적용 검증: 공개 벤치마크(Hadoop, Zookeeper)와 대규모 산업 시스템(Sunfire‑Compute)에서 효과를 입증했으며, 프로덕션 환경에서의 사례 연구도 포함한다.
방법론
- 정적 코드 분석기 – 코드베이스를 순회하고 로깅 API 호출을 추적하여, 주변 문장, 변수명, 제어 흐름 정보를 담은 로깅 컨텍스트 그래프를 구축한다.
- 화이트‑박스 LLM 추출기 – 재구성된 컨텍스트를 사전 학습된 LLM(예: GPT‑4)에 전달하고, 템플릿을 출력하도록 프롬프트한다. 또한 각 토큰을 상수인지 변수인지 라벨링한다. 후처리 단계에서 인접한 상수를 병합하는 등 출력을 정제한다.
- 블랙‑박스 데이터‑구동 추출기 – 소스 코드가 없거나 불완전한 로그에 대해서는 클러스터링 기반 파서(예: Drain)를 사용해 유사 로그를 그룹화하고 템플릿을 추론한다.
- 퓨전 레이어 – 두 템플릿 집합을 병합하고 충돌을 해결하여, 런타임에 거의 지연이 없는 최종 조회 테이블을 만든다.
전체 파이프라인은 오프라인(릴리스당 한 번)으로 실행되므로, 무거운 LLM 추론은 개발 단계에서만 발생하고 프로덕션 로깅 파이프라인에는 영향을 주지 않는다.
결과 및 발견
| 데이터셋 | 베이스라인 (Drain) F1 | LLM‑only (프롬프트) F1 | LLM‑SrcLog F1 |
|---|---|---|---|
| Hadoop | 0.84 | 0.86 | 0.93 (+9 %) |
| Zookeeper | 0.81 | 0.83 | 0.95 (+12 %) |
| Sunfire‑Compute (산업) | 0.78 | 0.80 | 0.96 (+16 %) |
- 지연시간: 로그당 평균 파싱 시간은 ~150 ms(로그당 LLM)에서 ~0.15 ms로 감소하여 전통적인 파서 수준에 도달한다.
- 커버리지: 코드‑구동 추출기가 95 % 이상의 로그를 매칭하고, 나머지 로그는 클러스터링 백업으로 처리한다.
- 사례 연구: 프로덕션 AIOps 파이프라인에서 LLM‑SrcLog은 오탐지 알림을 22 % 줄이고, 장애 진단 시간을 30 분에서 5 분 이하로 단축했다.
실무적 함의
- 빠른 AIOps 파이프라인 – 정확한 템플릿은 하위 이상 탐지 및 근본 원인 분석 도구가 더 깨끗하고 구조화된 데이터를 활용하도록 하여 잡음과 알림 피로도를 감소시킨다.
- 운영 비용 절감 – 비용이 많이 드는 LLM 추론을 빌드 단계로 옮김으로써, 프로덕션 환경에서 GPU 자원을 별도로 확보할 필요가 없어진다.
- 신규 서비스 온보딩 용이 – 개발자는 CI/CD 과정에서 자동으로 로그 템플릿을 생성할 수 있어, 마이크로서비스 전반에 걸쳐 일관성을 유지하면서 수동 템플릿 관리가 필요하지 않다.
- 레거시 코드 가시성 향상 – 하이브리드 설계 덕분에 소스 접근이 불가능한 시스템(예: 서드파티 바이너리)도 데이터‑구동 파싱의 혜택을 받으며, 가능한 경우 코드를 활용해 정밀도를 높일 수 있다.
- 보안 및 규정 준수 – 구조화된 로그는 마스킹, 보존 정책, 감사 추적 적용을 간소화하여 규제 산업에서 특히 유용하다.
제한점 및 향후 연구
- 로깅 관례 의존성 – 정적 분석기는 비교적 일관된 로깅 API를 전제로 하며, 맞춤형이거나 동적으로 생성된 로그 문장은 놓칠 수 있다.
- LLM 프롬프트 엔지니어링 – 템플릿 품질은 프롬프트 설계에 크게 좌우되므로, 다른 프로그래밍 언어나 프레임워크에 적용하려면 추가 튜닝이 필요하다.
- 코드 분석 확장성 – 매우 큰 모노레포의 경우 정적 분석 단계가 병목이 될 수 있어, 증분 분석 기법을 다음 단계로 제안한다.
- 멀티모달 로그 확장 – 향후 작업으로 JSON이나 protobuf 페이로드를 포함한 구조화 로그 처리와, 런타임 파싱 오류로부터 자동으로 템플릿을 개선하는 피드백 루프 통합을 계획한다.
저자
- Jiaqi Sun
- Wei Li
- Heng Zhang
- Chutong Ding
- Shiyou Qian
- Jian Cao
- Guangtao Xue
논문 정보
- arXiv ID: 2510.04474v1
- 분류: cs.SE
- 발표일: 2025년 12월 4일
- PDF: Download PDF