2013-12-11 17 views

Odpowiedz

7
  1. a) nie deserializowania lub b) konsument zgłasza przetwarzanie różnicą, że wiadomość pięciokrotnie
  2. Niezupełnie ... Jeśli zerknąć na wiadomości w kolejce nagłówki ładunku mogą zawierać notatkę, ale nie sądzę, żebyśmy to zrobili. Jeśli włączasz logowanie (NLog, log4net, itp.), Powinieneś widzieć wyjątki w swoim logu. W tym momencie musisz skorelować identyfikatory wiadomości, aby dokładnie określić, dlaczego.
  3. Nie ma żadnego wbudowanego w MassTransit. Głównie dlatego, że nie wydaje się, aby to był świetny, ogólny sposób postępowania. Każdy chce tego procesu. Dru utworzył aplikację BusDriver (w numerze main MT source repo), która może być użyta do przeniesienia wiadomości z powrotem do danej giełdy. To domyślne zachowanie istnieje, więc przynajmniej wiesz, że coś się nie udało, jeśli nie umieścisz infrastruktury, aby sobie z tym poradzić.
+1

Witaj Travis, dziękuję za odpowiedź. W moim przypadku na 100 wiadomości 10 zostanie przeniesionych do kolejki błędów. Teraz nie rozumiem, dlaczego tylko kilka wiadomości zakończy się niepowodzeniem z powodu dekompresji i dlaczego konsument wyrzucił wyjątek. Myślę, że musimy włączyć rejestrowanie, aby uzyskać lepsze zrozumienie. – SharpCoder

+1

Możliwe, że wystąpił błąd w deserializacji - ale dzieje się tak zwykle tylko wtedy, gdy nie używasz MT do wprowadzania danych do giełdy. We wszystkich możliwych okapach konsument wyrzuca wyjątek. Powodzenia, logowanie jest prawdopodobnie pierwszym krokiem do zrozumienia, co się dzieje. Dokumenty powinny pomóc: http://masstransit.readthedocs.org/en/master/overview/logging.html – Travis

+0

Dziękuję za wyjaśnienie tego. Ale link, który udostępniłeś jest dla MassTransit, a nie dla logowania RabbitMQ. Być może jestem w błędzie, ale myślę, że powinniśmy zalogować błędy RabbitMQ – SharpCoder

1

Aby dodać odpowiedź Travisa Podczas mojego rozwoju znalazłem jakieś inne powody do wiadomości zamiar na kolejce o błędzie:

  1. Opublikowana typ wiadomości ma konsumenta
  2. sagi i konsumentów oczekują tego samego konkretnego typu wiadomości. Nawet jeśli spróbujesz i rozróżnisz przy użyciu "Akceptuj" i "Wybrane", zarówno SAGA, jak i Konsument nie powinni być zaprogramowani do odbierania tego samego typu wiadomości.
+0

Nie mając konsumenta był również przesyłanie wiadomości do kolejki błędów dla mnie. – Chrysalis

Powiązane problemy