plugin/health: implement dyn health checks (#1214)

Implement health.Healther in erratic and kubernetes plugin. The
kubernetes' healtcheck is only performed on startup - i.e. turn
healthy after the initial loading.

Erratic follow the drop count: every query%drop turns the healthcheck
unhealthy.

Fixes: #985
This commit is contained in:
Miek Gieben
2017-11-13 09:52:40 +00:00
committed by GitHub
parent 46a187df8f
commit 52b49f4838
7 changed files with 49 additions and 8 deletions

View File

@@ -85,6 +85,11 @@ kubernetes [ZONES...] {
what the response will be. However, if you specify this option, the query will instead be passed
on down the plugin chain, which can include another plugin to handle the query.
## Health
This plugin implements dynamic health checking. Currently this is limited to reporting healthy when
the API has synced.
## Examples
Handle all queries in the `cluster.local` zone. Connect to Kubernetes in-cluster. Also handle all

View File

@@ -0,0 +1,4 @@
package kubernetes
// Health implements the health.Healther interface.
func (k *Kubernetes) Health() bool { return k.APIConn.HasSynced() }