Saya memiliki program yang membuat ratusan permintaan CURL harian, permintaan SMTP, dan permintaan lainnya. Kurang dari 1 persen dari waktu, permintaan CURL atau SMTP akan gagal. Terbaik yang bisa saya katakan, penyebab masalahnya adalah eksternal dan tidak bisa diperbaiki menjadi 100% andal. Program saya selalu dapat pulih darinya dan tidak ada interaksi manusia yang diperlukan darinya. Saya memiliki sistem untuk mengirim peringatan email ketika ada sesuatu yang gagal. Sebagian besar dari apa yang saya terima adalah kegagalan CURL dan SMTP yang tidak berbahaya ini.
Haruskah saya tidak mengirim peringatan email untuk kegagalan umum dari program yang pulih?
design
error-handling
Angsa
sumber
sumber
Jawaban:
Tergantung pada aplikasi Anda.
E-Mails mungkin berguna untuk statistik tetapi jika tidak, saya akan menghindari spam ini.
Apa yang saya lakukan dalam kasus serupa: Kirim ringkasan sekali sehari untuk diinformasikan seberapa baik kinerja program Anda (dan itu masih berjalan).
Saya hanya akan mengirim email, jika tingkat kesalahan melebihi batas yang ditetapkan yang menunjukkan bahwa diperlukan intervensi manusia.
sumber
Dalam situasi ini saya akan segera berhenti mengirim email.
Email kesalahan harus bertindak sebagai sinyal bahwa ada sesuatu yang salah dan tindakan perlu diambil. Karena Anda mendapatkan begitu banyak dari mereka, mereka bertindak sebagai noise statis dan Anda akan dengan mudah kehilangan email kesalahan yang sangat penting yang masuk karena alasan lain.
Namun, jika Anda mendapatkan 5 dari email ini setiap jam dan mendapatkan email seperti setiap menit akan menjadi sesuatu yang tidak normal, Anda perlu membangun mekanisme yang mengirimkan sesuatu ketika kesalahan / jam melewati ambang tertentu. Karena satu email mungkin tidak berarti banyak lagi, jumlah mereka dalam periode tertentu (menit / jam / hari) dapat berarti sesuatu yang lebih besar.
sumber
Email bukan alat yang baik untuk melacak kesalahan. Lihatlah ke produk-produk seperti Relik Baru atau Wawasan Aplikasi untuk mencatat semua kesalahan Anda (dan informasi lainnya) sehingga Anda kemudian dapat melaporkannya atau mengirim peringatan email ketika kondisi tertentu dipenuhi (misalnya ketika itu berubah dari 1% gagal menjadi> 10% gagal ).
Dengan email terpisah untuk setiap kesalahan, Anda akhirnya mengabaikan email itu, dan bahkan mungkin tidak melihat lompatan dari 1% menjadi 10%. Lebih buruk lagi, penyedia email Anda mungkin melihat sejumlah besar email yang hampir identik dari satu alamat dan menandainya sebagai spam.
sumber
Dalam situasi semacam ini cobalah membuat algoritma untuk membuat log peristiwa kesalahan dan mengirim sekali dalam sehari. Seperti yang dikatakan pieter, berikan peringatan jika melebihi jumlah kesalahan. Itu akan menjadi cara sistematis pengelolaan aplikasi dan pemecahan masalah.
sumber