유튜브 자동화를 돌리다 보면 어느 날 갑자기 인증이 끊기고 invalid_grant, unauthorized, token expired 같은 오류가 뜹니다. 대부분은 코드가 망가진 게 아니라 OAuth 토큰 수명/저장 경로/브라우저 승인 흐름이 어긋난 상태입니다. 이 문서는 실제 운영 기준으로, “지금 바로 복구”와 “다음부터 자동 감지”를 한 번에 정리한 초안입니다.
flowchart TD A[업로드/체크 실패 감지] --> B{오류 유형 확인} B -->|invalid_grant| C[refresh token 재발급] B -->|token expired| D[access token 재요청] B -->|unauthorized| E[권한 scope 재동의] C --> F[토큰 파일 저장 경로 검증] D --> F E --> F F --> G[헬스체크 스크립트 실행] G --> H{정상?} H -->|예| I[자동 업로드 재개] H -->|아니오| J[브라우저 동의 재실행] J --> G
🧠 칠판 치트시트
invalid_grant는 보통 refresh token 쪽 문제- 토큰은 “발급”보다 “저장 경로 일치”가 더 중요
- 복구 후에는 4시간 주기 워치독으로 재발 방지
가장 빠른 복구 순서 (5분)
- 현재 인증 상태 확인
python3 /home/tw2/.openclaw/workspace/archive/projects/openclaw-ops/30-output/20260308_oauth_watchdogs/youtube_token_healthcheck.py- 만료/오류면 브라우저 동의 재실행
- OpenClaw 브라우저(openclaw 프로필)로 Google 동의 화면 진행
- callback URL의
code,state를 교환 스크립트에 전달
- 재검증 후 업로드 체크
python3 /home/tw2/.openclaw/workspace/archive/projects/openclaw-ops/30-output/20260308_oauth_watchdogs/youtube_auth_check.py왜 자주 끊기나 (초보자 버전)
OAuth를 “출입증 시스템”으로 보면 쉽습니다.
- access token: 짧게 쓰는 임시 출입증
- refresh token: 새 출입증을 재발급받는 마스터 키
문제는 마스터 키가 만료됐다기보다, 잘못된 위치에 저장되거나 예전 키를 계속 읽는 상황에서 많이 발생합니다.
현장 미니 사례
- 실패 사례: 인증은 다시 했는데, 자동화가 다른 경로의 오래된 토큰 파일을 읽어서 계속 실패
- 성공 사례: 토큰 경로를 단일화한 뒤 워치독(4시간)으로 상태 점검 → 만료 시 즉시 알림/복구
실행 체크리스트
-
youtube_token_healthcheck.py결과가AUTH_OK인지 확인 - 토큰 파일 경로가 업로드 스크립트와 동일한지 확인
- 오류 시 브라우저 동의 + code/state 재교환 수행
- 재검증 후 실제 업로드 테스트 1건 실행
- 4시간 주기 워치독(cron) 상태 확인
함께 보면 좋은 문서
- 57. Quota 리셋됐는데 요청이 막힐 때 복구
- 17. 유튜브 에디터
- 11. skills 실전
- 40. OpenClaw 텔레그램 권한 변경 대응
- 03. 텔레그램 16MB 전송 오류 해결
- 56. WAN 영상 5초 고정 해결
- OpenClaw 01. 설치
- OpenClaw 02. 시작
- OpenClaw 06. Cron Job
- OpenClaw 11. 연동 체크
다음 글 추천
실제 운영 자동화까지 이어가려면 OpenClaw 06. Cron Job을 함께 보면 좋습니다. 토큰 만료 감지-알림-복구를 정기 점검 루틴으로 고정할 수 있습니다.
본 문서는 생성형 AI를 활용해 작성되었습니다.