plugin/forward: fix healthchecker crash (#2165)
This commit is contained in:
parent
cbcc38bcb5
commit
298b860a97
3 changed files with 9 additions and 0 deletions
|
@ -12,12 +12,15 @@ import (
|
|||
|
||||
"github.com/coredns/coredns/plugin"
|
||||
"github.com/coredns/coredns/plugin/debug"
|
||||
clog "github.com/coredns/coredns/plugin/pkg/log"
|
||||
"github.com/coredns/coredns/request"
|
||||
|
||||
"github.com/miekg/dns"
|
||||
ot "github.com/opentracing/opentracing-go"
|
||||
)
|
||||
|
||||
var log = clog.NewWithPlugin("forward")
|
||||
|
||||
// Forward represents a plugin instance that can proxy requests to another (DNS) server. It has a list
|
||||
// of proxies each representing one upstream proxy.
|
||||
type Forward struct {
|
||||
|
|
|
@ -31,6 +31,7 @@ func NewHealthChecker(trans string) HealthChecker {
|
|||
return &dnsHc{c: c}
|
||||
}
|
||||
|
||||
log.Warningf("No healthchecker for transport %q", trans)
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -50,6 +50,11 @@ func (p *Proxy) SetExpire(expire time.Duration) { p.transport.SetExpire(expire)
|
|||
|
||||
// Healthcheck kicks of a round of health checks for this proxy.
|
||||
func (p *Proxy) Healthcheck() {
|
||||
if p.health == nil {
|
||||
log.Warning("No healthchecker")
|
||||
return
|
||||
}
|
||||
|
||||
p.probe.Do(func() error {
|
||||
return p.health.Check(p)
|
||||
})
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue