Categorygithub.com/containerssh/health
repositorypackage
1.1.0
Repository: https://github.com/containerssh/health.git
Documentation: pkg.go.dev

# README

ContainerSSH - Launch Containers on Demand

ContainerSSH Health Check Library

Go Report Card

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

⚠⚠⚠ Warning: This is a developer documentation. ⚠⚠⚠
The user documentation for ContainerSSH is located at containerssh.io.

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
}