aboutsummaryrefslogtreecommitdiff
path: root/core/setup/prometheus.go
diff options
context:
space:
mode:
authorGravatar Miek Gieben <miek@miek.nl> 2016-04-09 16:17:53 +0100
committerGravatar Miek Gieben <miek@miek.nl> 2016-04-09 16:17:53 +0100
commitad221f4b2afa0cf89810cd9c3b4e953913d602fc (patch)
tree23bf7561336d29096eb24d821265235f84ac4222 /core/setup/prometheus.go
parentdb3d689a8ac2bec199e5643394ffa779341acde0 (diff)
downloadcoredns-ad221f4b2afa0cf89810cd9c3b4e953913d602fc.tar.gz
coredns-ad221f4b2afa0cf89810cd9c3b4e953913d602fc.tar.zst
coredns-ad221f4b2afa0cf89810cd9c3b4e953913d602fc.zip
correct EDNS responses (#96)
Tests updated as well and all the middleware. And Prometheus renamed to metrics (directive is still prometheus).
Diffstat (limited to 'core/setup/prometheus.go')
-rw-r--r--core/setup/prometheus.go74
1 files changed, 0 insertions, 74 deletions
diff --git a/core/setup/prometheus.go b/core/setup/prometheus.go
deleted file mode 100644
index 9ab68b6a5..000000000
--- a/core/setup/prometheus.go
+++ /dev/null
@@ -1,74 +0,0 @@
-package setup
-
-import (
- "sync"
-
- "github.com/miekg/coredns/middleware"
- prom "github.com/miekg/coredns/middleware/prometheus"
-)
-
-const (
- path = "/metrics"
- addr = "localhost:9135" // 9153 is occupied by bind_exporter
-)
-
-var once sync.Once
-
-func Prometheus(c *Controller) (middleware.Middleware, error) {
- metrics, err := parsePrometheus(c)
- if err != nil {
- return nil, err
- }
-
- once.Do(func() {
- c.Startup = append(c.Startup, metrics.Start)
- })
-
- return func(next middleware.Handler) middleware.Handler {
- metrics.Next = next
- return metrics
- }, nil
-}
-
-func parsePrometheus(c *Controller) (prom.Metrics, error) {
- var (
- metrics prom.Metrics
- err error
- )
-
- for c.Next() {
- if len(metrics.ZoneNames) > 0 {
- return prom.Metrics{}, c.Err("prometheus: can only have one metrics module per server")
- }
- metrics = prom.Metrics{ZoneNames: c.ServerBlockHosts}
- for i, _ := range metrics.ZoneNames {
- metrics.ZoneNames[i] = middleware.Host(metrics.ZoneNames[i]).Normalize()
- }
- args := c.RemainingArgs()
-
- switch len(args) {
- case 0:
- case 1:
- metrics.Addr = args[0]
- default:
- return prom.Metrics{}, c.ArgErr()
- }
- for c.NextBlock() {
- switch c.Val() {
- case "address":
- args = c.RemainingArgs()
- if len(args) != 1 {
- return prom.Metrics{}, c.ArgErr()
- }
- metrics.Addr = args[0]
- default:
- return prom.Metrics{}, c.Errf("prometheus: unknown item: %s", c.Val())
- }
-
- }
- }
- if metrics.Addr == "" {
- metrics.Addr = addr
- }
- return metrics, err
-}