인시던트 Slack 스타일의 스레드를 Teams 채널로 미러링
언제 쓸까: Sentry가 중요 이슈를 발급하면, 요약과 온콜 엔지니어 @-멘션을 #incidents Teams 채널에 게시하고 싶을 때.
사전 조건
- Graph 스코프 ChannelMessage.Send, Channel.ReadBasic.All, User.Read.All을 가진 Azure AD 앱 등록 — entra.microsoft.com → 앱 등록 → 새로 만들기, 관리자 동의 부여
- 대상 채널의 팀 ID와 채널 ID — 채널 우클릭 → 채널 링크 가져오기, ID는 URL에 포함되어 있습니다
흐름
-
경고 작성Sentry 이슈 [붙여넣기]에서 3줄 인시던트 요약을 작성하세요: 무엇이 깨졌는지, 사용자 영향, 의심되는 릴리스.✓ 복사됨→ 간결한 요약
-
멘션할 사람 확인온콜은 누구입니까? Teams 사용자 ID를 이메일 [이메일]에서 해결하세요. 멘션 객체를 반환하세요.✓ 복사됨→ 사용자 및 AAD ID 해결
-
채널에 게시채널 <id>에 요약을 게시하고 온콜 엔지니어를 @-멘션하세요. 또한 Sentry 이슈 링크와 함께 후속 답글을 게시하세요.✓ 복사됨→ messageId 반환; Teams에서 보임
결과: 모든 인시던트가 Teams의 구조화된 메시지로 올바른 사람과 함께 태그됩니다.
함정
- @-멘션은 AAD ID를 가진
mention객체가 필요합니다. 일반 텍스트@name은 알림을 받지 않습니다. — 먼저 Graph를 통해 사용자 AAD ID를 해결하고, 메시지 페이로드의 mentions 배열에 전달하세요. - 관리자 동의가 필요합니다. 동의를 부여하지 않으면 앱이 작동하지 않습니다. — AAD 관리자에게 앱의 스코프에 대한 관리자 동의를 요청하세요.