Startup notification (#250)

Stop the caddy message and start our own init notifications.
Log the version of CoreDNS when starting up.
Fix all middleware's setup functions so that return the error prefixed
with *which* middleware was failing; leads to better debuggable errors
when starting up.
This commit is contained in:
Miek Gieben
2016-09-10 09:16:25 +01:00
committed by GitHub
parent 5216ab6b58
commit 2dd8a687b3
19 changed files with 82 additions and 34 deletions

View File

@@ -6,6 +6,7 @@ import (
"os"
"github.com/miekg/coredns/core/dnsserver"
"github.com/miekg/coredns/middleware"
"github.com/miekg/coredns/middleware/pkg/roller"
"github.com/hashicorp/go-syslog"
@@ -23,7 +24,7 @@ func init() {
func setup(c *caddy.Controller) error {
rules, err := logParse(c)
if err != nil {
return err
return middleware.Error("log", err)
}
// Open the log files for writing when the server starts
@@ -39,13 +40,13 @@ func setup(c *caddy.Controller) error {
} else if rules[i].OutputFile == "syslog" {
writer, err = gsyslog.NewLogger(gsyslog.LOG_INFO, "LOCAL0", "coredns")
if err != nil {
return err
return middleware.Error("log", err)
}
} else {
var file *os.File
file, err = os.OpenFile(rules[i].OutputFile, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0644)
if err != nil {
return err
return middleware.Error("log", err)
}
if rules[i].Roller != nil {
file.Close()