Zastanawiam się jak powinna wyglądać prawidłowa implementacja wyjątków przy strukturze mikroserwisów tzn.
Załóżmy , że mamy 3 serwisy :
API - serwis wejściowy bez większej logiki biznesowej. Posiada restController, który zwraca ResponseEntity i jedyną rzeczą jaką robi to strzela do LogicSerwisu
LogicSerwis - serwis w którym jest cała logika biznesowa dopełnienie obiektu, pobieranie z bazy danych, wrzucanie na kolejkę itp. I żeby zwrócić response do API ten serwis uderza do kolejnego serwisu FillObject.
FillObject - serwis, który dostaje RQ z LogicSerwis uzupełnia obiekt dodatkowymi danymi i odsyła z powrotem.
Czy każdy z tych serwisów powinien mieć swoją własną fabrykę wyjątków ? czy wszystko powinno być w LogicSerwis bo to jest centrum wszystkiego? Jak powinny być zaimplementowane wyjątki tak żeby na samym końcu API zwróciło błąd, że np FillObject nie mógł napełnić obiektu.