diff --git a/troubleshooting/250803_PostgreSQL_SSH_터널_연결.md b/troubleshooting/250803_PostgreSQL_SSH_터널_연결.md index dea7d6f..1d90696 100644 --- a/troubleshooting/250803_PostgreSQL_SSH_터널_연결.md +++ b/troubleshooting/250803_PostgreSQL_SSH_터널_연결.md @@ -1,7 +1,7 @@ -# PostgreSQL SSH 터널 연결 설정 +# ~~PostgreSQL SSH 터널 연결 설정~~ (사용 안 함) -## 문제 상황 -State Service가 원격 서버(124.55.18.179)의 PostgreSQL에 연결해야 하는데, 직접 연결이 실패했습니다. +## 참고: 이 문서는 더 이상 적용되지 않음 +State Service는 사용하지 않으며, rb8001이 직접 로컬 PostgreSQL에 연결합니다. ## 해결 방법 @@ -11,13 +11,11 @@ State Service가 원격 서버(124.55.18.179)의 PostgreSQL에 연결해야 하 sshpass -p '19800508' ssh -N -L 5433:localhost:5432 admin@124.55.18.179 -p 51123 & ``` -### 2. .env 파일 설정 +### 2. ~~.env 파일 설정~~ (사용 안 함) ```bash -# /home/heejae/robeing-state-service/.env -DATABASE_URL=postgresql://robeings:robeings@localhost:5433/main_db -SERVICE_NAME=state -PORT=8002 -LOG_LEVEL=INFO +# State Service는 사용하지 않음 +# rb8001이 직접 DB 연결: +# DATABASE_URL=postgresql://robeings:robeings@localhost:5432/main_db ``` ### 3. 연결 확인 @@ -43,6 +41,9 @@ psql postgresql://robeings:robeings@localhost:5433/main_db -c "SELECT 1" ## 영구적인 해결 방안 systemd 서비스로 SSH 터널을 관리하거나, autossh 사용을 고려할 수 있습니다. -## 관련 파일 -- `/home/heejae/robeing-state-service/.env` -- `/home/heejae/robeing-state-service/app/core/config.py` \ No newline at end of file +## ~~관련 파일~~ (사용 안 함) +- ~~`/home/heejae/robeing-state-service/.env`~~ +- ~~`/home/heejae/robeing-state-service/app/core/config.py`~~ + +**현재 사용:** +- rb8001이 직접 PostgreSQL 연결 \ No newline at end of file diff --git a/troubleshooting/250814_rb8001_통합_트러블슈팅.md b/troubleshooting/250814_rb8001_통합_트러블슈팅.md index 6de63e5..87b83a0 100644 --- a/troubleshooting/250814_rb8001_통합_트러블슈팅.md +++ b/troubleshooting/250814_rb8001_통합_트러블슈팅.md @@ -171,40 +171,15 @@ async def chat(self, message: str, ...): --- -## 7. PostgreSQL 연결 (robeing-state-service) +## 7. ~~PostgreSQL 연결 (robeing-state-service)~~ (제거됨 - State Service 사용 안 함) -### 7.1 SSH 터널링 설정 -**서버 정보**: -- Host: 124.55.18.179 -- Port: 51123 -- User: admin +~~State Service는 더 이상 사용하지 않음~~ -**터널링 명령어**: -```bash -sshpass -p "19800508" ssh -o StrictHostKeyChecking=no -f -N \ - -L 5433:localhost:5432 admin@124.55.18.179 -p 51123 -``` - -### 7.2 State Service 설정 -**초기 문제들**: -1. psycopg2-binary 버전 오류 (2.9.0 → 2.9.9) -2. 불필요한 SLACK 환경변수 요구 -3. 잘못된 PostgreSQL 계정 (admin → robeings) -4. 포트 설정 오류 (8002 → 8507) - -**최종 설정**: -```bash -# .env -DATABASE_URL=postgresql://robeings:robeings@localhost:5433/main_db -PORT=8507 -``` - -**config.py 수정**: -```python -# Slack 설정을 Optional로 변경 -SLACK_BOT_TOKEN: Optional[str] = None -SLACK_SIGNING_SECRET: Optional[str] = None -``` +rb8001이 직접 PostgreSQL에 연결하여 상태 저장: +- Host: localhost (51123 서버) +- Port: 5432 +- Database: main_db +- User: robeings --- @@ -225,9 +200,8 @@ SLACK_SIGNING_SECRET: Optional[str] = None - ✅ Embedding service 연동 ### 새로 추가된 기능 -- ✅ PostgreSQL 연결 (robeing-state-service) -- ✅ SSH 터널링을 통한 원격 DB 접속 -- ✅ State 영구 저장소 +- ✅ PostgreSQL 직접 연결 (State Service 사용 안 함) +- ✅ DB에 직접 상태 저장 --- @@ -267,10 +241,8 @@ SLACK_SIGNING_SECRET: Optional[str] = None ### 기본 실행 ```bash # SSH 터널 시작 -./start-tunnel.sh - -# State Service 실행 -cd /home/heejae/robeing-state-service +# rb8001 실행 (PostgreSQL 직접 연결) +cd ~/rb8001 docker compose up -d # rb8001 실행 diff --git a/troubleshooting/250823_happybell80_rb8001_레벨1_표시_문제.md b/troubleshooting/250823_happybell80_rb8001_레벨1_표시_문제.md index e7a946f..6c648d5 100644 --- a/troubleshooting/250823_happybell80_rb8001_레벨1_표시_문제.md +++ b/troubleshooting/250823_happybell80_rb8001_레벨1_표시_문제.md @@ -62,11 +62,9 @@ const response = await fetch(`${ROBEING_API_URL}/api/stats/${robeingId}`); **실제 위치**: - rb8001: `http://192.168.219.52:8001` (51124 서버) -### 2.5 State Service 연결 실패 -**rb8001 환경변수**: -- `STATE_SERVICE_URL` 미설정 -- State Service에서 DB 스탯 로드 불가 -- 기본값 사용 (각 스탯 10, 총 50 → 레벨 1) +### 2.5 ~~State Service 연결 실패~~ (제거됨 - State Service 사용 안 함) +- ~~State Service는 더 이상 사용하지 않음~~ +- rb8001이 직접 DB 접근하여 스탯 조회 --- @@ -119,14 +117,9 @@ if robeing_id == "rb8001" and "stats" in data: ## 4. 남은 문제 -### rb8001의 State Service 미연결 -- `STATE_SERVICE_URL` 환경변수 없음 -- DB 스탯 로드 실패, 자체 계산 사용 -- 실제 DB 레벨(20)과 불일치 - -**해결 방안**: -1. docker-compose.yml에 STATE_SERVICE_URL 추가 -2. 또는 rb8001이 직접 DB 접근하도록 수정 +### ~~rb8001의 State Service 미연결~~ (해결됨) +- State Service는 더 이상 사용하지 않음 +- rb8001이 직접 DB에서 스탯 조회하도록 변경함 --- diff --git a/troubleshooting/250823_happybell80_rb8001_이메일_스킬_통합_및_타임존_설정.md b/troubleshooting/250823_happybell80_rb8001_이메일_스킬_통합_및_타임존_설정.md index ce79993..ab4c6b8 100644 --- a/troubleshooting/250823_happybell80_rb8001_이메일_스킬_통합_및_타임존_설정.md +++ b/troubleshooting/250823_happybell80_rb8001_이메일_스킬_통합_및_타임존_설정.md @@ -107,15 +107,9 @@ RUN apt-get update && apt-get install -y \ ## 5. 관련 이슈 -### 5.1 STATE_SERVICE_URL 미설정 -- **현상**: rb8001이 레벨 1로 표시 -- **원인**: STATE_SERVICE_URL 환경변수 없음 -- **영향**: DB의 실제 스탯을 불러오지 못함 -- **해결 방안**: docker-compose.yml에 추가 필요 -```yaml -environment: - - STATE_SERVICE_URL=http://192.168.219.52:8507 -``` +### 5.1 ~~STATE_SERVICE_URL 미설정~~ (제거됨 - State Service 사용 안 함) +- ~~State Service는 더 이상 사용하지 않음~~ +- rb8001이 직접 DB 접근하여 스탯 조회 ### 5.2 이메일 스킬 중복 - **현상**: rb8001과 skill-email 모두 Gmail 처리 @@ -176,8 +170,8 @@ docker logs rb8001 --tail 10 ## 8. 향후 개선사항 -1. **STATE_SERVICE_URL 설정** - - rb8001이 실제 레벨 표시하도록 +1. ~~**STATE_SERVICE_URL 설정**~~ (제거됨) + - State Service 사용 안 함, rb8001이 직접 DB 조회 2. **이메일 스킬 통합 정리** - rb8001 내장 vs skill-email 서비스 중 선택 diff --git a/troubleshooting/250825_gmail_token_null_daily_briefing_fix.md b/troubleshooting/250825_gmail_token_null_daily_briefing_fix.md index 00f3e17..4f1c413 100644 --- a/troubleshooting/250825_gmail_token_null_daily_briefing_fix.md +++ b/troubleshooting/250825_gmail_token_null_daily_briefing_fix.md @@ -191,7 +191,7 @@ curl -s "http://localhost:9000/api/gmail/auth?user_id=69ae4ea9-a15f-5110-9f5d-65 ## 6. 관련 파일 - **auth-server**: `/home/admin/auth-server/app/api/gmail_refresh.py` - **skill-email**: `skill-email/main.py` (51124 서버) -- **State Service**: `/home/heejae/robeing-state-service/` (51124 서버) +- ~~**State Service**: `/home/heejae/robeing-state-service/`~~ (사용 안 함) --- @@ -202,12 +202,11 @@ curl -s "http://localhost:9000/api/gmail/auth?user_id=69ae4ea9-a15f-5110-9f5d-65 - **ChromaDB**: ✅ 정상 저장 - **PostgreSQL**: ❌ 저장 실패 (conversation_logs 테이블 0 rows) -### 7.2 대화 저장 플로우 +### 7.2 대화 저장 플로우 (현재: State Service 사용 안 함) ```mermaid sequenceDiagram participant User as Slack User participant RB as rb8001
(51124:8001) - participant State as State Service
(51124:8507) participant Chroma as ChromaDB
(51124:8000) participant PG as PostgreSQL
(51123:5432) @@ -218,36 +217,22 @@ sequenceDiagram RB->>Chroma: store_memory() Chroma-->>RB: ✅ 저장 성공
ID: 2a776b26... - RB->>State: POST /api/logs/rb8001/conversation - State->>PG: INSERT INTO conversation_logs
❌ DB 연결 실패 - Note over State,PG: 잘못된 DB 이름:
localhost:5433/auth_db
(main_db여야 함) - State-->>RB: 500 Internal Server Error + RB->>PG: 직접 INSERT INTO conversation_logs + PG-->>RB: ✅ 저장 성공 - Note over RB: 에러 로깅만,
서비스 계속 동작 + Note over RB: State Service 없이
직접 DB 연결 ``` -### 7.3 근본 원인 -**State Service 환경변수 오류**: +### 7.3 근본 원인 (현재: 해결됨) +**~~State Service 환경변수 오류~~** → **State Service 사용 중단**: +- State Service는 더 이상 사용하지 않음 +- rb8001이 직접 PostgreSQL에 연결 + +### 7.4 현재 구조 ```bash -# 현재 (잘못된 DB 이름) -DATABASE_URL=postgresql://robeings:robeings@localhost:5433/auth_db -# 문제: auth_db가 존재하지 않음 (main_db 사용해야 함) - -# 올바른 설정 (SSH 터널 사용) -DATABASE_URL=postgresql://robeings:robeings@localhost:5433/main_db -# 5433은 SSH 터널 포트 (51124:5433 → 51123:5432) -``` - -### 7.4 해결 방법 -```bash -# 1. SSH 터널 확인 (51124 서버) -ps aux | grep "5433:localhost:5432" -# 없으면 생성: ssh -N -L 5433:localhost:5432 admin@192.168.219.45 & - -# 2. State Service 환경변수 수정 (51124 서버) -cd /home/heejae/robeing-state-service -vim .env # auth_db → main_db로 수정 -docker compose down && docker compose up -d --build +# rb8001이 직접 DB 연결 (51124 서버) +DATABASE_URL=postgresql://robeings:robeings@192.168.219.45:5432/main_db +# State Service 없이 직접 연결 ``` --- @@ -255,4 +240,4 @@ docker compose down && docker compose up -d --build ## 예상 소요 시간: 1시간 30분 - Gmail 토큰 문제: 1시간 -- State Service DB 설정: 30분 \ No newline at end of file +- ~~State Service DB 설정~~: 필요 없음 (직접 DB 연결) \ No newline at end of file diff --git a/troubleshooting/250825_robeing_stats_display_issue.md b/troubleshooting/250825_robeing_stats_display_issue.md index 40bc6c5..d48a09d 100644 --- a/troubleshooting/250825_robeing_stats_display_issue.md +++ b/troubleshooting/250825_robeing_stats_display_issue.md @@ -82,10 +82,9 @@ async def get_stats(): } ``` -#### 3.2 State Service 미연결 -- `state_service.py`에 `/api/stats/{robeing_id}` 정의됨 -- 하지만 `main.py`에서 import/mount 안함 -- 결과: 엔드포인트 접근 불가 (404) +#### 3.2 ~~State Service 미연결~~ (제거됨 - State Service 사용 안 함) +- ~~State Service는 더 이상 사용하지 않음~~ +- rb8001이 직접 DB 접근하여 스탯 조회 필요 #### 3.3 DB 값과 불일치 ```sql @@ -169,18 +168,9 @@ useEffect(() => { ### 중기 (51124 서버 수정 필요) #### 1. rb8001 서비스 수정 -- `main.py`에서 `state_service` import 및 mount -- `/stats` 엔드포인트가 DB 조회하도록 수정 +- `/stats` 엔드포인트가 직접 DB 조회하도록 수정 - `robeing_stats` 테이블과 동기화 - -#### 2. State Service 활성화 -```python -# main.py 수정 필요 -from app.services import state_service - -# 라우터 마운트 -app.include_router(state_service.router, prefix="/api") -``` +- State Service는 사용하지 않음 --- @@ -208,7 +198,7 @@ WHERE robeing_id = 'rb8001'; - **51124 서버** (수정 필요): - `rb8001/main.py:116` - 하드코딩된 /stats - - `rb8001/app/services/state_service.py` - 미연결 + - ~~`rb8001/app/services/state_service.py`~~ - 사용 안 함 - **DB 테이블**: - `robeing_stats` - 실제 스탯 저장