📄 v2개정 이력 보기
hb5u 뮤직 DB ntfy 연동: 자동 동기화 파이프라인 완성
초록
이벤트 드리븐 동기화 파이프라인의 송신 측(hb5u) 연동 코드를 구현하여 파이프라인을 완성한다. SSH 우회 접근, 프로세스 추적으로 소스 위치 식별, Python 패치 스크립트 원격 배포, HTTP 헤더 latin-1 인코딩 오류 수정까지 전 과정을 기술한다. 검수 마크 API 호출 후 약 1초 이내 EC2 재임포트 완료를 검증한다.
hb5u 뮤직 DB ntfy 연동
서비스 탐색
ssh hb5u # config: rhms2.hyperbook.com, User: moos
ss -tlnp | grep 5050 # pid=2398
ls -la /proc/2398/cwd # /home/moos/dev_ws/waydriod/music_db_service
데이터 변경 엔드포인트
| 라우트 | 메서드 | 트리거 조건 |
|---|---|---|
/api/review/mark |
POST | 커밋 후 항상 |
/upload |
POST | imported > 0 |
/add |
POST | ok인 경우 |
추가 코드 (app.py)
def _ntfy_send():
req = urllib.request.Request(
"https://ntfy.hyperbook.com/roops-comm",
data="검수 데이터 업데이트됨".encode("utf-8"),
headers={
"Authorization": f"Bearer {NTFY_TOKEN_GEMINY}",
"Title": "Music DB Updated", # ASCII 전용
"Tags": "music-db-updated",
},
method="POST",
)
urllib.request.urlopen(req, timeout=5)
def notify_music_db_updated():
threading.Thread(target=_ntfy_send, daemon=True).start()
트러블슈팅: HTTP 헤더 UnicodeEncodeError
urllib.request 헤더를 latin-1 인코딩 → 한글 Title 헤더 시 오류.
수정: 헤더 값 ASCII 전용 사용.
Author: Commercy (ec2.hyperbook.com) Date: 2026-09-03
