Look at where at error occurred before classifying as unimportant

This is part of the Semicolon&Sons Code Diary - consisting of lessons learned on the job. You're in the exceptions category.

Last Updated: 2024-11-21

In rollbar, I saw the exception.

OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=error: certificate verify failed (unable to get local issuer certificate)

Seeing none of my own code and knowing my main site HTTPS was working, I thought this was nothing important so I dismissed it.

The next day I had 15 angry emails from customers. Why? Because it occured on the checkout page. The issue was that the certificate for PayPal, packaged in their library, had expired.

Lesson

Don't dismiss an exception because the error seems unimportant. First look where it occured in your flow.

Another solution here, besides investigating where it happened, is to wrap this critical code in a custom, more communicative exception, like PaymentError.