Наш код API недавно не смог отправить события в один из двух наших проектов Keen IO.
Мы используем идентичный код в каждом случае, кроме как с разными ключами API. Я даже попытался восстановить ключи без какой-либо удачи.
Ошибка, генерируемая Guzzle, которая вызывается из библиотек PHP keen-io / keen-io:
There was an error executing the addEvent command: cURL error 7: Failed to connect to api.keen.io port 443: Connection timed out
(увидеть http://curl.haxx.se/libcurl/c/libcurl-errors.html)
Это в конечном итоге стало проблемой сетевой маршрутизации. Отказавший сервер не мог также отправлять запросы другим API, и ОС Linux даже не могла выполнять обновления программного обеспечения, которые требуют подключения к внешним репозиториям пакетов. Оказывается, когда мы переехали в новое здание, каким-то образом один и тот же IP-адрес был назначен двум серверам, что как-то создавало проблемы с исходящими запросами. Как только это было решено, эта проблема ушла.
(Единственная другая причина, по которой запись будет неудачной для одного проекта Keen IO, но не для другой, — это если проект был заблокирован по какой-то причине. Но в этом случае API вернет ошибку 429 или другую более описательную, а не 443.)
Других решений пока нет …