Cách tốt nhất trong nút để xử lý các yêu cầu không được giải quyết sắp ra khỏi mã nút lõi là gì? Tôi có một quá trình nền chạy và thu thập nội dung web và sẽ chạy trong một thời gian dài mà không có vấn đề, nhưng thường thì một ngoại lệ không mong muốn xảy ra và tôi dường như không thể xử lý nó một cách duyên dáng. Thủ phạm thông thường dường như là một số vấn đề mạng (mất kết nối), nơi mà các cuộc gọi http tôi đang thực hiện thất bại. Tất cả các chức năng mà tôi đã tạo theo mẫu FUNCTION_NAME (error, return_data), nhưng trong các tình huống xảy ra lỗi, tôi không thấy bất kỳ chức năng nào tôi đã tạo trong ngăn xếp cuộc gọi được in ra, thay vào đó hiển thị một số mô đun nút lõi. Tôi không thực sự lo lắng về những lỗi không thường xuyên và nguyên nhân gốc rễ của họ, mục đích của bài đăng này chỉ là cố gắng tìm một cách duyên dáng để xử lý các trường hợp ngoại lệ này.Xử lý ngoại lệ nút
Tôi đã thử đặt thử/nắm bắt ở cấp cao nhất của mã nơi mọi thứ đều chạy dưới nhưng dường như không có các ngoại lệ này. Thực hành tốt trong nút có sử dụng try/catch trong tất cả các hàm mức thấp hơn sử dụng bất kỳ mã lõi nào không? Hay có cách nào đó để nắm bắt toàn bộ tất cả các ngoại lệ chưa được giải quyết?
Cảm ơn
Chris
CẬP NHẬT ĐẾN ADD STACK
node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: connect Unknown system errno 10060
at errnoException (net.js:642:11)
at Object.afterConnect [as oncomplete] (net.js:633:18)
Bạn có thể sao chép ngăn xếp của một số ngăn xếp ngoại lệ không bắt buộc này không? – seppo0010
Tôi vừa thêm bản in ngăn xếp vào câu hỏi chính từ một trong các lỗi gần đây. Nó gây nhầm lẫn cho tôi vì nó không hiển thị bất kỳ mã nào của tôi bên trong nó. –
Bạn đang sử dụng phiên bản nút nào? Tôi hỏi vì số dòng không khớp với bản sao cục bộ của tôi. – seppo0010