자동화 slecs

신규 그룹을 자동 발견하는 봇 만들기

목차

wiki에 올라오는 신규 그룹들을 수동으로 일일이 찾아 등록하는 프로세스를 자동화하는 discover_groups 기능을 만들었다. 연도별 카테고리를 주기적으로 스캔해서 발견된 그룹들을 시스템에 자동으로 반영하는 방식이다.

수동 처리의 한계

이전까진 wiki에 새로운 그룹이 추가되면 누군가 눈으로 확인해서 우리 시스템에 일일이 등록해야 했다. 변경 이력을 추적하거나, 누락된 그룹이 없는지 정기적으로 체크하는 일도 마찬가지. 그룹 수가 많아질수록 이런 수동 작업은 병목이 되어간다.

  • 휴먼 에러: 깜빡하거나 잘못 입력할 가능성
  • 시간 낭비: 진짜 해야 할 일에 집중할 수 없음
  • 일관성 부족: 누가 언제 업데이트했는지, 뭐가 빠졌는지 파악이 어려움
  • 확장성 문제: 그룹이 10배 늘어나면? 더 이상 손으로 감당 불가

팀장 입장에선 이런 반복 작업에 시간을 빼앗기느니, 자동화할 수 있는 부분은 빨리 걷어내는 게 낫다.

discover_groups.py — 자동 발견 로직

만들어진 모듈은 간단한 원칙으로 동작한다:

  1. wiki 연도 카테고리를 정기적으로 폴링
    — 매일, 또는 원하는 주기로 실행되는 봇 태스크

  2. 신규/변경된 항목 추출
    — 최근 업데이트된 그룹 리스트와 우리 DB를 비교

  3. 자동 등록
    — 새로운 그룹이면 시스템에 추가, 변경이 있었으면 동기화

  4. 로깅 & 알림
    — 뭐가 발견됐는지, 뭐가 등록됐는지 기록

이렇게 하면 누군가가 wiki를 관리하는 한, 우리 시스템은 자동으로 따라간다. 사람이 개입할 필요가 없다.

팀에 미친 변화

이 변경 후로 얻은 게 몇 가지 있다:

항목 이전 이후
그룹 등록 수동 (주 1~2회 체크) 자동 (매일)
실수 빈도 간헐적 누락/중복 거의 없음
팀원 시간 누군가는 항상 모니터링 0 → 관찰만
최신성 며칠 밀릴 수 있음 항상 최신

가장 큰 이득은 정신적 부담 제거다. 팀원들이 "혹시 빠진 그룹 없나?" 걱정을 하지 않아도 된다.

자동화 봇 설계 시 배운 점

이런 유형의 작업을 하면서 깨달은 패턴들을 정리해봤다.

1. 신뢰성이 핵심
자동화한다는 건 "문제가 발생해도 누가 눈을 감시하지 않는다"는 뜻이다. 따라서 실패 추적롤백 경로를 먼저 설계해야 한다. 예를 들어:
- 변경된 그룹을 로그에 남기기
- 잘못된 항목은 안 되는 사전 검증
- 문제 발생 시 어떤 식으로 복구할 건지 미리 정해놓기

2. 외부 소스를 믿되 검증하기
wiki는 우리 통제 밖의 외부 소스다. 예상치 못한 형식 변경, 오타, 중복이 발생할 수 있다. 무조건 모든 데이터를 곧이곧대로 받아들이면 안 된다.

3. 점진적 전개
처음엔 "발견만 하고, 로그만 남기기" → "검증 거친 후 등록" → "완전 자동화" 이런 식으로 단계를 거쳤다. 팀이 충분히 신뢰할 때까지 사람의 개입 지점을 남겨두는 게 현명하다.

4. 모니터링과 알림
자동화해도 "오늘 뭐가 새로 등록됐나?" 정도는 팀이 알아야 한다. 슬랙 알림, 대시보드 로그 같은 시각화가 필수다.

다음 단계

이제 기본 구조는 잡았으니, 좀 더 정교해질 여지가 있다. 예를 들어:
- 그룹 간 의존성 자동 추론
- 비활성 그룹 감지 및 정리
- 정기 리포트로 팀에 변화 요약

하지만 지금도 충분히 일감을 덜었다. 다음은 비슷한 패턴의 다른 작업(예: 카테고리 발견, 메타데이터 동기화)에 이 구조를 재활용할 수 있을지 검토하는 단계겠다.


🛒 이 글과 어울리는 추천 상품

*위 링크는 쿠팡파트너스 활동의 일환이며, 일정액의 수수료를 제공받을 수 있습니다.

댓글 0

첫 댓글 달아줘.