Skip to content

module for ejabberd that creates an endpoints for healthcheck

Notifications You must be signed in to change notification settings

segpacto/ejabberd_healthcheck

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 

Repository files navigation

#mod_health

Monitor Ejabberd and any applications running on it. Based on https://github.com/nycholas/ which is based on https://www.ejabberd.im/mod_monitor_web 14.02+

Objective

The target is to include the status code on the response of the healthcheck on the response status code.

  • 204 response for all checked and properly running.
  • 503 response when any of the services defined on the module are failling.

Ejabberd Config

First make sure the module is added in ejabberd.yml on the server port

  -
    port: 5281
    module: ejabberd_http
    request_handlers:
      "/healthcheck": mod_health
    web_admin: false
    http_poll: false
    http_bind: false
    ## register: true
    captcha: true

This will create an endpoint for mod_health to listen to at localhost:5281/healthcheck

Adding additional applications to check

Define the application name as a constant at the top of the file:

-define(MYSQL, mysql).

then add subsecuently on function get_all_status another check variable for the new status added (like: EJABBERDStatus = lists:keymember(?EJABBERD, 1, application:which_applications()),), add this new obtained variable status to the list of results.

About

module for ejabberd that creates an endpoints for healthcheck

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages