What are Unsubscribe application and Subscribe application events in Console Live data?

I noticed the following events from yesterday in Application Live data in the Console:

subscribe unsubscribe

Any clue what causes these events and what they mean?

I see these in the console when an application subscribes to the MQTT stream.

You can try this yourself with mosquitto, run from the command line (for example)

mosquitto_sub -h eu1.cloud.thethings.network -u your-application-name -P NNSXS.your-api-key -t "v3/#" -v

and watch for “Subscribe” messages console when connecting to MQTT and “Unsubscribe” when disconnecting.

Hmm, I see a lot of them now, even when not actively connecting or disconnecting to the MQTT stream, not sure what is going on. I think this wasn’t the case before.

Thanks.

My regular MQTT traffic is communicated via bridging which is always active and should not be the cause of those events.

But now I can relate the events. I was doing some MQTT tests with mosquitto_sub at those moments. I didn’t notice any such events before because when doing occasional MQTT tests I’m usually not watching the TTN console.

I was actually surprised to see these events in the console because timestamped from a day before (still visible in the TTN console after the computer had been shutdown for hours and rebooted).

The team is aware of a higher than usual number of unsubscribe/re-subscribe loops and they’re working on it.

This is because in The Things Stack v3.15.2 we increased server-side event storage retention. When the Console opens an events stream, it also requests the last X events, so that you have some context of what happened before.

2 Likes

These events are shown when an client subscribes to traffic. Clients in this context means both mqtt, or grpc (when using the CLI).

We have recently introduced a hard limit of concurrent connections, and this may cause some misbehaving MQTT clients to reconnect relentlessly. I’d recommend checking if you’re not leaking clients by any chance (that is, some client remains in the background and attempts to reconnect).

We will add a special event for such drops, in order to clarify why/when this occurs.

1 Like