mirror of
https://github.com/coredns/coredns.git
synced 2026-02-02 13:33:10 -05:00
mw/health: poll other middleware (#976)
This add the infrastructure to let other middleware report their health status back to the health middleware. A health.Healther interface is introduced and a middleware needs to implement that. A middleware that supports healthchecks is statically configured. Every second each supported middleware is queried and the global health state is updated. Actual tests have been disabled as no other middleware implements this at the moment.
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
# health
|
||||
|
||||
This module enables a simple health check endpoint.
|
||||
By default it will listen on port 8080.
|
||||
This module enables a simple health check endpoint. By default it will listen on port 8080.
|
||||
|
||||
## Syntax
|
||||
|
||||
@@ -9,13 +8,16 @@ By default it will listen on port 8080.
|
||||
health [ADDRESS]
|
||||
~~~
|
||||
|
||||
Optionally takes an address; the default is `:8080`. The health path is fixed to `/health`. It
|
||||
will just return "OK" when CoreDNS is healthy, which currently mean: it is up and running.
|
||||
|
||||
This middleware only needs to be enabled once.
|
||||
Optionally takes an address; the default is `:8080`. The health path is fixed to `/health`. The
|
||||
health endpoint returns a 200 response code and the word "OK" when CoreDNS is healthy. It returns
|
||||
a 503. *health* periodically (1s) polls middleware that exports health information. If any of the
|
||||
middleware signals that it is unhealthy, the server will go unhealthy too. Each middleware that
|
||||
supports health checks has a section "Health" in their README.
|
||||
|
||||
## Examples
|
||||
|
||||
Run another health endpoint on http://localhost:8091.
|
||||
|
||||
~~~
|
||||
health localhost:8091
|
||||
~~~
|
||||
|
||||
Reference in New Issue
Block a user