Di beberapa aplikasi perusahaan kami, kami menggunakan logger khusus. Ini cukup kuat, meskipun kami dapat menggantinya dengan sesuatu seperti NLog di masa depan. Salah satu tugas logger adalah mencatat pengecualian yang ditemukan dalam aplikasi.
Satu kekhawatiran yang selalu saya miliki adalah bahwa penanganan pengecualian di dalam logger memungkinkan kegagalan diam. Yaitu, jika log tidak ditulis untuk pengecualian yang diberikan (karena kesalahan dalam logger), bagaimana saya harus menanganinya dan (entah bagaimana) mencatat pengecualian di logger itu sendiri ?
Katakanlah fungsi WriteLog melempar pengecualian. Haruskah saya mencoba memanggil fungsi beberapa kali atau sampai pengecualian tidak dibuang? Haruskah saya mencoba menulis pengecualian yang dilemparkan dengan logger (yang kemungkinan besar akan menghasilkan pengecualian sepanjang jalan ...)? Saya cukup beruntung tidak mengalami situasi ini kecuali ketika kami pertama kali mengimplementasikan logger kustom. Di sisi lain, saya tidak memiliki cara untuk mengetahui saat ini apakah logger telah gagal untuk log pengecualian aplikasi (karena pengecualian sendiri).
Saya telah mencoba mencari secara online dan di beberapa situs SE, tetapi sejauh ini tidak membuahkan hasil karena semua tulisan berurusan dengan kesalahan dalam logger (tetapi tidak ada pengecualian potensial dan cara mencatatnya) atau dengan pengecualian di luar logger.
stderr
media keluaran Anda yang gagal atau "yang mustahil" terjadi.