모든 프로젝트
Selected Work 2026 · Data Pipeline
통합 로그
시스템
통합 로그 시스템
Role
설계 · 구현 · 사내 배포
Timeline
2026.01 – 2026.03
Category
Data Pipeline
— Overview

이 프로젝트는.

서로 다른 보안 솔루션 로그를 공통 기준으로 정규화하고, Loki·Grafana·Teams·MCP로 조회와 대응 흐름을 연결한 통합 로그 시스템입니다.

— Challenge

결정의 흐름.

“무엇을 만들었나” 보다 “왜 그렇게 결정했나” 를 남깁니다.

01·PIPELINE

수집 안정성과 파싱 유연성을 분리한 경험

syslog-ng로 로그 수집과 disk-buffer 기반 안정성을 확보하고, Vector로 라우팅·VRL 파싱·Loki 적재·알림 분기를 처리했습니다.

  • 수집 계층과 파싱 계층 분리
  • 로그 포맷 변경에 대응 가능한 구조 구성
  • Docker Compose 기반 운영 스택 구성
02·NORMALIZATION

서로 다른 보안 로그를 공통 스키마로 정리한 경험

EPP / EDR / MDS 로그의 서로 다른 필드와 메시지 구조를 분석해 공통 기준 필드를 설계했습니다.

  • service / risk / syslog_type / parse_status 필드 구성
  • 공통 조건 기반 필터링·집계·탐색 지원
  • 파싱 실패 로그도 품질 상태로 추적
03·OBSERVABILITY

저장된 로그를 운영자가 바로 볼 수 있는 흐름으로 바꾼 경험

Loki / Grafana 기반 대시보드를 구성하고, 위험 이벤트는 Teams Webhook 알림으로 연결했습니다.

  • 위험도 / 서비스 / 이벤트 유형 기준 대시보드 구성
  • NestJS API를 통한 Teams Adaptive Card 알림
  • 주요 위험 이벤트의 초기 인지 속도 개선
04·MCP

반복 조회를 자연어 기반 로그 조회로 확장한 경험

NestJS 기반 MCP 서버를 구현하고 Loki 질의 도구를 usecase 단위로 분리했습니다.

  • JSON-RPC over HTTP / stdio transport 지원
  • 자연어 요청을 LogQL 조회 흐름으로 연결
  • 반복적인 조건 입력 과정을 자연어 조회 흐름으로 단축
— Impact

숫자로 남긴 결과.

LOOKUP TIME CUT
10–15분 → 1–2분
SECURITY SOURCES
EPP · EDR · MDS
QUERY INTERFACES
Grafana · MCP
— Stack

사용한 도구들.

Tools & Technologies
TypeScriptNestJSsyslog-ngVectorVRLLokiGrafanaTeams WebhookMCPJSON-RPCDocker Compose
— Quote
서로 다른 로그를 한 기준으로 정리하니, 운영자가 더 빠르게 판단할 수 있는 데이터가 됐습니다.
프로젝트 회고