DOCS/troubleshooting/251016_troubleshooting_summary.md
happybell80 50be99f4e4 Add infrastructure work to troubleshooting summary
- DATA repository clone and organization
- Neo4j data directory migration to HDD (SSD → HDD)
- Storage structure documentation

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-16 21:33:20 +09:00

5.4 KiB

트러블슈팅 이슈 해결 요약

날짜: 2025-10-16 작성자: Claude (51124 서버 전담) 작업 기간: 16:06 - 16:12 KST


완료된 이슈 (51124 서버)

1. Coldmail IR 분석 실패 - 중복 파일 처리

문제: 동일 PDF 재업로드 시 400 에러로 전체 IR 분석 실패

해결: skill-rag-file/app/api/upload.py:60-79

  • HTTPException 제거, 기존 document_id 반환 (멱등성 보장)
  • 커밋: cea055c

효과: Coldmail 워크플로우 안정화, 네트워크 재시도 안전

상세: 251016_coldmail_duplicate_file_fix.md


2. NaverWorks Briefing system UUID 오류

문제: user_id="system" 문자열이 UUID 타입 불일치로 emotion_readings 저장 실패

해결: rb8001/app/state/database.py:145-155

  • "system" user_id 발견 시 저장 skip
  • 커밋: 2f767b3

효과: NaverWorks Briefing 정상 작동, ERROR 로그 제거

향후: 전용 시스템 UUID 생성 또는 emotion_readings.user_id nullable 변경 (51123 서버)


3. gRPC + uvloop BlockingIOError 로그 노이즈

문제: gRPC (Vertex AI)와 uvloop 이벤트 루프 경합으로 로그 노이즈 발생

해결: rb8001/app/core/logger.py:41-44

  • gRPC 로거 레벨 CRITICAL
  • asyncio 로거 레벨 WARNING
  • 커밋: adae74c

효과: BlockingIOError 로그 숨김, 실제 오류 추적 용이


미해결 이슈 (51123 서버)

4. Slack 봇 설치 workspace_id 컬럼 오류

상태: 해결 완료 (2025-10-16, 사용자 작업)

문제: workspace_member 테이블에 workspace_id 컬럼 없음

해결: auth-server/app/providers/slack.py:414-419

  • workspace_member.workspace_id → user.team_id 사용

배포 상태

skill-rag-file: cea055c (healthy) - 중복 파일 멱등성 보장 rb8001: adae74c (healthy) - system UUID 처리 + gRPC 로그 억제


검증 계획

내일 실전 검증 (2025-10-17)

09:00 NaverWorks Briefing:

  • system UUID 오류 로그 사라짐 확인
  • gRPC BlockingIOError 로그 사라짐 확인

09:05 Coldmail Briefing:

  • PDF 업로드 성공 확인
  • IR 분석 실제 데이터 반환 확인
  • Slack Lists 전송 성공 확인

로그 체크:

  • rb8001: docker logs rb8001 --since "2025-10-17T09:00:00" | grep -iE "system|grpc|blocking"
  • rb8001: docker logs rb8001 --since "2025-10-17T09:05:00" | grep -iE "upload|document_id"
  • skill-rag-file: docker logs skill-rag-file --since "2025-10-17T09:05:00" | grep "File already exists"

교훈

멱등성 설계

동일 요청 여러 번 실행 시 결과 동일해야 함. 중복 체크 시 에러가 아닌 기존 리소스 반환.

시스템 사용자 처리 정책

시스템 작업의 user_id 처리 미정의. 단기는 skip, 장기는 전용 UUID 생성.

로그 레벨 관리

외부 라이브러리 로그는 필요 시 레벨 조정으로 노이즈 제거.

Cascading Failure 방지

한 단계 실패가 전체 워크플로우 실패로 연쇄되지 않도록 설계. 멱등성으로 안정화.


인프라 작업 (51123 서버)

5. DATA 저장소 클론 및 정리

작업 일시: 2025-10-16 21:20 KST

작업 내용:

  1. Gitea 저장소 위치 확인: /mnt/hdd/gitea-repositories/ (311MB)
  2. DATA.git 클론: /mnt/hdd/data/DATA/
  3. 기존 데이터 이동: kb_realestate_data/, startup_crawl//mnt/hdd/data/DATA/

최종 구조:

/mnt/hdd/data/
├── DATA/                    ← Git 관리
│   ├── RWA/
│   ├── startup/             (YC 5,000+개사, VC firms)
│   ├── startup_crawl/       (한국 뉴스 4,388건)
│   └── kb_realestate_data/
└── documents/               (skill-rag-file 전용)

51124 접근: /mnt/51123data/DATA/ (SSHFS)


6. Neo4j 데이터 디렉토리 HDD 이동

작업 일시: 2025-10-16 21:30-21:31 KST

문제: Neo4j 데이터가 SSD (/var/lib/neo4j/data)에 저장되어 스타트업 데이터 로드 시 공간 부족 우려

작업 단계:

  1. Neo4j 서비스 중지
  2. /var/lib/neo4j/data/mnt/hdd/neo4j/data 이동
  3. 심볼릭 링크 생성: /var/lib/neo4j/data/mnt/hdd/neo4j/data
  4. 권한 설정: chown -R neo4j:neo4j /mnt/hdd/neo4j/
  5. Neo4j 재시작

결과:

  • 이전: /var/lib/neo4j/data (SSD, 956KB)
  • 현재: /mnt/hdd/neo4j/data (HDD, 517MB)
  • 심볼릭 링크: 정상 작동
  • 서비스 상태: active (running)

효과:

  • HDD 여유 공간: 867GB
  • 스타트업 데이터 로드 시 예상 크기: 1-2GB (안전)
  • 설정 파일 수정 불필요 (심볼릭 링크로 투명하게 처리)

검증:

ls -lah /var/lib/neo4j/ | grep data
# lrwxrwxrwx  1 root  root    19 10월 16 21:31 data -> /mnt/hdd/neo4j/data

df -h /mnt/hdd/
# /dev/sdb1       916G  3.2G  867G    1% /mnt/hdd

systemctl status neo4j
# Active: active (running)

향후 계획:

  • 스타트업 데이터 Neo4j 구조화 (YC + 한국 기업 + VC + 뉴스)
  • 예상 소요 시간: 2.5-4시간 (스크립트 작성 포함)

저장소 현황 (51123)

Gitea

  • 위치: /mnt/hdd/gitea-repositories/ (HDD)
  • 크기: 311MB
  • 조직: ivada_ro-being (30개 프로젝트)

데이터

  • 위치: /mnt/hdd/data/ (HDD)
  • 구조:
    • DATA/: 158MB (Git 관리, 스타트업 데이터)
    • documents/: skill-rag-file 업로드

Neo4j

  • 위치: /mnt/hdd/neo4j/data/ (HDD, 심볼릭 링크)
  • 크기: 517MB
  • 상태: 정상 실행 중