다이어트·장례·보험·로또 콘텐츠 내리기 알림에 게시물 ID 추가
목차
여러 도메인에서 관리하는 콘텐츠가 내려질 때, 팀이 빠르게 인지할 수 있도록 Discord 알림을 자동화하는 작업을 했다. 단순해 보이지만 분산된 시스템에서 투명성을 확보하는 데 꽤 중요한 변경이었다.
배경: 왜 post_ids를 넘겨야 했나
처음엔 admin_db나 generate 파일에서 단순히 "게시물이 내려갔다"는 이벤트만 Discord로 보냈을 거다. 근데 문제가 있었다. 어떤 게시물이 언제 누구에 의해 내려졌는지 추적하기가 불편했고, Discord 메시지만으로는 구체적인 ID 없이 "뭔가 삭제됐다"는 식으로만 전달되고 있었던 것 같다.
특히 여러 도메인(diet, funeral, insurance, lotto)을 동시에 관리하다 보면, 각 도메인별로 발생한 "내리기" 액션들이 산발적으로 보이게 된다. 팀이 어떤 게시물이 내려졌고, 현재 상태가 무엇인지 빠르게 파악할 수 있어야 한다. 그래야 고객 문의나 비정상 케이스에 대응할 때 "어, 그 게시물 언제 내려졌더라?" 이런 식으로 헤매지 않는다.
어떻게 해결했나
변경 내용은 명확하다: discord_notify 함수에 post_ids를 명시적으로 전달하는 것.
admin_db.py와 generate.py에서 게시물을 내리는 로직이 실행될 때, 삭제되거나 unpublish되는 게시물의 ID들을 수집해서 Discord 알림에 포함시킨 것 같다. 이렇게 하면 Discord 메시지에 "post_id: [123, 456, 789]가 내려갔습니다" 식으로 구체적인 정보가 담길 수 있다.
# 예상되는 변경 방식
# Before
notify_discord("게시물이 내려갔습니다")
# After
notify_discord("게시물이 내려갔습니다", post_ids=[123, 456, 789])
이게 중요한 이유는 audit trail을 남기는 것이기 때문이다. 나중에 "이 게시물 왜 없어졌지?" 라는 문제가 생겼을 때, Discord 로그에서 post_id로 검색하면 언제 어느 도메인에서 내려졌는지 한눈에 알 수 있다.
왜 여러 모듈에 동시 적용했나
diet, funeral, insurance, lotto 모두에 같은 패턴을 적용한 건 일관성과 확장성 때문이다.
한두 개 도메인만 먼저 적용하고 나중에 나머지를 하는 방법도 있었을 텐데, 그렇게 하면 어떤 문제가 생기냐면:
- 도메인별 알림 포맷이 달라짐 → 팀원들이 각 도메인마다 다른 메시지 형식에 적응해야 함
- 버그 패치가 분산됨 → 나중에 post_ids 전달에서 엣지 케이스가 발견되면, 일부 도메인만 수정되고 일부는 못 하는 상황 발생
- 마이그레이션 코스트 증가 → 결국 나머지 도메인들도 손을 대야 하는데, 시간이 오래 지나면 코드 컨텍스트를 다시 파악해야 함
따라서 "한 번에 모든 도메인에 일관되게 적용"하는 게 유지보수 측면에서 훨씬 효율적이었다. 팀 차원의 관점에서도, 알림 시스템이 모든 도메인에서 동일하게 동작한다는 신뢰를 줄 수 있다.
회고: 팀 투명성의 작은 고리
이 작업은 기술적으로는 "post_ids 파라미터 하나 추가"로 보이지만, 실제로는 팀의 운영 투명성을 한 단계 높이는 것이다.
관리자가 버튼 하나를 누르는 순간, Discord에 정확한 데이터가 기록되면:
- 고객 문의 대응이 빨라진다
- 운영 실수가 발생했을 때 근본 원인을 파악하기 쉬워진다
- 각 팀원이 "누가 언제 뭘 했는지" 추적할 수 있어서 협력이 더 매끄러워진다
특히 여러 사람이 운영하는 플랫폼에선 이런 작은 자동화와 로깅이 적립되면, 나중에 안정성과 신뢰도에서 큰 차이가 난다. 누군가는 "왜 이런 디테일까지?"라고 생각할 수 있겠지만, 실제 운영 현장에서는 이런 게 분명 필요했던 것 같다.
🛒 이 글과 어울리는 추천 상품
*위 링크는 쿠팡파트너스 활동의 일환이며, 일정액의 수수료를 제공받을 수 있습니다.
댓글 0
첫 댓글 달아줘.