[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
| Re: [mosquitto-dev] Thinking about health checks for a MQTT client running in a container | 
Hi Steve,
I have done similar client health checks before using the LWT (Last Will 
& Testament) message. When a client starts up it first starts it 
subscribes to an channel specific "client health" channel and registers 
an LWT message. Periodically the client will publish messages to this 
channel with various health information. If the client unexpected 
disconnects than the LWT message will be pushed to the channel by the 
server. Other interested parties can subscribe to the "client health" 
channel at any point to query the client state. In this case you also 
need to set the lastWillRetain message so the last known state of the 
client is available to other systems.
Regards,
Denis
On 20/10/2023 3:44 pm, Steve Prior via mosquitto-dev wrote:
I have a bunch of services running in containers which are "pure" MQTT 
clients - the service subscribes to MQTT topics and when it receives a 
message it performs some action.  The service doesn't have an http 
service or a tcp port it's listening on - all its connections are 
outbound.
I'm trying to think about what would make sense as a health check for 
such an application.   I'm not very excited about adding a http 
listener just as a health check endpoint and nothing else. Sending a 
MQTT message to a special health check topic that the service replies 
to may work but I'm not sure there aren't problems there too.
So I'm curious what (if anything) others are doing.  Another thought I 
had is could it be possible to query the mosquitto server about the 
health of the client service's connection to it - the health check is 
does the mosquitto server have a current ping for the MQTT client?  
It's just a little weird to ask a third party (the mosquitto server) 
about the health of one of it's clients, but maybe not wrong.  I'm 
sure that it gets a little tricky to have that kind of health check 
know the client id which would be needed to query in the mosquitto 
server unless the mqtt client service uses a hardcoded client id 
(which wouldn't be desireable).
Thoughts?
Steve
_______________________________________________
mosquitto-dev mailing list
mosquitto-dev@xxxxxxxxxxx
To unsubscribe from this list, visit 
https://www.eclipse.org/mailman/listinfo/mosquitto-dev