콘텐츠로 건너뛰기

연결된 콘텐츠에 재시도 로직 사용하기

이 페이지에서는 연결된 콘텐츠 호출에 재시도를 추가하는 방법을 다룹니다.

재시도 작동 방식

연결된 콘텐츠는 API에서 데이터를 받아 오는 방식이므로, Braze가 호출하는 동안 API를 일시적으로 사용할 수 없는 경우가 있습니다. 이 경우 Braze는 재시도 로직을 지원하며, 지수 백오프를 사용해 요청을 다시 시도합니다.

캔버스 단계의 재시도 동작

Canvas의 연결된 콘텐츠 호출은 호출에 :retry가 포함된 경우에만 재시도합니다. 동작은 단계 유형에 따라 다릅니다.

  • 메시지 단계: :retry가 포함된 연결된 콘텐츠는 계속 메시징 파이프라인을 사용합니다. Braze가 호출을 최대 5번까지 재시도하는 동안 수신자는 전송 대기줄에서 지연됩니다. 모든 재시도가 실패하면 메시지가 중단되고 사용자는 다음 단계로 진행합니다. 자세한 내용은 API 호출이 실패하고 재시도가 활성화된 경우를 참조하세요.
  • 컨텍스트 단계 및 사용자 업데이트 단계: Braze는 단계 수준에서 연결된 콘텐츠 호출을 최대 5번까지 재시도합니다. 모든 재시도가 실패하면 사용자는 Canvas에서 퇴장합니다.

컨텍스트 단계와 사용자 업데이트 단계의 경우, 프로모션 코드 가져오기 실패나 예기치 않은 단계 오류와 같은 일부 재시도 가능한 단계 오류는 Braze가 사용자를 Canvas에서 퇴장시키기 전에 지수 백오프를 사용한 추가 단계 수준 재시도(약 13번)를 트리거할 수 있습니다.

자세한 내용은 재시도 동작을 참조하세요.

재시도 로직 사용

재시도 로직을 사용하려면 다음 코드 스니펫처럼 연결된 콘텐츠 호출에 :retry 태그를 추가합니다.

{% connected_content https://yourwebsite.com/api/endpoint :retry %}
{% connected_content https://www.braze.com :save my_content :basic_auth auth_name :retry %}

연결된 콘텐츠 호출에 :retry 태그를 포함하면 Braze는 호출을 최대 다섯 번까지 재시도합니다.

미리보기 동작

재시도 로직은 실시간 발송(테스트 발송 포함)에만 적용되며, 메시지 미리보기나 사용자 경로 미리보기에는 적용되지 않습니다. 미리보기 중에 :retry가 포함된 연결된 콘텐츠 호출이 실패하면 Braze는 호출을 재시도하지 않습니다. 대신 다음과 같이 표시됩니다.

  • 메시지 미리보기 중에는 콘텐츠가 렌더링되지 않고 “This message would not have been shown because retry functionality was triggered”라는 문구가 표시될 수 있습니다.
  • 사용자 경로를 미리 볼 때는 메시지 단계에 “Message aborted due to connected content retry failure”라는 문구가 표시될 수 있습니다.

이는 예상된 동작이며 Braze 내 문제를 의미하지 않습니다.

재시도 성과

재시도가 성공한 경우

재시도한 호출이 성공하면 메시지가 전송되며, 해당 메시지에 대해서는 더 이상 재시도하지 않습니다.

API 호출이 실패하고 재시도가 활성화된 경우

API 호출이 실패하고 재시도가 활성화되어 있으면, Braze는 재전송할 때마다 설정한 사용량 제한을 준수하면서 호출을 재시도합니다. Braze는 실패한 메시지를 대기줄 맨 뒤로 옮기고, 필요한 경우 메시지 전송에 걸리는 총 시간에 추가 시간(분)을 더합니다.

연결된 콘텐츠 호출에서 오류가 다섯 번을 초과해 발생하면, 메시지 중단 태그가 트리거될 때와 마찬가지로 메시지가 중단됩니다.

중단 및 재시도 로직이 포함된 연결된 콘텐츠 호출

연결된 콘텐츠 호출에서 재시도 로직과 동일한 조건에 대해 중단 로직을 사용하는 경우, 중단 로직이 우선 적용됩니다. 이로 인해 재시도가 시도되지 않습니다. 재시도 로직은 상태 코드가 실패일 때 호출을 중단하기 전에 이미 호출을 다시 전송합니다. 두 로직 모두 동일한 상태 코드 동작을 대상으로 하므로, 중단 로직을 제거해도 모든 재시도가 실패하면 호출은 여전히 중단됩니다.

New Stuff!