⛑ Automated developer-oriented status page
Go to file
2019-12-04 17:27:27 -05:00
.github/workflows Minor fix 2019-09-08 21:31:06 -04:00
config Add support for environment variables in configuration file 2019-12-04 17:27:27 -05:00
core Add support for environment variables in configuration file 2019-12-04 17:27:27 -05:00
example Add support for environment variables in configuration file 2019-12-04 17:27:27 -05:00
metric Implement Prometheus metrics 2019-11-16 16:52:11 -05:00
static Update page title to Status 2019-10-18 19:55:54 -04:00
vendor Implement Prometheus metrics 2019-11-16 16:52:11 -05:00
watchdog Allow configuration file to be passed as parameter 2019-12-04 16:44:35 -05:00
.dockerignore Add .idea to .dockerignore 2019-10-20 22:38:50 -04:00
.gitignore Remove .idea folder 2019-11-24 13:27:52 -05:00
config.yaml Add support for environment variables in configuration file 2019-12-04 17:27:27 -05:00
Dockerfile Add support for environment variables in configuration file 2019-12-04 17:27:27 -05:00
go.mod Go mod vendor 2019-11-16 16:52:11 -05:00
go.sum Go mod vendor 2019-11-16 16:52:11 -05:00
LICENSE.md Rename LICENSE to LICENSE.md 2019-09-03 22:35:56 -04:00
main.go Allow configuration file to be passed as parameter 2019-12-04 16:44:35 -05:00
README.md Add support for environment variables in configuration file 2019-12-04 17:27:27 -05:00

gatus

Docker pulls

A service health dashboard in Go that is meant to be used as a docker image with a custom configuration file.

Live example: https://status.twinnation.org/

Usage

metrics: true         # Whether to expose metrics at /metrics
services:
  - name: twinnation  # Name of your service, can be anything
    url: https://twinnation.org/actuator/health
    interval: 15s     # Duration to wait between every status check (opt. default: 10s)
    conditions:
      - "[STATUS] == 200"
  - name: github
    url: https://api.github.com/healthz
    conditions:
      - "[STATUS] == 200"

Note that you can also add environment variables in the your configuration file (i.e. $DOMAIN, ${DOMAIN})

Docker

Building the Docker image is done as following:

docker build . -t gatus

You can then run the container with the following command:

docker run -p 8080:8080 --name gatus gatus

Running the tests

go test ./... -mod vendor

Using in Production

See the example folder.