Как обрабатывать Неустранимая ошибка: ошибка cURL 7: Не удалось подключиться к порту xxxx 443

У меня есть сценарий, который подключается к стороннему API. Он работает и должен работать на непрерывном цикле 24/7 (я использую спать в конце перед перезапуском цикла).

Проблема в том, что иногда сторонний API получает ddosed или соединение просто падает с этой ошибкой:

Неустранимая ошибка: исключить исключение «GuzzleHttp \ Ring \ Exception \ ConnectException» с сообщением «ошибка cURL 7: не удалось подключиться к порту xxx.com 443

Есть ли способ «сломать» эту фатальную ошибку, чтобы убедиться, что код перезагружен и продолжит работу, если действие может быть выполнено, или я должен вручную перезагружаться каждый раз, когда получаю эту ошибку?

Из комментария Майкла

похоже, вы можете просто поймать исключение GuzzleHttp \ Ring \ Exception \ ConnectException

как это:

 use GuzzleHttp\Ring\Exception\ConnectException; try { // the code which throws the error } catch( ConnectException $ex ) { switch ( $ex->getMessage() ) { case '7': // to be verified // handle your exception in the way you want, // maybe with a graceful fallback break; } } 

похоже, ConnectException guzzle расширяет некоторые классы и, в конечном счете, расширяет исключение php, поэтому вы можете безопасно использовать метод getCode (), позволяющий поймать идентификатор, на котором вы можете реагировать в соответствии с вашими потребностями.