OpenWeatherMap binding goes offline, stays offline (until openHAB restart)

  • Platform information:
    • Hardware: Raspberry Pi
    • OS: Raspbian
    • openHAB version: 2.5

I’m using the OpenWeatherMap binding, and since it occasionally does not update, I started monitoring the binding itself. Usually when the binding goes offline, it recovers after a few minutes, and comes online again. But one case yesterday left the binding in the OFFLINE and then the UNINITIALIZED state about half an hour later.

2020-05-09 02:17:37.591 [hingStatusInfoChangedEvent] - ‘openweathermap:weather-and-forecast:home’ changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): java.io.EOFException: HttpConnectionOverHTTP@343e81::DecryptedEndPoint@893f2{api.openweathermap.org/37.139.20.5:443<->/192.168.0.35:57680,OPEN,fill=-,flush=-,to=1200299/0}
2020-05-09 02:17:37.599 [hingStatusInfoChangedEvent] - ‘openweathermap:weather-api:home’ changed from ONLINE to OFFLINE
2020-05-09 02:37:47.603 [hingStatusInfoChangedEvent] - ‘openweathermap:weather-and-forecast:home’ changed from OFFLINE (COMMUNICATION_ERROR): java.io.EOFException: HttpConnectionOverHTTP@343e81::DecryptedEndPoint@893f2{api.openweathermap.org/37.139.20.5:443<->/192.168.0.35:57680,OPEN,fill=-,flush=-,to=1200299/0} to OFFLINE (COMMUNICATION_ERROR): Total timeout 10000 ms elapsed
2020-05-09 03:15:16.041 [hingStatusInfoChangedEvent] - ‘openweathermap:weather-and-forecast:home’ changed from OFFLINE (COMMUNICATION_ERROR): Total timeout 10000 ms elapsed to UNINITIALIZED
2020-05-09 03:15:16.058 [hingStatusInfoChangedEvent] - ‘openweathermap:weather-and-forecast:home’ changed from UNINITIALIZED to UNINITIALIZED (HANDLER_MISSING_ERROR)
2020-05-09 03:15:16.061 [hingStatusInfoChangedEvent] - ‘openweathermap:weather-api:home’ changed from OFFLINE to UNINITIALIZED
2020-05-09 03:15:16.079 [hingStatusInfoChangedEvent] - ‘openweathermap:weather-api:home’ changed from UNINITIALIZED to UNINITIALIZED (HANDLER_MISSING_ERROR)

Got the alarm over night, and restarted the openHAB installation the next morning, after which the binding recovered and started providing data again.

Is there a way to force the binding to reconnect, without restarting the entire installation?

You could try restarting just the binding instead of all of OH.

I could try that. Thanks.

How frequently do you poll (refresh) OWM? It sounds like the kind of effect you might see for oversubscribing.

No, it’s not polling too fast. I’ve had that for a test in the past, and the Binding reports that it can’t read data (dunno, don’t have the exact output anymore).
Here the binding goes offine, and can’t read any data at all.

Okay, I guess OWM responds with a “sod off” message rather than just ignoring.

As we should expect with a timeout, it’s the recovery (or not) that is of interest.
Log seems to show error at 02:17
Another at 02:37 - guess your refresh is 20 minutes?
Missing next is 02:57 … did that work or not happen? No evidence

The 03:15 event is different, Things UNINITIALIZED (HANDLER_MISSING_ERROR)
This feels like the binding reinitializing.
Confident there is not something else going on around this time?
There are various threads revolving around partial reinits in the night with OH2.5, check that you’re not focused on just one of several symptoms.

In this specific case the Binding did not came up at all until I restarted everything in the morning.