ejabberd tip: simple health check

An ejabberd health check mechanism might be useful in your deployments, but using the HTTP file server might be overkill…

ProcessOne
· 1 min read
Send by email

Some people want to do regular health checks on ejabberd, which is always a good idea. Doing a health check over XMPP might not be the solution, here is at least two reasons:

  • with a pure ad-hoc solution like a cron script, you might need an XMPP library you might not want to install on your servers
  • monitoring systems might not talk XMPP at all…

So people first think of the internal ejabberd HTTP file server, which then they have to configure through a specific listener and the right module… possibly with logs, they would have to manage (rotate, parse, clean, etc.).

Sometimes people just don’t think there is already an HTTP listener on their internal BOSH Connection Manager. You would argue that BOSH uses the HTTP POST method. But the ejabberd BOSH Connection Manager replies to simple GET:

wget https://myserver.net/http-bind 

And ejabberd will answer:

ejabberd mod_http_bind v1.2

An implementation of XMPP over BOSH (XEP-0206)

This web page is only informative. To use HTTP-Bind you need a Jabber/XMPP client that supports it.