Discord 알림 설정 및 사용 방법

이 문서는 블로그 자동 포스팅 에이전트의 Discord 알림을 설정하고 활용하는 방법을 설명합니다.

1) Discord 웹훅 생성

  1. Discord 서버에서 알림을 받을 채널을 선택합니다.
  2. 채널 편집 → 연동(Integrations) → Webhooks로 이동합니다.
  3. New Webhook를 생성하고, 이름과 아이콘을 설정합니다.
  4. 생성된 Webhook URL을 복사합니다.

2) GitHub Secrets 등록

리포지토리의 Settings → Secrets and variables → Actions 에서 아래 값을 추가합니다.

  • DISCORD_WEBHOOK_URL: 위에서 복사한 Webhook URL

옵션(Variables 권장):

  • BLOG_BASE_URL: 블로그 기본 주소 (예: https://chiptune93.github.io)
  • DISCORD_SEND_EXCERPT: 본문 요약 전송 여부 (true/false)
  • DISCORD_LOG_LEVEL: 알림 레벨 (off/summary/normal/verbose)
  • DISCORD_MAX_EVENTS: 실행당 최대 알림 개수 (기본 20)
  • DISCORD_PROGRESS_ONLY: 진행 로그에서 장문 필드 생략 여부 (true/false)

3) 로컬 실행 시 사용

로컬에서 실행할 경우 아래처럼 환경변수를 설정합니다.

export DISCORD_WEBHOOK_URL=...
export LLM_API_KEY=...
python tools/blog_agent/main.py

4) 알림에 포함되는 정보

Discord 알림에는 실행 단계별로 다음과 같은 내용이 포함됩니다.

  • 실행 메타 정보(Run ID, Stage, Elapsed)
  • 소스 선택 결과(파일명, 남은 소스 개수)
  • LLM 요청/응답, 정규화, 검증 결과
  • 품질 경고(본문 길이 미달, 섹션 누락 등) 및 자동 보강 재시도
  • 생성된 포스트 정보(파일명, 제목, 카테고리, 태그, 요약 일부)
  • 원본 아카이브 결과 및 상태 기록
  • direct 모드일 경우 커밋 메시지
  • GitHub Actions 실행 링크

레벨별 권장:

  • summary: 시작/완료/경고/오류 중심
  • normal: 기본 운영용(권장)
  • verbose: 디버깅용 상세 단계 로그

5) 주의사항

  • 웹훅 URL이 설정되지 않으면 알림은 전송되지 않습니다.
  • Discord 장애/네트워크 오류가 발생해도 워크플로 자체는 실패하지 않도록 설계되어 있습니다.
  • 로고/썸네일/아이콘은 BLOG_BASE_URL과 로고 경로를 조합해 사용합니다.
  • 이벤트 수가 DISCORD_MAX_EVENTS를 초과하면 이후 알림은 자동 생략됩니다.

© 2024. Chiptune93 All rights reserved.