Log4net dan Blok Aplikasi Logging adalah pilihan yang valid. Saya pikir ELMAH sebagian besar berfokus pada error logging, jadi itu mungkin bukan (satu-satunya) yang Anda inginkan.
Di tempat kerja, saya menggunakan log4net pada beberapa proyek. Ini stabil, berkinerja, dan dapat diperluas, dan kami tidak pernah memiliki masalah dengannya.
Saya mungkin akan melakukan logging dengan log4net dan log exception dengan ELMAH juga. Itu dapat mencatat pengecualian yang tidak tertangani secara manual, dan pengecualian apa pun yang Anda tangkap dan tangani dalam aplikasi Anda dapat dicatat dengan satu panggilan ke ELMAH. Ini mungkin tampak seperti pencatatan ganda (dan memang :-)). Tetapi sangat berharga untuk memiliki log ELMAH ketika sesuatu yang tidak terduga gagal dalam aplikasi Anda.
Saya telah mendengar hal-hal baik tentang proyek NLog , tapi belum pakai sendiri. Tampaknya sedikit lebih rumit daripada log4net, tetapi memiliki manfaat tambahan karena dapat menambahkan informasi kontekstual ke log pesan secara otomatis (sedikit seperti ELMAH).