isekaidol-stream-noti icon indicating copy to clipboard operation
isekaidol-stream-noti copied to clipboard

메시지 전송 실패했다고 하지만 실제로 전송은 되는 현상

Open NeuroWhAI opened this issue 2 years ago • 6 comments

좀 어이가 없는데 send 함수에서 firebase internal error가 가끔 떠서 retry 로직 넣어놨더니 정작 메시지는 전부 전송되어 알림이 중복되는 현상 발생함. 그렇다고 retry 없에고 에러 무시하자니 진짜로 메시지 전송 안 되는 경우 있을까봐 더 지켜봐야 함. 알림 없는 것보단 여러번 오는 게 차라리 나을테니... 정 그러면 retry 횟수를 좀 줄이자.

NeuroWhAI avatar Apr 30 '22 08:04 NeuroWhAI

Firebase에 문의해둠.

NeuroWhAI avatar May 01 '22 02:05 NeuroWhAI

약간 매크로스런 답변이 오긴 했는데 아래와 같은 말이 있었음.

Honor the Retry-After header if it is included in the response from the FCM Connection Server.

일정 시간 후에 재시도 해달라는 응답이 오면 이걸 지켜달라는 말 같은데 내가 쓰는 Admin API엔 이런 옵션이 없다. 어떻게 적용할 수 있는지 다시 문의함.

근데 내부 오류가 발생했음에도 메시지가 실제로 송신되어 수신까지 되는 상황 해결에 도움은 안 될 것 같다.

NeuroWhAI avatar May 01 '22 14:05 NeuroWhAI

여전히 그럼. send API 내에 자체 재시도 로직이 있긴 함. 자체 재시도 로직은 빼버리고 에러 무시할까?

NeuroWhAI avatar Jun 30 '22 12:06 NeuroWhAI

유효하지 않은 토큰이 있어서 그럴까? dry run 같은 기능으로 주기적으로 확인해서 유효하지 않으면 구독 해지 시키고 DB에서 삭제해볼까.

NeuroWhAI avatar Jul 03 '22 13:07 NeuroWhAI

유효하지 않은 토큰 삭제 기능 추가했음. 8984f1bdba5dd7fac85facfd8e7d1ba7894766ff

NeuroWhAI avatar Jul 04 '22 11:07 NeuroWhAI

유효하지 않은 토큰 삭제해도 여전함.

NeuroWhAI avatar Jul 06 '22 09:07 NeuroWhAI