Archive

Posts Tagged ‘Exception’

Reading NSB Message Content

March 10, 2010 2 comments

Jika terjadi exception pada handler dari NServiceBus maka proses tersebut akan di eksekusi sebanyak 5 kali secara default. Dan jika tidak juga berhasil ditangani maka message tersebut akan dipindahkan ke error queue. Kemudian exception yg ada tersebut akan di log oleh log4net.

Sehingga system administrator akan membaca log tersebut untuk mengetahui penanganan kesalahan dan setelah perbaikan mengembalikan message yg ada di error queue tersebut ke queue semula.

Penanganan tersebut dijelaskan pada Dokumentasi NServiceBus pada bagian http://www.nservicebus.com/Documentation.aspx
Read more…

Innermost Exception

March 10, 2010 Leave a comment

seringkali exception yg kita tangkap tidak benar2 bisa menjelaskan apa yg harus dilakukan untuk mengatasi masalah tersebut. Karena pesan error yg dikeluarkan tidak jelas.

Saya melihat implementasi NServiceBus dimana exception yg di log oleh log4net jelas sekali tujuannya. Exception yg diambil adalah pesan yg terdalam dari exception tersebut.

Code dari NSB tersebut saya jadikan sebagai extensions method untuk Exception.

public static class ExceptionExtensions
    {
        public static Exception GetInnermostException(this Exception e)
        {
            var result = e;
            while (result.InnerException != null)
                result = result.InnerException;

            return result;
        }
    }