Files
log-hunter/TEST_GUIDE.md
2026-01-06 21:44:36 +09:00

5.0 KiB

LogHunter 테스트 가이드

1. 사전 요구사항

항목 버전 확인 명령어
Java 17 이상 java -version
Node.js 18 이상 node -v
npm 9 이상 npm -v

2. 프로젝트 실행

2-1. Frontend 빌드

cd /Users/coziny/devs/osolit-research/workspace/log-hunter/frontend

# 의존성 설치 (최초 1회)
npm install

# 빌드 (결과물이 ../src/main/resources/static 으로 복사됨)
npm run build

2-2. Backend 실행

cd /Users/coziny/devs/osolit-research/workspace/log-hunter

# Gradle Wrapper로 실행
./gradlew bootRun

2-3. 접속


3. 테스트 시나리오

3-1. 패턴 등록 (먼저!)

  1. 패턴 관리 메뉴 클릭
  2. + 패턴 추가 클릭
  3. 샘플 패턴 입력:
패턴명 정규식 심각도 컨텍스트
Exception Exception|Error ERROR 5
NullPointer NullPointerException CRITICAL 5
WARN 로그 \[WARN\] WARN 3
Tomcat 에러 SEVERE|FATAL CRITICAL 5
  1. 테스트 버튼으로 정규식 검증 가능

3-2. 서버 등록

  1. 서버 관리 메뉴 클릭
  2. + 서버 추가 클릭
  3. 서버 정보 입력:

비밀번호 인증 예시:

서버명: 운영서버1
호스트: 192.168.1.100
포트: 22
사용자명: username
인증방식: 비밀번호
비밀번호: ********

키파일 인증 예시:

서버명: 개발서버
호스트: 10.0.0.50
포트: 22
사용자명: deploy
인증방식: 키 파일
키 파일 경로: C:\Users\사용자\.ssh\id_rsa
Passphrase: (없으면 비워둠)
  1. 테스트 버튼으로 연결 확인

3-3. 로그 경로 등록

  1. 서버 목록에서 경로 버튼 클릭
  2. 로그 경로 추가:
경로 파일 패턴 설명
/var/log/tomcat/ catalina.*.log Tomcat 로그
/var/log/ *.log 시스템 로그
/app/logs/ application-*.log 애플리케이션 로그

3-4. 분석 실행

  1. 대시보드 메뉴 클릭
  2. 개별 서버 분석 실행 또는 전체 분석 실행
  3. 진행상황 확인 (프로그레스 바)
  4. 완료 후 에러 이력에서 결과 확인

3-5. 결과 확인 및 내보내기

  1. 에러 이력 메뉴 클릭
  2. 필터로 검색 (서버, 심각도, 기간 등)
  3. 상세 버튼으로 컨텍스트 확인
  4. HTML 내보내기 또는 TXT 내보내기

4. 단일 JAR 빌드

4-1. 전체 빌드 (Frontend + Backend)

cd /Users/coziny/devs/osolit-research/workspace/log-hunter

# Frontend 빌드
cd frontend && npm run build && cd ..

# JAR 빌드
./gradlew clean bootJar

4-2. 빌드 결과

build/libs/log-hunter-0.0.1-SNAPSHOT.jar

4-3. JAR 실행

java -jar build/libs/log-hunter-0.0.1-SNAPSHOT.jar

5. Windows 실행 스크립트

run.bat 생성

@echo off
title LogHunter
echo LogHunter 시작 중...
java -jar log-hunter.jar
pause

배포 폴더 구조

LogHunter/
├── log-hunter.jar
├── run.bat
└── data/           <- 자동 생성됨 (SQLite DB)

6. 트러블슈팅

포트 충돌 (8080 사용 중)

# application.yml에서 포트 변경
server:
  port: 9090

또는 실행 시 지정:

java -jar log-hunter.jar --server.port=9090

SFTP 연결 실패

  • 호스트/포트 확인
  • 방화벽 확인 (22번 포트)
  • 사용자명/비밀번호 확인
  • 키파일 경로 확인 (Windows: C:\Users\..., 절대경로)

한글 깨짐

  • 로그 파일 인코딩이 UTF-8인지 확인
  • 필요시 서버에서 file -i 파일명으로 인코딩 확인

DB 초기화 (데이터 삭제)

# data 폴더의 DB 파일 삭제
rm -rf data/loghunter.db

7. 개발 모드 (Hot Reload)

Frontend 개발 서버

cd frontend
npm run dev

Backend만 재시작

./gradlew bootRun

8. API 테스트 (curl 예시)

# 서버 목록 조회
curl http://localhost:8080/api/servers

# 패턴 목록 조회
curl http://localhost:8080/api/patterns

# 연결 테스트
curl -X POST http://localhost:8080/api/servers/1/test-connection

# 스캔 실행 (동기)
curl -X POST http://localhost:8080/api/scan/execute/1

# 에러 로그 검색
curl "http://localhost:8080/api/error-logs?page=0&size=10"

체크리스트

  • Java 17+ 설치 확인
  • Node.js 18+ 설치 확인
  • Frontend 빌드 완료 (2025-01-06 19:23 확인)
  • Backend 실행 성공 (2025-01-06 19:23 확인)
  • 브라우저 접속 확인 (localhost:8080)
  • 패턴 등록
  • 서버 등록
  • 연결 테스트 성공
  • 로그 경로 등록
  • 분석 실행
  • 에러 검출 확인
  • 내보내기 테스트