Interface HealthCheckHandler

  • All Superinterfaces:
    Handler<RoutingContext>

    public interface HealthCheckHandler
    extends Handler<RoutingContext>
    A Vert.x Web handler on which you register health check procedure. It computes the outcome status (`UP` or `DOWN`) . When the handler process an HTTP request, it computes the global outcome and build a HTTP response as follows:

    • 204 - status is `UP` but no procedures installed (no payload)
    • 200 - status is `UP`, the payload contains the result of the installed procedures
    • 503 - status is `DOWN`, the payload contains the result of the installed procedures
    • 500 - status is `DOWN`, the payload contains the result of the installed procedures, one of the procedure has failed
    Author:
    Clement Escoffier
    • Method Detail

      • create

        static HealthCheckHandler create​(Vertx vertx,
                                         AuthenticationProvider provider)
        Creates an instance of the default implementation of the HealthCheckHandler. This function creates a new instance of HealthChecks.
        Parameters:
        vertx - the Vert.x instance, must not be null
        provider - the Authentication provider used to authenticate the HTTP request
        Returns:
        the created instance
      • create

        static HealthCheckHandler create​(Vertx vertx)
        Creates an instance of the default implementation of the HealthCheckHandler. This function creates a new instance of HealthChecks.
        Parameters:
        vertx - the Vert.x instance, must not be null
        Returns:
        the created instance
      • createWithHealthChecks

        static HealthCheckHandler createWithHealthChecks​(HealthChecks hc)
        Creates an instance of the default implementation of the HealthCheckHandler.
        Parameters:
        hc - the health checks object to use
        Returns:
        the created instance
      • register

        HealthCheckHandler register​(String name,
                                    Handler<Promise<Status>> procedure)
        Registers a health check procedure.

        The procedure is a Handler taking a Promise of Status as parameter. Procedures are asynchronous, and must complete or fail the given Promise. If the future object is failed, the procedure outcome is considered as `DOWN`. If the future is completed without any object, the procedure outcome is considered as `UP`. If the future is completed with a (not-null) Status, the procedure outcome is the received status.

        This method uses a 1s timeout. To configure the timeout use register(String, long, Handler).

        Parameters:
        name - the name of the procedure, must not be null or empty
        procedure - the procedure, must not be null
        Returns:
        the current HealthCheckHandler
      • register

        HealthCheckHandler register​(String name,
                                    long timeout,
                                    Handler<Promise<Status>> procedure)
        Registers a health check procedure.

        The procedure is a Handler taking a Promise of Status as parameter. Procedures are asynchronous, and must complete or fail the given Promise. If the future object is failed, the procedure outcome is considered as `DOWN`. If the future is completed without any object, the procedure outcome is considered as `UP`. If the future is completed with a (not-null) Status, the procedure outcome is the received status.

        Parameters:
        name - the name of the procedure, must not be null or empty
        timeout - the procedure timeout
        procedure - the procedure, must not be null
        Returns:
        the current HealthCheckHandler