DevLog

엔지니어링 블로그를 한 곳에서 탐색하고, 최근 발행 흐름을 빠르게 파악할 수 있는 서비스 입니다.

Quick Links

  • Latest Feed
  • Engineering Directory

Support

  • 소개
  • 개인정보처리방침

Contribute

  • 원하는 블로그 추가 (준비 중)
  • Feedback

© 2026 DevLog Inc. All rights reserved.

본 사이트는 공개 RSS 피드를 통해 콘텐츠를 수집하며, 모든 콘텐츠의 저작권은 원저작자에게 있습니다.

Back to Feed
Read Original

Contents

Continue Reading

  • More from 여기어때
#DevOps

여기어때 이벤트 기반 통합 알림 플랫폼 구축기 Part 1. Why?

여기어때 이벤트 기반 통합 알림 플랫폼 구축기 Part 1. Why?
01

Summary

개인 웹훅이 94%? 여기어때가 '알림 지옥'에서 탈출해 '노티허브'를 만든 이유

파편화된 슬랙 알림을 조직의 자산으로 전환하고 개발 생산성을 극대화한 통합 알림 플랫폼 구축기

서비스 성장과 함께 쏟아지는 무의미한 알림 속에서 진짜 중요한 장애 신호를 찾아내기 위한 여기어때 DevOps 팀의 고민을 담았습니다. 개인 계정에 종속되어 관리가 불가능했던 기존 웹훅 시스템을 이벤트 기반 아키텍처로 재설계하여, 누구나 쉽고 명확하게 알림을 관리할 수 있는 전사적 기술 토대를 마련한 과정을 소개합니다.

  • 0194.48%에 달했던 개인 계정 종속 웹훅을 팀 기반 오너십으로 완벽 전환
  • 02이벤트 기반 아키텍처를 통한 비즈니스 로직과 알림 정책의 완전한 분리
  • 03ArgoCD 및 GitLab 알림의 커스텀 포맷팅으로 장애 대응 속도 비약적 향상
  • 04코드 수정 없이 UI 설정만으로 알림 채널과 라우팅을 즉시 변경하는 유연성 확보
  • 05수백 개의 '유령 채널'을 정리하고 좋은 알림의 표준 가이드와 템플릿 제공

+RECOMMENDATION

슬랙 알림이 너무 많아 중요도를 식별하기 어렵거나, 퇴사자가 발생할 때마다 알림이 끊겨 고생하는 DevOps 및 인프라 엔지니어에게 필독을 권장합니다. 특히 사내 도구의 사용자 경험(UX)을 개선하여 자발적인 기술 확산을 이끌어내고 싶은 분들에게 좋은 통찰을 제공합니다.

The Problem

서비스 규모가 커지면서 ArgoCD, GitLab 등의 기본 알림 포맷이 정해진 규칙 내에서만 작동하여 중요 알림이 묻히는 정보 파편화와 인지 부하가 발생했습니다. 특히 사내 슬랙 웹훅의 94%가 개인 계정에 종속되어 담당자 퇴사 시 알림이 중단되거나, 단순 설정 변경에도 코드 수정과 배포가 필요한 운영 비효율이 심각했습니다.

The Solution

개인 계정 종속성을 해결하기 위해 Google Workspace 계정 기반의 팀 단위 워크스페이스를 도입하고, 이벤트 기반의 통합 알림 플랫폼인 'Notification Hub(NotiHub)'를 구축했습니다. NotiHub는 기존 슬랙 웹훅 인터페이스를 유지하면서도 이벤트 라우팅 규칙과 템플릿 기능을 통해 비즈니스 로직과 알림 로직을 분리하고 UI 상에서 즉시 설정을 변경할 수 있도록 설계했습니다.

The Result

ArgoCD 배포 상태에 따라 채널을 분리하고 에러 원인을 메시지 본문에 포함함으로써, 개발팀이 장애 신호에 즉각 반응하기 시작하는 등 알림의 인지 효율이 대폭 향상되었습니다. 또한 유령 채널 638개를 파악하고 개인 계정 종속성을 제거하여 조직 차원의 운영 오너십을 확보했으며, 성공적인 시범 도입 후 부서 내 모든 프로젝트로 자발적으로 확산되었습니다.

Trade-off

본문에는 구체적인 기술적 한계가 명시되지 않았으나, 통합 플랫폼 도입으로 인해 모든 알림이 단일 시스템(NotiHub)에 의존하게 됨에 따라 해당 플랫폼 장애 시 전사 알림이 마비될 수 있는 단일 장애점(SPOF) 리스크가 예상됩니다. 또한 직접 웹훅을 쓰는 방식보다 플랫폼을 거치는 한 단계의 추가 레이어로 인한 미세한 지연 시간 발생 가능성이 존재합니다.

03

Key Concepts

Concept · 01

Event-Driven Architecture

시스템의 상태 변화를 '이벤트'로 생성하고 이를 처리하는 주체에게 비동기적으로 전달하는 설계 방식입니다.

  • 알림 소스 시스템이 메시지 포맷을 고민하지 않고 '이벤트 발생' 사실만 전달하도록 구현
  • NotiHub가 중간 레이어에서 이벤트를 수신하여 라우팅 및 가공을 전담
Concept · 02

Separation of Concerns (관심사의 분리)

소프트웨어를 서로 겹치지 않는 독립된 섹션으로 분리하여 유지보수성을 높이는 원칙입니다.

  • 애플리케이션 코드 내에 하드코딩된 알림 전송 로직을 외부 플랫폼으로 추출
  • 알림 수신인이나 메시지 문구 변경 시 소스 코드 배포 없이 플랫폼 설정만으로 대응
Concept · 03

Personal Account Dependency

시스템 설정이나 리소스가 공용 관리 계정이 아닌 특정 개인의 계정에 종속되어 발생하는 운영상의 리스크입니다.

  • 담당자 퇴사 시 계정 삭제와 함께 연결된 슬랙 웹훅이 예고 없이 중단되는 문제 해결
  • GWS 소속 정보를 활용한 팀 단위 워크스페이스 도입으로 운영 연속성 확보
Continue reading · same source

여기어때More from 여기어때

View all posts from 여기어때
  • AI 수석회의

    LLMAI AgentMCP
    18시간 전
  • JVM heap은 멀쩡한데 왜 메모리가 터질까? — Docker 환경 네이티브 메모리 삽질기 (Part 2)

    JVMDockerMemory Leak
    1주 전
  • JVM heap은 멀쩡한데 왜 메모리가 터질까? — Docker 환경 네이티브 메모리 삽질기 (Part 1)

    JVMDockerMemory Leak
    1주 전
  • Spring Data Redis: Repository vs RedisTemplate — 실전 성능 비교

    Spring Data RedisRedisTemplatePerformance Optimization
    1주 전
  • AI 시대의 브랜드 그래픽 시스템 구축기

    Generative AIVisual IdentityPrompt Engineering
    3주 전

Source

여기어때
여기어때
Engineering Blog

Published · April 3, 2026

Topics

Slack Webhook이벤트 기반알림 최적화운영 부채관심사의 분리ArgoCDGitLab