Sentry-javascript: UnhandledRejection: Penolakan janji Non-Error ditangkap dengan nilai: Timeout

Dibuat pada 25 Mar 2020  ·  14Komentar  ·  Sumber: getsentry/sentry-javascript

Paket + Versi

@sentry/[email protected]

Keterangan

Kami menerima banyak pengecualian yang mengikuti tanda tangan yang sama. Mereka muncul di semua halaman, dan di segala macam tempat dengan pola yang tampaknya tidak terlihat. Itu terjadi di semua browser dengan frekuensi yang kira-kira sama dengan penggunaan.

Tidak TertanganiPenolakan
Penolakan janji Non-Error ditangkap dengan nilai: Timeout

Dalam semua kasus, Pengecualian tidak ada. Tidak ada jejak tumpukan atau informasi tambahan.

Saya cukup yakin ini berasal dari kode pihak ketiga, tetapi tanpa informasi lebih lanjut, saya tidak dapat menjelaskannya.

Saya membuka ini sebagai bug karena rasanya Sentry harus melaporkan informasi tambahan untuk membantu menentukan sumber kesalahan.

Ada masalah yang ada untuk ini yang telah ditutup tanpa resolusi apa pun: https://github.com/getsentry/sentry-javascript/issues/2210

Discussion

Komentar yang paling membantu

Masalahnya terletak persis di sana: https://www.gstatic.com/recaptcha/releases/P6KLRNy7h3K160ZmYNUOAce7/recaptcha__en.js

c.reject("Timeout ("+y+")")

atau

H((vn.delete(P),"Timeout")

tl;dr - mereka menolak dengan nilai primitif, tetapi harus dengan new Error("timeout") .

Dalam hal ini, solusi terbaik Anda sampai mereka memperbaikinya adalah dengan mengabaikan kesalahan semacam ini.

Sentry.init({
  beforeSend(event, hint) {
    if (hint.originalException === "Timeout") return null;
    return event;
  }
});

Semua 14 komentar

Kami memiliki banyak masalah seperti ini dan menyematkannya ke kode recaptcha google. Ini sangat terkelupas, jadi kami menyingkirkan recaptcha dan kesalahan hilang

@JustFly1984 Terima kasih atas konfirmasinya. Recaptcha adalah tersangka utama saya. Sayangnya kami tidak dapat menghapusnya. Sepertinya itu mungkin tidak dilepas dengan benar. Masih terasa seperti kita harus bisa mendapatkan lebih banyak info dari pengecualian.

Saya telah gagal masalah di pelacak bug google, tetapi mereka tidak memberikan lembar

@JustFly1984 Ya. Itu Google untuk Anda. Tidak ada lembaran yang diberikan.

Masalahnya terletak persis di sana: https://www.gstatic.com/recaptcha/releases/P6KLRNy7h3K160ZmYNUOAce7/recaptcha__en.js

c.reject("Timeout ("+y+")")

atau

H((vn.delete(P),"Timeout")

tl;dr - mereka menolak dengan nilai primitif, tetapi harus dengan new Error("timeout") .

Dalam hal ini, solusi terbaik Anda sampai mereka memperbaikinya adalah dengan mengabaikan kesalahan semacam ini.

Sentry.init({
  beforeSend(event, hint) {
    if (hint.originalException === "Timeout") return null;
    return event;
  }
});

@kamilogorek Terima kasih. Tertarik mengapa Anda memfilter ini di beforeSend di klien daripada hanya mengabaikan di dasbor?

Karena kesalahan ini terlalu umum. Terlalu mudah untuk mendapatkan kecocokan positif palsu.
Juga, saya belum pernah melihat kesalahan Timeout sebelumnya :D

@kamilogorek Ya. Saya kira kekhawatiran saya adalah bahwa memfilternya pada klien mungkin akan menutupi kesalahan penting. Setidaknya jika Anda mengabaikannya di dasbor Anda masih memiliki data yang tersimpan.

@Undistraction peristiwa yang difilter dijatuhkan untuk pengguna akhir. Jika tidak, mereka akan menghitung kuota.

@kamilogorek Ah. Saya tidak mempertimbangkan kuota. Terima kasih telah mengklarifikasi.

Adakah yang tahu bagaimana batas waktu ini memengaruhi pengguna akhir?

Menutup masalah, karena sepertinya masalah asli telah diselesaikan sebagian atau ada solusi yang berfungsi. Saya lebih suka seseorang membuat masalah baru dengan deskripsi baru jika itu masih menjadi masalah.
Tolong jangan ragu untuk ping saya jika masih relevan, dan saya akan dengan senang hati membuka kembali dan mengerjakannya.
Bersulang!

@kamilogorek jadi masalah batas waktu ini tidak terpengaruh oleh pengguna akhir dan itu adalah solusi yang baik untuk mengabaikan yang ini?

Itu tergantung pada bagaimana basis kode Anda diikat ke ReCaptcha SDK, tetapi saya akan mengatakan bahwa secara umum, dalam banyak kasus ya, itu tidak akan memengaruhi hasil akhir.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat