Hello

Microsoft Teams 웹훅 메시지 유실 본문

azure

Microsoft Teams 웹훅 메시지 유실

nari0_0 2024. 11. 20. 11:36
728x90

일별 처리 결과를 Microsoft Teams 메시지로 전송하여 알림을 하고 있습니다. 최근에 새로운 타입이 추가되어, 동일한 시간에 웹훅을 호출하는 작업이 추가되었습니다. 그러나 동시에 여러 번의 웹훅 호출로 인해 일부 메시지가 유실되어 알림을 확인할 수 없는 문제가 발생했습니다. 문제의 원인과 해결 방법에 대해 정리하려고합니다.

 

1. 웹훅 메시지 유실 문제의 원인

  • API 호출 제한: Microsoft Teams API는 초당 호출 수에 제한이 있습니다. 이 제한을 초과하면 일부 요청이 실패할 수 있습니다.
  • 서버 처리 능력: 서버가 동시에 많은 요청을 처리하지 못할 경우, 일부 요청이 유실될 수 있습니다.
  • 네트워크 문제: 네트워크 지연이나 불안정으로 인해 요청이 제대로 전달되지 않을 수 있습니다.

2. 문제 해결 방법

  • 호출 간격 조정: 각 호출 사이에 지연 시간을 두어 서버가 요청을 처리할 시간을 줍니다.
  • 재시도 로직 구현: 실패한 요청을 자동으로 재시도하는 로직을 추가합니다.
  • 큐 시스템 사용: 메시지를 큐에 넣고 순차적으로 처리하여 동시에 많은 요청이 발생하지 않도록 합니다

결론적으로, 동시에 다량의 호출이 발생하지 않도록 해야 합니다. 저는 응답 코드가 200으로 반환되어 에러는 발생하지 않았지만, 메시지가 유실되는 문제가 있었습니다. 이를 해결하기 위해 호출 간격을 조정하여 웹훅을 호출하도록 변경했습니다.

3. Microsoft Teams Workflows로 전환

Microsoft Teams는 2025년 말에 웹훅 지원을 종료할 예정입니다. 따라서, Workflows 앱을 사용하여 더 안정적이고 유연한 자동화 솔루션을 구현이 필요합니다. 추후 webhook -> workflows로 변경한 내용을 정리하려고합니다.

 

끝-

 

참고 : 실행 가능한 메시지 만들기 및 보내기 - Teams | 마이크로소프트 런

웹후크 및 커넥터 - Teams | 마이크로소프트 런

728x90