Event stream still connected, but no longer receiving events

When subscribed to the event stream api, we’re seeing periodic issues where the connection is still open, however it’s no longer receiving events. We use this endpoint at Losant to power the Particle integration.

By all indications, the underlying connection is still established, however a few customers have reported events have stopped being received. Our metrics indicate that events from other integrations are still flowing, so it appears to only affect that single connection.

Re-establishing the connection has so far caused events to start streaming again in all cases. We’ve put a fix in place to watch the stream and if no event has been received for 5 minutes, we automatically re-establish it. This isn’t the ideal fix since messages could still be lost.

Let me know if there’s any other information I can provide to help track this down.

1 Like

@Dave @zachary

1 Like

Thanks for the heads up, we’ll look into this. If you can share approximate times when you noticed events stop flowing that would help.

Thanks,
David

2 Likes

+1, more information would be super helpful — feel free to privately chat info to Dave and me like:

  • times of connection, data stop, and disconnection
  • IP addresses that were making the API requests
  • the email of the user making the API request and/or the relevant OAuth client ID.
2 Likes

Opened a private channel. Thanks for the help!

I think there is a general problem with the event API!

I always get 403 Forbidden when I try to establish a connection…

@dave @zachary @RWB

It looks like you are trying to POST with the GET URL as I pointed out in the other thread. That doesn’t work.

1 Like

Isn’t it POST?

@bko

In your image above it says:

POST https://api.particle.io/v1/devices/events/name=myevent?access_token=xxxxx

The POST parameters like name and access token need to be in the BODY of the request, not the URL.

1 Like

Uups :frowning:

But could you explain to me why this is working? It’s also POST

@bko

That is the integrations end point, not the devices/events.

3 Likes

You can post to /events, but it Publishes an event, instead of subscribing to an event.

2 Likes

I’ve been experiencing this for a couple of months with the C# wrapper to the event stream. I built in code to reestablish the stream when I don’t see any events for 60 seconds. That has been rock solid. I haven’t seen any particular pattern to these restarts, but it seems to happen once every couple of days. – Doug