Skip to content
This repository has been archived by the owner on Oct 2, 2022. It is now read-only.

ContainerSSH/health

ContainerSSH - Launch Containers on Demand

ContainerSSH Health Check Library

⚠⚠⚠ Deprecated: ⚠⚠⚠
This repository is deprecated in favor of libcontainerssh for ContainerSSH 0.5.

This is a health check service returning "ok" if all required ContainerSSH services are running.

Using this service

This library uses ContainerSSH' own HTTP implementation to create an HTTP server that returns "ok" when all services are up.

You can instantiate this service as described in the service library as follows:

svc, err := health.New(
    health.Config{
        Enable: true
        ServerConfiguration: http.ServerConfiguration{
            Listen: "0.0.0.0:23074",
        },
    },
    logger)

if err != nil {
    // ...
}

You can change the ok/not ok status by calling srv.ChangeStatus(bool), like so:

srv.ChangeStatus(true)

Health check client

This library also provides a built-in client for running health checks. This can be used as follows:

client, err := health.NewClient(
    health.Config{
        Enable: true
        Client: http.ClientConfiguration{
            URL: "http://0.0.0.0:23074",
        },
    },
    logger)
)
if client.Run() {
    // Success
} else {
    // Failed
}