문제
VM 생성 job이 failed로 끝나도 사용자에게 아무런 알림이 가지 않는다. backend/services/vm_creation_queue.py에는 알림 전송 코드가 전혀 없다.
배경
feat/vm-creation-queue (#146) 이후 VM 생성은 비동기로 처리된다. 생성에는 1~2분이 걸리므로 사용자가 생성 화면을 떠난 뒤 실패하는 경우가 발생할 수 있는데, 이때 결과를 전달할 수단이 없다.
프론트에서 job을 폴링하도록 고치더라도(#159) 화면을 벗어난 뒤의 실패는 여전히 전달되지 않으므로, 별도의 알림이 필요하다.
제안 방향
process_vm_creation_job()의 성공·실패 분기에서 기존 알림 시스템으로 알림 발송:
- 실패 시 →
error_message를 담아 요청자에게 알림 (예: "VM 생성 실패 — 서버 자원이 부족합니다 …")
- 성공 시 → VM 이름·노드·접속 정보 안내 알림
- 워커 스레드에서 동작하므로 DB 세션 처리 방식 주의 (
job_db / work_db 분리 구조)
관련 파일: backend/api/routes/notifications.py, backend/models/notification.py
참고
Discord 웹훅 알림 기능이 이미 존재하므로, 관리자용 실패 알림을 함께 붙일지도 검토 가치가 있다 (자원 포화로 인한 연속 실패 조기 감지).
문제
VM 생성 job이
failed로 끝나도 사용자에게 아무런 알림이 가지 않는다.backend/services/vm_creation_queue.py에는 알림 전송 코드가 전혀 없다.배경
feat/vm-creation-queue(#146) 이후 VM 생성은 비동기로 처리된다. 생성에는 1~2분이 걸리므로 사용자가 생성 화면을 떠난 뒤 실패하는 경우가 발생할 수 있는데, 이때 결과를 전달할 수단이 없다.프론트에서 job을 폴링하도록 고치더라도(#159) 화면을 벗어난 뒤의 실패는 여전히 전달되지 않으므로, 별도의 알림이 필요하다.
제안 방향
process_vm_creation_job()의 성공·실패 분기에서 기존 알림 시스템으로 알림 발송:error_message를 담아 요청자에게 알림 (예: "VM 생성 실패 — 서버 자원이 부족합니다 …")job_db/work_db분리 구조)관련 파일:
backend/api/routes/notifications.py,backend/models/notification.py참고
Discord 웹훅 알림 기능이 이미 존재하므로, 관리자용 실패 알림을 함께 붙일지도 검토 가치가 있다 (자원 포화로 인한 연속 실패 조기 감지).