kt-event-marketing/tools/kafka-comprehensive-test.bat
박세원 29dddd89b7 AI 서비스 Kafka/Redis 통합 테스트 및 설정 개선
- Gradle 빌드 캐시 파일 제외 (.gitignore 업데이트)
- Kafka 통합 테스트 구현 (AIJobConsumerIntegrationTest)
- 단위 테스트 추가 (Controller, Service 레이어)
- IntelliJ 실행 프로파일 자동 생성 도구 추가
- Kafka 테스트 배치 스크립트 추가
- Redis 캐시 설정 개선

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-27 16:27:14 +09:00

102 lines
3.4 KiB
Batchfile

@echo off
REM ============================================
REM Kafka/Redis 통합 테스트 스크립트
REM ============================================
echo ============================================
echo Kafka/Redis 통합 테스트 시작
echo ============================================
echo.
REM 현재 디렉토리 확인
cd /d "%~dp0\.."
echo 현재 디렉토리: %CD%
echo.
REM 로그 디렉토리 확인 및 생성
if not exist "logs" mkdir logs
echo 로그 디렉토리: %CD%\logs
echo.
REM 테스트 타임스탬프
set TEST_TIMESTAMP=%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%%time:~6,2%
set TEST_TIMESTAMP=%TEST_TIMESTAMP: =0%
set TEST_LOG=logs\kafka-redis-test_%TEST_TIMESTAMP%.log
echo ============================================
echo 1단계: Kafka 수동 테스트 메시지 전송
echo ============================================
echo.
echo Kafka 메시지 전송 중...
gradlew ai-service:runKafkaManualTest > %TEST_LOG% 2>&1
if %ERRORLEVEL% EQU 0 (
echo ✓ Kafka 메시지 전송 완료
) else (
echo ✗ Kafka 메시지 전송 실패 ^(Error Code: %ERRORLEVEL%^)
echo 로그 파일을 확인하세요: %TEST_LOG%
)
echo.
echo ============================================
echo 2단계: AI 서비스 Consumer 처리 대기
echo ============================================
echo.
echo AI 서비스가 Kafka 메시지를 처리할 때까지 60초 대기...
timeout /t 60 /nobreak > nul
echo ✓ 대기 완료
echo.
echo ============================================
echo 3단계: Job 상태 확인 ^(Redis^)
echo ============================================
echo.
echo Job 상태 조회 중...
curl -s "http://localhost:8083/api/v1/ai-service/internal/jobs/manual-job-001/status" >> %TEST_LOG% 2>&1
if %ERRORLEVEL% EQU 0 (
echo ✓ Job 상태 조회 성공
curl -s "http://localhost:8083/api/v1/ai-service/internal/jobs/manual-job-001/status"
) else (
echo ✗ Job 상태 조회 실패
)
echo.
echo ============================================
echo 4단계: AI 추천 결과 확인 ^(Redis^)
echo ============================================
echo.
echo AI 추천 결과 조회 중...
curl -s "http://localhost:8083/api/v1/ai-service/internal/recommendations/manual-event-001" >> %TEST_LOG% 2>&1
if %ERRORLEVEL% EQU 0 (
echo ✓ AI 추천 결과 조회 성공
curl -s "http://localhost:8083/api/v1/ai-service/internal/recommendations/manual-event-001"
) else (
echo ✗ AI 추천 결과 조회 실패
)
echo.
echo ============================================
echo 5단계: 모든 테스트 메시지 상태 확인
echo ============================================
echo.
echo [Job 001] 상태 확인:
curl -s "http://localhost:8083/api/v1/ai-service/internal/jobs/manual-job-001/status" | findstr "status"
echo.
echo [Job 002] 상태 확인:
curl -s "http://localhost:8083/api/v1/ai-service/internal/jobs/manual-job-002/status" | findstr "status"
echo.
echo [Job 003] 상태 확인:
curl -s "http://localhost:8083/api/v1/ai-service/internal/jobs/manual-job-003/status" | findstr "status"
echo.
echo ============================================
echo 테스트 완료
echo ============================================
echo.
echo 상세 로그 파일: %TEST_LOG%
echo.
echo 수동 확인 명령어:
echo - Job 상태: curl http://localhost:8083/api/v1/ai-service/internal/jobs/{jobId}/status
echo - AI 추천: curl http://localhost:8083/api/v1/ai-service/internal/recommendations/{eventId}
echo.
pause