diff --git a/_archive/docs/architecture/server-architecture.md b/_archive/docs/architecture/server-architecture.md index 65d732f..5bf167b 100644 --- a/_archive/docs/architecture/server-architecture.md +++ b/_archive/docs/architecture/server-architecture.md @@ -2,7 +2,7 @@ ## 서버 구성 -### 51123 서버 (192.168.219.45) +### 51123 서버 (192.168.0.100) **역할**: 프록시, CI/CD, 관리, 로그 저장 ``` diff --git a/book/300_architecture/310_전체_시스템_구조_컨테이너와_마이크로서비스.md b/book/300_architecture/310_전체_시스템_구조_컨테이너와_마이크로서비스.md index 72b4edc..42c076c 100644 --- a/book/300_architecture/310_전체_시스템_구조_컨테이너와_마이크로서비스.md +++ b/book/300_architecture/310_전체_시스템_구조_컨테이너와_마이크로서비스.md @@ -26,7 +26,7 @@ ### 서버 구성 | 서버 | IP | 역할 | 주요 서비스 | |------|-----|------|------------| -| 51123 | 192.168.219.45 | 메인 서버 | Gitea, nginx, auth-server, PostgreSQL | +| 51123 | 192.168.0.100 | 메인 서버 | Gitea, nginx, auth-server, PostgreSQL | | 51124 | 192.168.219.52 | 로빙/스킬 서버 | rb8001, rb10508_micro, skill-email, ChromaDB | ### 기본 구조 diff --git a/book/300_architecture/320_Slack_기반_인터페이스_설계.md b/book/300_architecture/320_Slack_기반_인터페이스_설계.md index 06659db..45acd7e 100644 --- a/book/300_architecture/320_Slack_기반_인터페이스_설계.md +++ b/book/300_architecture/320_Slack_기반_인터페이스_설계.md @@ -55,7 +55,7 @@ async def get_user_uuid(slack_user_id: str) -> str: """51123 매핑 API를 통해 UUID 조회""" async with httpx.AsyncClient() as client: response = await client.get( - f"http://192.168.219.45:9000/api/slack/mapping/{slack_user_id}" + f"http://192.168.0.100:9000/api/slack/mapping/{slack_user_id}" ) if response.status_code == 200: return response.json()["user_id"] diff --git a/book/300_architecture/325_robeing_monitor_모니터링_아키텍처.md b/book/300_architecture/325_robeing_monitor_모니터링_아키텍처.md index 62302da..0389c35 100644 --- a/book/300_architecture/325_robeing_monitor_모니터링_아키텍처.md +++ b/book/300_architecture/325_robeing_monitor_모니터링_아키텍처.md @@ -14,7 +14,7 @@ | 서버 | IP | 주요 서비스 | 포트 | 역할 | |------|----|------------|------|------| -| 51123 | 192.168.219.45 | nginx, Gitea, auth-server, robeing-gateway | 80, 443, 3000, 8100 | 외부 진입, 인증, 프록시 | +| 51123 | 192.168.0.100 | nginx, Gitea, auth-server, robeing-gateway | 80, 443, 3000, 8100 | 외부 진입, 인증, 프록시 | | 51124 | 192.168.219.52 | rb8001, rb10508_micro, robeing-monitor, skill-* | 8001, 10508, 9024, 85xx | 로빙/스킬/모니터링 실행 | > 상세 구조: `310_전체_시스템_구조_컨테이너와_마이크로서비스.md`, diff --git a/book/300_architecture/database/250820_postgresql_ssh_tunnel_guide.md b/book/300_architecture/database/250820_postgresql_ssh_tunnel_guide.md index ba7346d..4f52f2d 100644 --- a/book/300_architecture/database/250820_postgresql_ssh_tunnel_guide.md +++ b/book/300_architecture/database/250820_postgresql_ssh_tunnel_guide.md @@ -55,7 +55,7 @@ sudo pkill -f "ssh.*5433" ### 1. 연결 정보 ``` -Host: localhost (SSH 터널 사용시) 또는 192.168.219.45 (직접 연결) +Host: localhost (SSH 터널 사용시) 또는 192.168.0.100 (직접 연결) Port: 5433 (터널 로컬 포트) 또는 5432 (직접 연결) Database: main_db (기존 auth_db는 더 이상 사용 안함) Username: robeings @@ -473,7 +473,7 @@ crontab에 추가 (5분마다 체크): ## 서버별 DB 연결 상태 (2025-08-26 현재) -### 51123 서버 (192.168.219.45) +### 51123 서버 (192.168.0.100) - **PostgreSQL**: 로컬 실행 중 (포트 5432) - **데이터베이스**: main_db - **직접 연결**: `postgresql://robeings:robeings@localhost:5432/main_db` @@ -481,7 +481,7 @@ crontab에 추가 (5분마다 체크): ### 51124 서버 (192.168.219.52) - **PostgreSQL**: 없음 (51123 서버 DB 사용) - **연결 방법**: SSH 터널 -- **터널 설정**: `ssh -N -L 5433:localhost:5432 admin@192.168.219.45` +- **터널 설정**: `ssh -N -L 5433:localhost:5432 admin@192.168.0.100` - **연결 문자열**: `postgresql://robeings:robeings@localhost:5433/main_db` ### 주요 서비스별 DB 연결 diff --git a/book/300_architecture/database/README.md b/book/300_architecture/database/README.md index d13203f..f5c25fa 100644 --- a/book/300_architecture/database/README.md +++ b/book/300_architecture/database/README.md @@ -21,7 +21,7 @@ - `naming_conventions.md` - 명명 규칙 ## 데이터베이스 정보 -- **Host**: 192.168.219.45 (51123 서버) +- **Host**: 192.168.0.100 (51123 서버) - **Port**: 5432 - **Database**: main_db (~~auth_db는 더 이상 사용 안함~~) - **User**: robeings @@ -36,7 +36,7 @@ psql postgresql://robeings:robeings@localhost:5432/main_db ### 51124 서버 (SSH 터널 사용) ```bash # SSH 터널 생성 -ssh -N -L 5433:localhost:5432 admin@192.168.219.45 +ssh -N -L 5433:localhost:5432 admin@192.168.0.100 # DB 연결 psql postgresql://robeings:robeings@localhost:5433/main_db diff --git a/journey/ideas/250810_auth_system_analysis.md b/journey/ideas/250810_auth_system_analysis.md index 1493277..53dbc22 100644 --- a/journey/ideas/250810_auth_system_analysis.md +++ b/journey/ideas/250810_auth_system_analysis.md @@ -97,7 +97,7 @@ collection_name = f"{settings.ROBEING_ID}_{username if username else 'default'}_ - rb10408_test: 포트 10408 #### 환경변수 현황 -- AUTH_SERVER_URL: `http://192.168.219.45:9000` (설정됨) +- AUTH_SERVER_URL: `http://192.168.0.100:9000` (설정됨) - JWT_SECRET_KEY: `your-jwt-secret-key` (기본값, 변경 필요) ## 주요 문제점 diff --git a/journey/ideas/251016_coldmail_ontology_phase2_3_neo4j_emotion.md b/journey/ideas/251016_coldmail_ontology_phase2_3_neo4j_emotion.md index b9a99a9..64407f5 100644 --- a/journey/ideas/251016_coldmail_ontology_phase2_3_neo4j_emotion.md +++ b/journey/ideas/251016_coldmail_ontology_phase2_3_neo4j_emotion.md @@ -23,8 +23,8 @@ **Neo4j 설치 완료** (51123 서버): - 버전: 2025.06.2 Community -- Bolt: neo4j://192.168.219.45:7687 -- HTTP: http://192.168.219.45:7474 +- Bolt: neo4j://192.168.0.100:7687 +- HTTP: http://192.168.0.100:7474 ### 스키마 설계 diff --git a/journey/plans/260304_자기개선루프_프롬프트DB_23로컬24_통합실행기록.md b/journey/plans/260304_자기개선루프_프롬프트DB_23로컬24_통합실행기록.md index 3c2c8bb..ffddc23 100644 --- a/journey/plans/260304_자기개선루프_프롬프트DB_23로컬24_통합실행기록.md +++ b/journey/plans/260304_자기개선루프_프롬프트DB_23로컬24_통합실행기록.md @@ -97,7 +97,7 @@ - `GET /api/self-improvement/runs?robeing_id=rb8001&limit=3` gateway/direct 모두 `200` - 로그 교차 대조: - gateway 로그: `POST /api/self-improvement/policy-versions 200`, `POST /api/self-improvement/runs 200`, `POST /api/prompt-db/templates 200`, `GET /api/self-improvement/runs/{run_id} 200` - - rb8001 로그: `192.168.219.45` 소스에서 동일 경로/시각대 요청 확인 + - rb8001 로그: `192.168.0.100` 소스에서 동일 경로/시각대 요청 확인 - direct 500 원인 로그: `Key (run_id)=(8670eee3-d60e-4ac2-9fd2-42dfa1220dde) already exists` (재삽입 충돌) ## 4. 완료 조건 diff --git a/journey/plans/archive/250819_gmail_item_detailed_tasks.md b/journey/plans/archive/250819_gmail_item_detailed_tasks.md index 28f0fe4..b20b3a1 100644 --- a/journey/plans/archive/250819_gmail_item_detailed_tasks.md +++ b/journey/plans/archive/250819_gmail_item_detailed_tasks.md @@ -39,7 +39,7 @@ - [x] 포트 9024로 변경 - [x] requirements.txt 확인 - [x] .env 파일 생성 -- [x] PostgreSQL 연결 설정 (192.168.219.45) +- [x] PostgreSQL 연결 설정 (192.168.0.100) ### 2.2 아이템 매니저 구현 - [x] app/monitor 디렉토리 생성 @@ -197,7 +197,7 @@ - [ ] .env 파일 수정 - [ ] MONITOR_SERVICE_URL=http://192.168.219.52:9024 - [ ] SKILL_EMAIL_URL=http://192.168.219.52:8501 - - [x] AUTH_SERVER_URL=http://192.168.219.45:9000 (이미 설정됨) + - [x] AUTH_SERVER_URL=http://192.168.0.100:9000 (이미 설정됨) - [ ] 환경변수 로드 확인 ### 4-1.2 Gmail 의도 분류 수정 diff --git a/journey/plans/archive/250819_gmail_item_implementation_plan.md b/journey/plans/archive/250819_gmail_item_implementation_plan.md index 9b130e7..31e2486 100644 --- a/journey/plans/archive/250819_gmail_item_implementation_plan.md +++ b/journey/plans/archive/250819_gmail_item_implementation_plan.md @@ -330,7 +330,7 @@ POSTGRES_HOST=localhost POSTGRES_PORT=5432 # 51124 서버에서 -POSTGRES_HOST=192.168.219.45 +POSTGRES_HOST=192.168.0.100 POSTGRES_PORT=5432 # 공통 @@ -344,16 +344,16 @@ POSTGRES_PASSWORD=robeings # rb8001 (51124 서버) SKILL_EMAIL_URL=http://localhost:8501 # host 모드이므로 localhost STATE_SERVICE_URL=http://localhost:9024 -DATABASE_URL=postgresql://robeings:robeings@192.168.219.45:5432/main_db +DATABASE_URL=postgresql://robeings:robeings@192.168.0.100:5432/main_db # skill-email (51124 서버) TOKEN_PROVIDER=database # file → database -POSTGRES_CONNECTION_STRING=postgresql://robeings:robeings@192.168.219.45:5432/main_db +POSTGRES_CONNECTION_STRING=postgresql://robeings:robeings@192.168.0.100:5432/main_db # robeing-monitor (51124 서버) PORT=9024 SERVICE_NAME=robeing-monitor -DATABASE_URL=postgresql://robeings:robeings@192.168.219.45:5432/main_db +DATABASE_URL=postgresql://robeings:robeings@192.168.0.100:5432/main_db ``` --- diff --git a/journey/plans/archive/251016_ontology_coldmail_implementation.md b/journey/plans/archive/251016_ontology_coldmail_implementation.md index c8d217b..5c071ed 100644 --- a/journey/plans/archive/251016_ontology_coldmail_implementation.md +++ b/journey/plans/archive/251016_ontology_coldmail_implementation.md @@ -53,9 +53,9 @@ ### 0) 현재 Neo4j 위치 확인 (기반 코드 재사용) - **클라이언트**: `rb8001/app/services/memory/neo4j_client.py:1-200` - **환경변수**: `rb8001/.env:NEO4J_URI, NEO4J_USER, NEO4J_PASSWORD` (기본값 포함) -- **연결 위치 확인**: Neo4j는 **51123 서버(192.168.219.45)**에서 운영 - - Bolt: `neo4j://192.168.219.45:7687` (DOCS 아이디어/검증 문서 동일) - - HTTP: `http://192.168.219.45:7474` +- **연결 위치 확인**: Neo4j는 **51123 서버(192.168.0.100)**에서 운영 + - Bolt: `neo4j://192.168.0.100:7687` (DOCS 아이디어/검증 문서 동일) + - HTTP: `http://192.168.0.100:7474` - **기존 사용처**: `rb8001/app/services/memory_hybrid_retrieval.py`, `rb8001/app/services/startup_valuation.py` ### 1) 데이터 구조 (Neo4j) diff --git a/journey/research/260310_콜드메일_skill_rag_file_500_및_실패은닉_원인확정_리서치.md b/journey/research/260310_콜드메일_skill_rag_file_500_및_실패은닉_원인확정_리서치.md index cf6318d..fc776d1 100644 --- a/journey/research/260310_콜드메일_skill_rag_file_500_및_실패은닉_원인확정_리서치.md +++ b/journey/research/260310_콜드메일_skill_rag_file_500_및_실패은닉_원인확정_리서치.md @@ -36,14 +36,14 @@ tags: [coldmail, skill-rag-file, rb8001, scheduler, postgres, research] - 이 시점 업로드 실패는 콜드메일 후보 수집 이후, 첨부파일 문서화 단계에서 발생했다. ### 3-3. `skill-rag-file`의 데이터베이스 주소는 stale 값이었다 -- 컨테이너 환경변수에서 `DATABASE_URL=postgresql://robeings:robeings@192.168.219.45:5432/main_db`가 확인됐다. -- 현재 호스트 IP는 `192.168.0.100`, `172.17.0.1` 등으로 확인됐고 `192.168.219.45`는 현재 서버 유효 주소가 아니었다. -- 호스트에서 `192.168.219.45:5432` 연결은 timeout이 발생했다. +- 컨테이너 환경변수에서 `DATABASE_URL=postgresql://robeings:robeings@192.168.0.100:5432/main_db`가 확인됐다. +- 현재 호스트 IP는 `192.168.0.100`, `172.17.0.1` 등으로 확인됐고 `192.168.0.100`는 현재 서버 유효 주소가 아니었다. +- 호스트에서 `192.168.0.100:5432` 연결은 timeout이 발생했다. - 반대로 컨테이너 내부에서 `127.0.0.1:5432`와 `172.17.0.1:5432` 연결은 성공했다. ### 3-4. stale 값의 근거는 로컬 오버라이드 `.env`였다 -- `skill-rag-file/.env`에 `DATABASE_URL=postgresql://robeings:robeings@192.168.219.45:5432/main_db`가 남아 있었다. -- `2026-03-04` 임시복구 문서에는 `192.168.219.45` 임시 IP 경로를 사용한 조치가 남아 있다. +- `skill-rag-file/.env`에 `DATABASE_URL=postgresql://robeings:robeings@192.168.0.100:5432/main_db`가 남아 있었다. +- `2026-03-04` 임시복구 문서에는 `192.168.0.100` 임시 IP 경로를 사용한 조치가 남아 있다. - 따라서 현재 서비스는 SSOT 런타임 환경이 아니라 과거 임시 오버라이드 값을 우선 사용하고 있었다. ### 3-5. 실패은닉은 `rb8001` 상위 흐름에서 발생했다 @@ -65,7 +65,7 @@ tags: [coldmail, skill-rag-file, rb8001, scheduler, postgres, research] ## 5. 해석(Interpretation) ### 5-1. 09:05 운영 실패의 직접 원인 -- 직접 원인은 `skill-rag-file`이 오래된 DB 호스트 `192.168.219.45`를 사용한 것이다. +- 직접 원인은 `skill-rag-file`이 오래된 DB 호스트 `192.168.0.100`를 사용한 것이다. - 이 값 때문에 첨부 저장용 DB insert가 timeout으로 실패했고, 콜드메일 후보 3건 모두 문서화에 실패했다. ### 5-2. 사용자가 "안 돌았다"고 체감한 이유 @@ -83,7 +83,7 @@ tags: [coldmail, skill-rag-file, rb8001, scheduler, postgres, research] - 운영 기준 최종 판정은 "실행은 됐고, 첨부 업로드 실패로 결과 생성에 실패"다. ### 결론 B. `skill-rag-file` 500의 단일 직접 원인은 stale DB 호스트다 -- `192.168.219.45`는 과거 임시복구 경로의 잔존값이었다. +- `192.168.0.100`는 과거 임시복구 경로의 잔존값이었다. - 현재 정상 경로는 컨테이너에서 접근 가능한 `172.17.0.1:5432`다. ### 결론 C. 실패은닉의 단일 직접 원인은 `None` 기반 누락 처리다 diff --git a/journey/troubleshooting/250716_auth_server_setup.md b/journey/troubleshooting/250716_auth_server_setup.md index d51010c..d352066 100644 --- a/journey/troubleshooting/250716_auth_server_setup.md +++ b/journey/troubleshooting/250716_auth_server_setup.md @@ -51,7 +51,7 @@ server { server_name auth.ro-being.com; location / { - proxy_pass http://192.168.219.45:9000/; # 끝에 / 중요! + proxy_pass http://192.168.0.100:9000/; # 끝에 / 중요! proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; diff --git a/journey/troubleshooting/250716_neo4j_docker_connection_issues.md b/journey/troubleshooting/250716_neo4j_docker_connection_issues.md index 2f5b7c9..4ccf0d9 100644 --- a/journey/troubleshooting/250716_neo4j_docker_connection_issues.md +++ b/journey/troubleshooting/250716_neo4j_docker_connection_issues.md @@ -45,9 +45,9 @@ sudo vim /etc/neo4j/neo4j.conf # 다음 설정 추가/수정 server.default_listen_address=0.0.0.0 -server.default_advertised_address=192.168.219.45 +server.default_advertised_address=192.168.0.100 dbms.default_listen_address=0.0.0.0 -dbms.default_advertised_address=192.168.219.45 +dbms.default_advertised_address=192.168.0.100 # Neo4j 재시작 sudo systemctl restart neo4j diff --git a/journey/troubleshooting/250812_slack_user_mapping_구현.md b/journey/troubleshooting/250812_slack_user_mapping_구현.md index 6d37782..5abfb8d 100644 --- a/journey/troubleshooting/250812_slack_user_mapping_구현.md +++ b/journey/troubleshooting/250812_slack_user_mapping_구현.md @@ -44,7 +44,7 @@ CREATE TABLE slack_user_mapping ( #### 3. rb10508_micro 통합 - Auth API 호출 구현 - 5분 캐싱 추가 -- 환경변수: `AUTH_SERVER_URL=http://192.168.219.45:9000` +- 환경변수: `AUTH_SERVER_URL=http://192.168.0.100:9000` ### 발생한 문제들 @@ -64,7 +64,7 @@ ALTER TABLE slack_user_mapping OWNER TO robeings; #### 2. 환경변수 설정 오류 **문제**: rb10508_micro가 잘못된 Auth 서버 주소 사용 **원인**: `AUTH_SERVER_URL=http://localhost:8001` (구버전) -**해결**: `AUTH_SERVER_URL=http://192.168.219.45:9000` +**해결**: `AUTH_SERVER_URL=http://192.168.0.100:9000` #### 3. 서버 역할 혼동 **문제**: 51124 서버에 코드 수정 지시 diff --git a/journey/troubleshooting/250820_happybell80_사용자별로빙동적할당구현.md b/journey/troubleshooting/250820_happybell80_사용자별로빙동적할당구현.md index 73f6cc5..7625d38 100644 --- a/journey/troubleshooting/250820_happybell80_사용자별로빙동적할당구현.md +++ b/journey/troubleshooting/250820_happybell80_사용자별로빙동적할당구현.md @@ -114,7 +114,7 @@ useEffect(() => { async def get_stats(robeing_id: str): # PostgreSQL 직접 연결 conn = await asyncpg.connect( - host='192.168.219.45', + host='192.168.0.100', port=5432, user='robeings', password='robeings', diff --git a/journey/troubleshooting/250821_happybell80_robeing_이메일처리_아키텍처_정립.md b/journey/troubleshooting/250821_happybell80_robeing_이메일처리_아키텍처_정립.md index 21c98bb..4d67ebc 100644 --- a/journey/troubleshooting/250821_happybell80_robeing_이메일처리_아키텍처_정립.md +++ b/journey/troubleshooting/250821_happybell80_robeing_이메일처리_아키텍처_정립.md @@ -142,7 +142,7 @@ CREATE TABLE robeing.conversations ( ```python # app/api/endpoints.py conn = await asyncpg.connect( - host='192.168.219.45', + host='192.168.0.100', port=5432, user='robeings', password='robeings', diff --git a/journey/troubleshooting/250822_happybell80_Gmail통합_UUID변환_문제해결.md b/journey/troubleshooting/250822_happybell80_Gmail통합_UUID변환_문제해결.md index 3e2b31a..f2a6d2e 100644 --- a/journey/troubleshooting/250822_happybell80_Gmail통합_UUID변환_문제해결.md +++ b/journey/troubleshooting/250822_happybell80_Gmail통합_UUID변환_문제해결.md @@ -224,7 +224,7 @@ def _get_gmail_service(self, user_id: str) -> Result[Any, EmailError]: # docker-compose.yml environment: - TOKEN_PROVIDER=database - - POSTGRES_CONNECTION_STRING=${POSTGRES_CONNECTION_STRING:-postgresql://robeings:robeings@192.168.219.45:5432/main_db} + - POSTGRES_CONNECTION_STRING=${POSTGRES_CONNECTION_STRING:-postgresql://robeings:robeings@192.168.0.100:5432/main_db} ``` --- diff --git a/journey/troubleshooting/250823_happybell80_Gmail_OAuth_토큰_갱신_시스템_구축.md b/journey/troubleshooting/250823_happybell80_Gmail_OAuth_토큰_갱신_시스템_구축.md index f096935..82062c9 100644 --- a/journey/troubleshooting/250823_happybell80_Gmail_OAuth_토큰_갱신_시스템_구축.md +++ b/journey/troubleshooting/250823_happybell80_Gmail_OAuth_토큰_갱신_시스템_구축.md @@ -137,7 +137,7 @@ ALTER TABLE gmail_token ALTER COLUMN token_data DROP NOT NULL; **문제**: `host.docker.internal` vs 실제 IP **해결**: 환경변수 기반으로 동적 설정 ```python -database_url = os.getenv("DATABASE_URL", "postgresql://robeings:robeings@192.168.219.45:5432/main_db") +database_url = os.getenv("DATABASE_URL", "postgresql://robeings:robeings@192.168.0.100:5432/main_db") ``` ### 4.5 Gmail 토큰 테이블 구조 개선 diff --git a/journey/troubleshooting/250825_gmail_token_expired_daily_briefing_fix.md b/journey/troubleshooting/250825_gmail_token_expired_daily_briefing_fix.md index e3fe58c..3dc22d9 100644 --- a/journey/troubleshooting/250825_gmail_token_expired_daily_briefing_fix.md +++ b/journey/troubleshooting/250825_gmail_token_expired_daily_briefing_fix.md @@ -221,7 +221,7 @@ sequenceDiagram ### 7.4 현재 구조 ```bash # rb8001이 직접 DB 연결 (51124 서버) -DATABASE_URL=postgresql://robeings:robeings@192.168.219.45:5432/main_db +DATABASE_URL=postgresql://robeings:robeings@192.168.0.100:5432/main_db # State Service 없이 직접 연결 ``` diff --git a/journey/troubleshooting/250826_happybell80_rb8001_이중저장구현.md b/journey/troubleshooting/250826_happybell80_rb8001_이중저장구현.md index b6eb14d..2aa1e3a 100644 --- a/journey/troubleshooting/250826_happybell80_rb8001_이중저장구현.md +++ b/journey/troubleshooting/250826_happybell80_rb8001_이중저장구현.md @@ -40,7 +40,7 @@ grep -r "save_conversation\|store_memory" rb8001/ ### 2. 서버 상태 확인 (51124) ```bash # PostgreSQL 연결 테스트 -PGPASSWORD=robeings psql -h 192.168.219.45 -U robeings -d main_db -c "\dt" +PGPASSWORD=robeings psql -h 192.168.0.100 -U robeings -d main_db -c "\dt" # 결과: # - conversation_log 테이블 존재 ✅ @@ -51,7 +51,7 @@ PGPASSWORD=robeings psql -h 192.168.219.45 -U robeings -d main_db -c "\dt" ### 3. 데이터베이스 연결 설정 ```bash # 직접 연결 설정 -192.168.219.45:5432/main_db ✅ +192.168.0.100:5432/main_db ✅ ``` --- @@ -62,7 +62,7 @@ PGPASSWORD=robeings psql -h 192.168.219.45 -U robeings -d main_db -c "\dt" ```diff # rb8001/.env - DATABASE_URL=postgresql://robeings:<비밀번호>@localhost/rb8001_db -+ DATABASE_URL=postgresql://robeings:<비밀번호>@192.168.219.45:5432/main_db ++ DATABASE_URL=postgresql://robeings:<비밀번호>@192.168.0.100:5432/main_db ``` ### 2. 직접 DB 저장 구현 diff --git a/journey/troubleshooting/250827_51124_critical_issues.md b/journey/troubleshooting/250827_51124_critical_issues.md index c16f20a..25ddc63 100644 --- a/journey/troubleshooting/250827_51124_critical_issues.md +++ b/journey/troubleshooting/250827_51124_critical_issues.md @@ -91,10 +91,10 @@ print(f'Token expiry: {creds.expiry if creds else None}') " # 2. auth-server의 토큰 상태 확인 API (이미 구현됨) -curl http://192.168.219.45:3000/api/gmail/check/U0925SXQFDK +curl http://192.168.0.100:3000/api/gmail/check/U0925SXQFDK # 3. auth-server의 토큰 갱신 API 테스트 (이미 구현됨) -curl -X POST http://192.168.219.45:3000/api/gmail/refresh/U0925SXQFDK +curl -X POST http://192.168.0.100:3000/api/gmail/refresh/U0925SXQFDK ``` ## 개선 방향 diff --git a/journey/troubleshooting/250828_slack_auth_integration_completed.md b/journey/troubleshooting/250828_slack_auth_integration_completed.md index 3f57e4d..022827f 100644 --- a/journey/troubleshooting/250828_slack_auth_integration_completed.md +++ b/journey/troubleshooting/250828_slack_auth_integration_completed.md @@ -67,7 +67,7 @@ docker restart skill-email # 변경: async def get_uuid_from_slack(slack_id: str): response = await httpx.get( - f"http://192.168.219.45:9000/api/slack/mapping/{slack_id}" + f"http://192.168.0.100:9000/api/slack/mapping/{slack_id}" ) return response.json()["user_id"] ``` @@ -97,7 +97,7 @@ await http_client.post(url, json=data, headers=headers) ### API 매핑 테스트 ```bash # 51123에서 Slack → UUID 매핑 확인 -curl http://192.168.219.45:9000/api/slack/mapping/U0925SXQFDK +curl http://192.168.0.100:9000/api/slack/mapping/U0925SXQFDK # 응답: {"user_id": "1e16e9d5-59f3-54da-a661-8abeabff4230", ...} ``` diff --git a/journey/troubleshooting/250831_rb8001_multiple_issues.md b/journey/troubleshooting/250831_rb8001_multiple_issues.md index f59d015..dec5976 100644 --- a/journey/troubleshooting/250831_rb8001_multiple_issues.md +++ b/journey/troubleshooting/250831_rb8001_multiple_issues.md @@ -25,7 +25,7 @@ ### 미해결 사항 (별도 이슈로 분리) - **하드코딩 URL 제거**: → [250915_hardcoded_url_removal.md](./250915_hardcoded_url_removal.md)로 이관 - - `rb8001/app/skills/email_integration.py:39-47`의 `http://192.168.219.45:9000` 하드코딩 + - `rb8001/app/skills/email_integration.py:39-47`의 `http://192.168.0.100:9000` 하드코딩 - 전체 서비스 환경변수화 프로젝트의 일부로 처리 예정 - **감정 분석 시스템**: → [250916_로빙_감정_분석_시스템_구현_계획.md](../ideas/250916_로빙_감정_분석_시스템_구현_계획.md)로 이관 @@ -35,7 +35,7 @@ ### 증상 ``` -INFO:httpx:HTTP Request: GET http://192.168.219.45:9000/api/slack/mapping/1e16e9d5-59f3-54da-a661-8abeabff4230 "HTTP/1.1 200 OK" +INFO:httpx:HTTP Request: GET http://192.168.0.100:9000/api/slack/mapping/1e16e9d5-59f3-54da-a661-8abeabff4230 "HTTP/1.1 200 OK" INFO:app.skills.email_integration:Slack ID 1e16e9d5-59f3-54da-a661-8abeabff4230 mapped to UUID default_user ERROR:app.skills.email_integration:DB 조회 실패: invalid input syntax for type uuid: "default_user" ``` diff --git a/journey/troubleshooting/250911_happybell80_PostgreSQL_테이블명_단수형_통일.md b/journey/troubleshooting/250911_happybell80_PostgreSQL_테이블명_단수형_통일.md index fba4abb..93e4b19 100644 --- a/journey/troubleshooting/250911_happybell80_PostgreSQL_테이블명_단수형_통일.md +++ b/journey/troubleshooting/250911_happybell80_PostgreSQL_테이블명_단수형_통일.md @@ -8,7 +8,7 @@ ## 1. 데이터베이스 연결 정보 ### 메인 데이터베이스 -- **main_db**: `postgresql://robeings:robeings@192.168.219.45:5432/main_db` +- **main_db**: `postgresql://robeings:robeings@192.168.0.100:5432/main_db` - **robeing_metrics**: `postgresql://postgres:@172.17.0.1:5432/robeing_metrics` ### 사용 라이브러리 diff --git a/journey/troubleshooting/250914_admin_robeing_monitor_schema_error.md b/journey/troubleshooting/250914_admin_robeing_monitor_schema_error.md index ac41580..bd062dd 100644 --- a/journey/troubleshooting/250914_admin_robeing_monitor_schema_error.md +++ b/journey/troubleshooting/250914_admin_robeing_monitor_schema_error.md @@ -8,7 +8,7 @@ - **서버**: 51124 (192.168.219.52) - **포트**: 9024 - **컨테이너**: robeing_monitor (38시간 가동 중, healthy) -- **DB 연결**: postgresql://robeings:robeings@192.168.219.45:5432/main_db +- **DB 연결**: postgresql://robeings:robeings@192.168.0.100:5432/main_db ## 문제 증상 Gateway에서 stats API 호출 시 매분마다 500 에러 발생 diff --git a/journey/troubleshooting/250915_hardcoded_url_removal.md b/journey/troubleshooting/250915_hardcoded_url_removal.md index 5523e09..8f9dd53 100644 --- a/journey/troubleshooting/250915_hardcoded_url_removal.md +++ b/journey/troubleshooting/250915_hardcoded_url_removal.md @@ -19,7 +19,7 @@ - Line 203: `https://auth.ro-being.com/auth/slack/login/callback` (확인 필요) **app/providers/gmail_passport.py** -- Line 54: `postgresql://robeings:robeings@192.168.219.45:5432/main_db` +- Line 54: `postgresql://robeings:robeings@192.168.0.100:5432/main_db` - Line 26: `https://auth.ro-being.com/auth/gmail/passport/callback` **app/providers/gmail.py** @@ -46,7 +46,7 @@ - 하드코딩: `localhost:8502`, `localhost:8505` URL (확인 필요) **app/skills/email_integration.py** -- Line 37: `http://192.168.219.45:9000/api/slack/mapping/{slack_id}` +- Line 37: `http://192.168.0.100:9000/api/slack/mapping/{slack_id}` - Line 253: `http://localhost:8001/api/llm/extract` (콜백 URL) - Line 17-18: `localhost:8501`, `localhost:9024` (기본값) @@ -82,7 +82,7 @@ - `https://auth.ro-being.com` 포함 **docker-compose.yml** -- DB 호스트 `192.168.219.45` +- DB 호스트 `192.168.0.100` ### skill-email **main.py** @@ -117,7 +117,7 @@ ### rb10508_micro **app/api/endpoints.py** -- DB 접속: `host='192.168.219.45', port=5432, user='robeings'` 하드코딩 +- DB 접속: `host='192.168.0.100', port=5432, user='robeings'` 하드코딩 ### skill-embedding **http_embedding_function.py / 테스트/컴포즈** diff --git a/journey/troubleshooting/250915_skill-rag-file_초기_구축.md b/journey/troubleshooting/250915_skill-rag-file_초기_구축.md index 83c06ce..5089076 100644 --- a/journey/troubleshooting/250915_skill-rag-file_초기_구축.md +++ b/journey/troubleshooting/250915_skill-rag-file_초기_구축.md @@ -18,8 +18,8 @@ ### 파일 저장 구조 설정 - **51123 디렉토리**: /mnt/hdd/data/documents/ - **51124 마운트**: /mnt/51123data/ (SSHFS) -- **SSHFS 명령 (초기)**: `sshfs -o IdentityFile=/home/admin/.ssh/id_rsa_deploy,reconnect,uid=$(id -u),gid=$(id -g) admin@192.168.219.45:/mnt/hdd/data /mnt/51123data -p 51123` -- **SSHFS 명령 (2025-10-14 수정)**: `sshfs -o allow_other,default_permissions,IdentityFile=/home/admin/.ssh/id_rsa_deploy,reconnect,uid=1001,gid=1000 admin@192.168.219.45:/mnt/hdd/data /mnt/51123data -p 51123` +- **SSHFS 명령 (초기)**: `sshfs -o IdentityFile=/home/admin/.ssh/id_rsa_deploy,reconnect,uid=$(id -u),gid=$(id -g) admin@192.168.0.100:/mnt/hdd/data /mnt/51123data -p 51123` +- **SSHFS 명령 (2025-10-14 수정)**: `sshfs -o allow_other,default_permissions,IdentityFile=/home/admin/.ssh/id_rsa_deploy,reconnect,uid=1001,gid=1000 admin@192.168.0.100:/mnt/hdd/data /mnt/51123data -p 51123` - **권한**: admin:xusers (읽기/쓰기 가능) - **주의**: allow_other 사용 시 /etc/fuse.conf에 user_allow_other 필요 @@ -47,7 +47,7 @@ ## 3. 확인된 시스템 정보 ### 51124 서버 환경 -- **SSHFS 마운트**: /mnt/51123data → 192.168.219.45:/mnt/hdd/data +- **SSHFS 마운트**: /mnt/51123data → 192.168.0.100:/mnt/hdd/data - **documents 디렉토리**: /mnt/51123data/documents/ 존재 - **ChromaDB**: 0.5.20 설치됨 diff --git a/journey/troubleshooting/250916_rb8001_skill-rag-file_연동_구조.md b/journey/troubleshooting/250916_rb8001_skill-rag-file_연동_구조.md index f298753..0ab687a 100644 --- a/journey/troubleshooting/250916_rb8001_skill-rag-file_연동_구조.md +++ b/journey/troubleshooting/250916_rb8001_skill-rag-file_연동_구조.md @@ -92,7 +92,7 @@ brain_service/llm_service (파일 처리 없이 텍스트만 처리) - **원인**: team_document 테이블이 51123 PostgreSQL에 있고 권한 없음 - **해결**: 1. skill-rag-file .env에 51123 PostgreSQL 연결 정보 추가 - - `DATABASE_URL=postgresql+asyncpg://robeings:password@192.168.219.45:5432/main_db` + - `DATABASE_URL=postgresql+asyncpg://robeings:password@192.168.0.100:5432/main_db` 2. PostgreSQL 권한 부여: `GRANT ALL PRIVILEGES ON TABLE team_document TO robeings;` 3. 테이블 소유자 변경: `ALTER TABLE team_document OWNER TO robeings;` 4. 모든 주요 테이블 소유자 robeings로 통일 (company, team, user, slack_workspace, team_document) diff --git a/journey/troubleshooting/250918_happybell80_fluent_bit_opensearch_data_prepper_integration.md b/journey/troubleshooting/250918_happybell80_fluent_bit_opensearch_data_prepper_integration.md index 98a11f5..e511095 100644 --- a/journey/troubleshooting/250918_happybell80_fluent_bit_opensearch_data_prepper_integration.md +++ b/journey/troubleshooting/250918_happybell80_fluent_bit_opensearch_data_prepper_integration.md @@ -64,7 +64,7 @@ log-pipeline: destination: "@message" sink: - opensearch: - hosts: ["http://192.168.219.45:9200"] + hosts: ["http://192.168.0.100:9200"] index: "dataprepper-%{yyyy.MM.dd}" document_type: "_doc" ``` @@ -141,12 +141,12 @@ curl -s http://localhost:2021/health ### OpenSearch 인덱스 확인 ```bash -curl -s "http://192.168.219.45:9200/_cat/indices?v" | grep dataprepper +curl -s "http://192.168.0.100:9200/_cat/indices?v" | grep dataprepper ``` ### 문서 수 확인 ```bash -curl -s "http://192.168.219.45:9200/dataprepper-*/_count" +curl -s "http://192.168.0.100:9200/dataprepper-*/_count" ``` ## 구현 현황 (2025-09-18 업데이트) diff --git a/journey/troubleshooting/250920_user_identification_uuid_implementation.md b/journey/troubleshooting/250920_user_identification_uuid_implementation.md index 51dfa98..bd52491 100644 --- a/journey/troubleshooting/250920_user_identification_uuid_implementation.md +++ b/journey/troubleshooting/250920_user_identification_uuid_implementation.md @@ -86,7 +86,7 @@ def get_credentials(self, user_id: str) -> Optional[Credentials]: **파일**: `/home/admin/ivada_project/skill_email/.env` ```env TOKEN_PROVIDER=database # api에서 database로 변경 -POSTGRES_CONNECTION_STRING=postgresql://robeings:robeings@192.168.219.45:5432/main_db +POSTGRES_CONNECTION_STRING=postgresql://robeings:robeings@192.168.0.100:5432/main_db ``` ## 테스트 결과 diff --git a/journey/troubleshooting/250929_51123_fluent_bit_container_metadata_missing.md b/journey/troubleshooting/250929_51123_fluent_bit_container_metadata_missing.md index 491a0b3..1742a57 100644 --- a/journey/troubleshooting/250929_51123_fluent_bit_container_metadata_missing.md +++ b/journey/troubleshooting/250929_51123_fluent_bit_container_metadata_missing.md @@ -72,7 +72,7 @@ curl -s "http://localhost:9200/dataprepper-*/_search" | \ ### 수행된 조치 1. **data-prepper 설정 수정** - - pipelines.yaml: `hosts: ["http://localhost:9200"]` → `hosts: ["http://192.168.219.45:9200"]` + - pipelines.yaml: `hosts: ["http://localhost:9200"]` → `hosts: ["http://192.168.0.100:9200"]` - 51123 서버의 OpenSearch에 정상 연결 2. **Actions orphan 문제 해결** diff --git a/journey/troubleshooting/250930_claude_fluent_bit_memory_overflow_fix.md b/journey/troubleshooting/250930_claude_fluent_bit_memory_overflow_fix.md index 72fc2b1..0500b51 100644 --- a/journey/troubleshooting/250930_claude_fluent_bit_memory_overflow_fix.md +++ b/journey/troubleshooting/250930_claude_fluent_bit_memory_overflow_fix.md @@ -60,7 +60,7 @@ git reset --hard origin/main ```env # .env 파일 생성 -OPENSEARCH_HOST=192.168.219.45 # 51124서버용 +OPENSEARCH_HOST=192.168.0.100 # 51124서버용 ``` ### 4단계: 컨테이너 재시작 diff --git a/journey/troubleshooting/250930_fluent_bit_opensearch_issue.md b/journey/troubleshooting/250930_fluent_bit_opensearch_issue.md index 3b845de..262f996 100644 --- a/journey/troubleshooting/250930_fluent_bit_opensearch_issue.md +++ b/journey/troubleshooting/250930_fluent_bit_opensearch_issue.md @@ -75,7 +75,7 @@ - fluent-bit.conf: `Host ${OPENSEARCH_HOST}` - docker-compose.yaml: `OPENSEARCH_HOST=${OPENSEARCH_HOST:-127.0.0.1}` - 51123 서버 .env: `OPENSEARCH_HOST=127.0.0.1` -- 51124 서버 .env: `OPENSEARCH_HOST=192.168.219.45` +- 51124 서버 .env: `OPENSEARCH_HOST=192.168.0.100` ### 2. debug 로그 무한루프 문제 **문제**: Log_Level debug로 Fluent Bit 자기 자신 로그를 수집하는 무한루프 diff --git a/journey/troubleshooting/251015_claude_coldmail_workflow_langgraph_test.md b/journey/troubleshooting/251015_claude_coldmail_workflow_langgraph_test.md index 6913e73..10e50e9 100644 --- a/journey/troubleshooting/251015_claude_coldmail_workflow_langgraph_test.md +++ b/journey/troubleshooting/251015_claude_coldmail_workflow_langgraph_test.md @@ -29,7 +29,7 @@ **해결**: 51123 PostgreSQL 직접 접속하여 삭제 ```bash -ssh -i ~/.ssh/id_rsa_deploy -p 51123 admin@192.168.219.45 \ +ssh -i ~/.ssh/id_rsa_deploy -p 51123 admin@192.168.0.100 \ "PGPASSWORD=robeings psql -h localhost -U robeings -d main_db -c \ \"DELETE FROM team_document WHERE id IN (...);\"" ``` diff --git a/journey/troubleshooting/251016_phase2_hybrid_memory_implementation.md b/journey/troubleshooting/251016_phase2_hybrid_memory_implementation.md index bad4b69..1e88e62 100644 --- a/journey/troubleshooting/251016_phase2_hybrid_memory_implementation.md +++ b/journey/troubleshooting/251016_phase2_hybrid_memory_implementation.md @@ -174,7 +174,7 @@ final_score = (vector_score * 0.4) + (normalized_graph * 0.6) }, "neo4j": { "connected": true, - "uri": "neo4j://192.168.219.45:7687", + "uri": "neo4j://192.168.0.100:7687", "database": "neo4j", "event_count": 42 } @@ -201,7 +201,7 @@ final_score = (vector_score * 0.4) + (normalized_graph * 0.6) **결과**: - ChromaDB 저장: ✅ 정상 -- Neo4j 연결: ⚠️ 실패 (localhost → 192.168.219.45로 변경 필요) +- Neo4j 연결: ⚠️ 실패 (localhost → 192.168.0.100로 변경 필요) - Fallback 동작: ✅ 정상 (Neo4j 연결 실패 시 ChromaDB 단독 모드) --- @@ -221,7 +221,7 @@ final_score = (vector_score * 0.4) + (normalized_graph * 0.6) **.env 파일 추가 필요**: ```bash # Neo4j 연결 설정 -NEO4J_URI=neo4j://192.168.219.45:7687 +NEO4J_URI=neo4j://192.168.0.100:7687 NEO4J_USER=neo4j NEO4J_PASSWORD=<비밀번호> ``` @@ -314,7 +314,7 @@ app.include_router(memory_router) ### 즉시 필요 - [ ] **.env 파일에 Neo4j 환경변수 추가** - - NEO4J_URI=neo4j://192.168.219.45:7687 + - NEO4J_URI=neo4j://192.168.0.100:7687 - NEO4J_PASSWORD=<비밀번호> - [ ] **Docker 재시작 후 재테스트** @@ -344,7 +344,7 @@ app.include_router(memory_router) - **교훈**: 외부 의존성은 항상 fallback 준비 ### 3. 환경변수 기본값의 함정 -- **문제**: NEO4J_URI 기본값 localhost:7687 (51123 서버는 192.168.219.45) +- **문제**: NEO4J_URI 기본값 localhost:7687 (51123 서버는 192.168.0.100) - **교훈**: 기본값은 문서에 명시, 배포 시 환경변수 체크리스트 필수 --- diff --git a/journey/troubleshooting/251016_phase2_neo4j_validation.md b/journey/troubleshooting/251016_phase2_neo4j_validation.md index e7e7031..2da3ce2 100644 --- a/journey/troubleshooting/251016_phase2_neo4j_validation.md +++ b/journey/troubleshooting/251016_phase2_neo4j_validation.md @@ -31,18 +31,18 @@ Phase 2 하이브리드 기억 회상 시스템 (ChromaDB + Neo4j)의 Neo4j 연 **수정 후**: ```yaml # Neo4j (51123 서버에 설치됨) -- NEO4J_URI=neo4j://192.168.219.45:7687 +- NEO4J_URI=neo4j://192.168.0.100:7687 - NEO4J_USER=neo4j - NEO4J_PASSWORD=${NEO4J_PASSWORD} ``` **수정 사항**: -- URI: `bolt://localhost:7687` → `neo4j://192.168.219.45:7687` - - 이유: Neo4j는 51123 서버 (192.168.219.45)에 설치됨 +- URI: `bolt://localhost:7687` → `neo4j://192.168.0.100:7687` + - 이유: Neo4j는 51123 서버 (192.168.0.100)에 설치됨 - 프로토콜: neo4j_client.py 코드와 일치 (`neo4j://`) - PASSWORD: 환경변수 참조로 변경 (`.env` 파일에서 설정, 하드코딩 금지) -**커밋**: 40a0553 "Phase 2: Neo4j 연결 설정 업데이트 (192.168.219.45:7687)" +**커밋**: 40a0553 "Phase 2: Neo4j 연결 설정 업데이트 (192.168.0.100:7687)" ### 2. Neo4j 메타데이터 타입 에러 수정 @@ -108,7 +108,7 @@ Phase 2: 하이브리드 기억 회상 테스트 2. 통계 확인 ChromaDB: {'collection_name': 'rb8001_test_user_ontology_memory', 'user_id': 'test_user_ontology'} - Neo4j: {'connected': True, 'uri': 'neo4j://192.168.219.45:7687', 'database': 'neo4j', 'event_count': 0} + Neo4j: {'connected': True, 'uri': 'neo4j://192.168.0.100:7687', 'database': 'neo4j', 'event_count': 0} 3. 테스트 사건 저장 (ChromaDB + Neo4j) ✅ [1] 프레젠테이션을 성공적으로 마쳤다. 청중 반응이 좋았다.... → f1ba2bbf @@ -164,7 +164,7 @@ curl -X GET http://localhost:8001/api/v1/memory/stats \ }, "neo4j": { "connected": true, - "uri": "neo4j://192.168.219.45:7687", + "uri": "neo4j://192.168.0.100:7687", "database": "neo4j", "event_count": 4 } @@ -251,7 +251,7 @@ curl -X POST http://localhost:8001/api/v1/memory/recall \ - **상태**: Running (healthy) ### 서버 -- **51123 서버**: Neo4j (192.168.219.45:7687) +- **51123 서버**: Neo4j (192.168.0.100:7687) - 버전: Neo4j 2025.06.2 Community Edition - 상태: Active (running) - 데이터베이스: neo4j diff --git a/journey/troubleshooting/251016_phase3_ethics_activation_complete.md b/journey/troubleshooting/251016_phase3_ethics_activation_complete.md index 37c0b01..3f00469 100644 --- a/journey/troubleshooting/251016_phase3_ethics_activation_complete.md +++ b/journey/troubleshooting/251016_phase3_ethics_activation_complete.md @@ -146,7 +146,7 @@ LLM Service (응답 생성) 2. Memory (Phase 2) ✅ 활성화 - ChromaDB + Neo4j 하이브리드 - 3단계 회상 알고리즘 - - Neo4j 연결: 192.168.219.45:7687 + - Neo4j 연결: 192.168.0.100:7687 3. Ethics (Phase 3) ✅ 활성화 - 감정-우도 조정 (11 규칙) diff --git a/journey/troubleshooting/251020_nginx_skill-email_upstream_fix.md b/journey/troubleshooting/251020_nginx_skill-email_upstream_fix.md index a680183..2ccd2aa 100644 --- a/journey/troubleshooting/251020_nginx_skill-email_upstream_fix.md +++ b/journey/troubleshooting/251020_nginx_skill-email_upstream_fix.md @@ -18,7 +18,7 @@ - default:245-246: `proxy_pass http://localhost:8501/;` → `proxy_pass http://192.168.219.52:8501/;` - 검증 절차: - `nginx -t` 구성 테스트 통과 → `systemctl reload nginx` - - HTTPS 호스트 헤더로 헬스 체크: `curl -k -H 'Host: ro-being.com' https://192.168.219.45/skill-email/health` → 200 OK + - HTTPS 호스트 헤더로 헬스 체크: `curl -k -H 'Host: ro-being.com' https://192.168.0.100/skill-email/health` → 200 OK ## 구현 완료 - 적용 시각: 2025-10-20 00:06 KST diff --git a/journey/troubleshooting/251021_rb8001_skill-rag-file_push_and_DOCS_pull.md b/journey/troubleshooting/251021_rb8001_skill-rag-file_push_and_DOCS_pull.md index 01cc5e9..61e550d 100644 --- a/journey/troubleshooting/251021_rb8001_skill-rag-file_push_and_DOCS_pull.md +++ b/journey/troubleshooting/251021_rb8001_skill-rag-file_push_and_DOCS_pull.md @@ -14,7 +14,7 @@ - rb8001 - 커밋: `b8901ae` (main) - 내용: 추적 중인 변경만 커밋(Coldmail 워크플로/스크립트 경미 수정). 로컬의 미추적 스크립트(`scripts/debug_email_detail.py`, `scripts/find_pdf_emails.py`)와 임시 파일(`state/_write_test`)은 푸시 제외. - - 원격: `http://192.168.219.45:3000/ivada_Ro-being/rb8001.git` + - 원격: `http://192.168.0.100:3000/ivada_Ro-being/rb8001.git` - skill-rag-file - 커밋: `cfb012c` (main) - 내용: 로컬에서 1커밋 선행 상태를 원격으로 동기화(추가 변경 없음). diff --git a/journey/troubleshooting/251022_coldmail_nb_feature_expansion.md b/journey/troubleshooting/251022_coldmail_nb_feature_expansion.md index baef498..80bc89a 100644 --- a/journey/troubleshooting/251022_coldmail_nb_feature_expansion.md +++ b/journey/troubleshooting/251022_coldmail_nb_feature_expansion.md @@ -20,7 +20,7 @@ ## 확인 방법 ```bash # 실DB 읽기 전용 쿼리 예시 (23 서버 main_db) -PGPASSWORD=robeings psql -h 192.168.219.45 -U robeings -d main_db -c \ +PGPASSWORD=robeings psql -h 192.168.0.100 -U robeings -d main_db -c \ "SELECT word, coldmail_count, normal_count FROM coldmail_classifier WHERE word IN ('투자','ir','deck');" ``` diff --git a/journey/troubleshooting/251228_admin_서비스_헬스체크_개선.md b/journey/troubleshooting/251228_admin_서비스_헬스체크_개선.md index aeb3cde..a70c467 100644 --- a/journey/troubleshooting/251228_admin_서비스_헬스체크_개선.md +++ b/journey/troubleshooting/251228_admin_서비스_헬스체크_개선.md @@ -54,12 +54,12 @@ **원칙**: - Docker API는 같은 서버의 컨테이너만 조회 가능 (다른 서버의 컨테이너는 조회 불가) - Docker API 체크 실패 시(`not_found`, `error`) HTTP 헬스체크로 자동 폴백 -- 서버 간 접근 시 URL 폴백: `172.17.0.1` 실패 시 `192.168.219.45`로 재시도 +- 서버 간 접근 시 URL 폴백: `172.17.0.1` 실패 시 `192.168.0.100`로 재시도 **이유**: - Docker API는 로컬 Docker 데몬에만 접근 가능하여 원격 서버 컨테이너 조회 불가 - 서버 간 서비스 체크는 HTTP 헬스체크로만 가능 -- Docker 네트워크 IP(`172.17.0.1`)는 같은 서버 내부에서만 유효, 서버 간 접근은 실제 IP(`192.168.219.45`) 필요 +- Docker 네트워크 IP(`172.17.0.1`)는 같은 서버 내부에서만 유효, 서버 간 접근은 실제 IP(`192.168.0.100`) 필요 --- diff --git a/journey/troubleshooting/260112_storehub_neo4j_add.md b/journey/troubleshooting/260112_storehub_neo4j_add.md index e59f2d2..cccece1 100644 --- a/journey/troubleshooting/260112_storehub_neo4j_add.md +++ b/journey/troubleshooting/260112_storehub_neo4j_add.md @@ -50,7 +50,7 @@ StoreHub 스타트업 데이터가 Neo4j에 정상적으로 추가되었습니 **실행 환경**: - rb8001 Docker 컨테이너 내부에서 실행 -- Neo4j 연결: neo4j://192.168.219.45:7687 (51123 서버) +- Neo4j 연결: neo4j://192.168.0.100:7687 (51123 서버) - 환경변수: NEO4J_PASSWORD 설정됨 (.env 파일) **실행 결과**: diff --git a/journey/troubleshooting/260116_admin_dashboard_서버간_헬스체크_개선.md b/journey/troubleshooting/260116_admin_dashboard_서버간_헬스체크_개선.md index 80949c1..3b9cf9e 100644 --- a/journey/troubleshooting/260116_admin_dashboard_서버간_헬스체크_개선.md +++ b/journey/troubleshooting/260116_admin_dashboard_서버간_헬스체크_개선.md @@ -13,7 +13,7 @@ **원인 3가지**: 1. Docker API 제한: 51124에서 51123 컨테이너를 Docker API로 조회 불가 (같은 서버 컨테이너만 조회 가능) 2. 폴백 로직 없음: Docker API 실패 시 HTTP 헬스체크로 폴백하지 않음 -3. 서버 간 접근 불가: 172.17.0.1은 Docker bridge IP로 같은 서버에서만 접근 가능, 51124에서 51123 서비스 접근 시 192.168.219.45 필요 +3. 서버 간 접근 불가: 172.17.0.1은 Docker bridge IP로 같은 서버에서만 접근 가능, 51124에서 51123 서비스 접근 시 192.168.0.100 필요 ## 해결 방안 @@ -21,21 +21,21 @@ - `system_service.py:458-468`: Docker API 체크 성공 시만 즉시 반환, 실패 시 HTTP 체크로 진행 ### 2. 서버 간 접근 URL 폴백 -- `system_service.py:475-500`: 172.17.0.1 사용하는 51123 서버 서비스는 192.168.219.45로 폴백 시도 +- `system_service.py:475-500`: 172.17.0.1 사용하는 51123 서버 서비스는 192.168.0.100로 폴백 시도 ### 3. opensearch_9600 제거 - `system_service.py:25,38,422`: Performance Analyzer 비활성화로 헬스체크 불가하여 제거 **코드 변경**: - Docker API 성공 체크 후 HTTP 폴백 가능하도록 조건 변경 -- HTTP 체크 시 172.17.0.1 실패 시 192.168.219.45로 재시도 +- HTTP 체크 시 172.17.0.1 실패 시 192.168.0.100로 재시도 - opensearch_9600 서비스 제거 (SERVER_51123_SERVICES, BASE_SERVICES, docker_services에서 제거) ## 교훈 ### 서버 간 접근 시 Docker bridge IP 한계 - 172.17.0.1은 Docker bridge IP로 같은 호스트에서만 유효 -- 서버 간 접근 시 실제 서버 IP(192.168.219.45/52) 사용 필요 +- 서버 간 접근 시 실제 서버 IP(192.168.0.100/52) 사용 필요 ### 폴백 로직 필수 - Docker API는 같은 서버 컨테이너만 조회 가능 diff --git a/journey/troubleshooting/260227_gateway_slack_events_signature_mismatch_and_500_mapping.md b/journey/troubleshooting/260227_gateway_slack_events_signature_mismatch_and_500_mapping.md index cbb7030..6645115 100644 --- a/journey/troubleshooting/260227_gateway_slack_events_signature_mismatch_and_500_mapping.md +++ b/journey/troubleshooting/260227_gateway_slack_events_signature_mismatch_and_500_mapping.md @@ -79,7 +79,7 @@ - 기존처럼 `500`으로 재매핑되지 않음 3. **실유입 로그 확인** -- `docker logs rb8001` 최근 구간에서 `192.168.219.45 -> POST /api/slack/events`가 `200 OK` 다건 확인 +- `docker logs rb8001` 최근 구간에서 `192.168.0.100 -> POST /api/slack/events`가 `200 OK` 다건 확인 - `could not convert string to float` 및 `/api/slack/events 500` 재발 로그 미확인 ## 아직 남은 조치 (최종 운영 확인) diff --git a/journey/troubleshooting/260310_coldmail_skill_rag_file_500_stale_db_host_및_실패가시성_복구.md b/journey/troubleshooting/260310_coldmail_skill_rag_file_500_stale_db_host_및_실패가시성_복구.md index 3cbd629..d8a2a01 100644 --- a/journey/troubleshooting/260310_coldmail_skill_rag_file_500_stale_db_host_및_실패가시성_복구.md +++ b/journey/troubleshooting/260310_coldmail_skill_rag_file_500_stale_db_host_및_실패가시성_복구.md @@ -20,7 +20,7 @@ tags: [coldmail, skill-rag-file, rb8001, postgres, scheduler, troubleshooting] - `rb8001` 상위 흐름은 이 실패를 예외로 올리지 않아 APScheduler에는 성공처럼 보였다. ## 근본 원인 -- `skill-rag-file/.env`가 과거 임시복구용 DB 주소 `192.168.219.45:5432`를 계속 우선 사용하고 있었다. +- `skill-rag-file/.env`가 과거 임시복구용 DB 주소 `192.168.0.100:5432`를 계속 우선 사용하고 있었다. - 현재 서버에서 해당 주소는 더 이상 유효하지 않아 DB insert 시 timeout이 발생했다. - `rb8001`은 첨부 처리 실패를 `None`으로 흡수해 "0건 처리"로만 닫는 구조였다. diff --git a/workflow/01_conversation/slack_basic_dialogue.json b/workflow/01_conversation/slack_basic_dialogue.json index 30a2770..4fba239 100644 --- a/workflow/01_conversation/slack_basic_dialogue.json +++ b/workflow/01_conversation/slack_basic_dialogue.json @@ -58,7 +58,7 @@ { "parameters": { "method": "GET", - "url": "=http://192.168.219.45:9000/api/slack/mapping/{{$json.user_id}}", + "url": "=http://192.168.0.100:9000/api/slack/mapping/{{$json.user_id}}", "options": { "response": { "response": { @@ -86,7 +86,7 @@ { "parameters": { "method": "POST", - "url": "=http://192.168.219.45:8100/api/chat", + "url": "=http://192.168.0.100:8100/api/chat", "sendHeaders": true, "headerParameters": { "parameters": [ diff --git a/workflow/05_admin/diary_reflection_pipeline.json b/workflow/05_admin/diary_reflection_pipeline.json index ed377b0..bd2e125 100644 --- a/workflow/05_admin/diary_reflection_pipeline.json +++ b/workflow/05_admin/diary_reflection_pipeline.json @@ -94,7 +94,7 @@ "resource": "message", "operation": "post", "channel": "C07...", - "text": "=📜 *로빙 일기 ({{ $json.date }})*\\n\\n{{ $json.summary }}\\n\\n지배적 감정: {{ $json.dominant_emotion }}\\n\\n[대시보드에서 자세히 보기](http://192.168.219.45:3000/diary)", + "text": "=📜 *로빙 일기 ({{ $json.date }})*\\n\\n{{ $json.summary }}\\n\\n지배적 감정: {{ $json.dominant_emotion }}\\n\\n[대시보드에서 자세히 보기](http://192.168.0.100:3000/diary)", "otherOptions": {} }, "id": "diary-006", diff --git a/workflow/05_admin/service_health_check.json b/workflow/05_admin/service_health_check.json index 6243cc2..66efca5 100644 --- a/workflow/05_admin/service_health_check.json +++ b/workflow/05_admin/service_health_check.json @@ -20,7 +20,7 @@ }, { "parameters": { - "jsCode": "return [\n { name: 'robeing-gateway', url: 'http://192.168.219.45:8100/health' },\n { name: 'auth-server', url: 'http://192.168.219.45:9000/health' },\n { name: 'rb8001', url: 'http://192.168.219.52:8001/health' },\n { name: 'skill-email', url: 'http://192.168.219.52:8501/healthz' },\n { name: 'skill-news', url: 'http://192.168.219.52:8505/healthz' },\n { name: 'skill-rag-file', url: 'http://192.168.219.52:8508/healthz' },\n { name: 'skill-calendar', url: 'http://192.168.219.52:8512/health' }\n];" + "jsCode": "return [\n { name: 'robeing-gateway', url: 'http://192.168.0.100:8100/health' },\n { name: 'auth-server', url: 'http://192.168.0.100:9000/health' },\n { name: 'rb8001', url: 'http://192.168.219.52:8001/health' },\n { name: 'skill-email', url: 'http://192.168.219.52:8501/healthz' },\n { name: 'skill-news', url: 'http://192.168.219.52:8505/healthz' },\n { name: 'skill-rag-file', url: 'http://192.168.219.52:8508/healthz' },\n { name: 'skill-calendar', url: 'http://192.168.219.52:8512/health' }\n];" }, "id": "health-002", "name": "Service List", diff --git a/workflow/05_admin/service_health_check.md b/workflow/05_admin/service_health_check.md index 24893ec..c378e9c 100644 --- a/workflow/05_admin/service_health_check.md +++ b/workflow/05_admin/service_health_check.md @@ -22,8 +22,8 @@ Every 10 mins → Service List → Check Health → Assess Status → Is Down? ## 감시 대상 | 서비스 | URL | |---|---| -| robeing-gateway | `http://192.168.219.45:8100/health` | -| auth-server | `http://192.168.219.45:9000/health` | +| robeing-gateway | `http://192.168.0.100:8100/health` | +| auth-server | `http://192.168.0.100:9000/health` | | rb8001 | `http://192.168.219.52:8001/health` | | skill-email | `http://192.168.219.52:8501/healthz` | | skill-news | `http://192.168.219.52:8505/healthz` | diff --git a/workflow/README.md b/workflow/README.md index 300a779..ca4ebd9 100644 --- a/workflow/README.md +++ b/workflow/README.md @@ -14,7 +14,7 @@ | 서버 | 역할 | IP | 주요 포트 | |------|------|----|-----------| -| 51123 | 메인/인증/DB | 192.168.219.45 | Gateway(8100), Auth(9000), DB(5432) | +| 51123 | 메인/인증/DB | 192.168.0.100 | Gateway(8100), Auth(9000), DB(5432) | | 51124 | 로빙/스킬 | 192.168.219.52 | rb8001(8001), Email(8501), News(8505), RAG(8508), Calendar(8512) | ## 주요 워크플로우 가이드