Merge branch '13937-keepstore-prometheus'
authorLucas Di Pentima <ldipentima@veritasgenetics.com>
Tue, 12 Mar 2019 20:32:43 +0000 (17:32 -0300)
committerLucas Di Pentima <ldipentima@veritasgenetics.com>
Tue, 12 Mar 2019 20:32:43 +0000 (17:32 -0300)
Closes #13937

Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima <ldipentima@veritasgenetics.com>

1  2 
services/keepstore/config.go

index d00bf0125fea25441955bf0e42aada62819d67ff,7f056d8331e5d6a698bf01c45c465707c2ace85f..43a2191111376fbf86c6943ffffff6c22668aa38
@@@ -13,6 -13,7 +13,7 @@@ import 
        "time"
  
        "git.curoverse.com/arvados.git/sdk/go/arvados"
+       "github.com/prometheus/client_golang/prometheus"
        "github.com/sirupsen/logrus"
  )
  
@@@ -81,7 -82,7 +82,7 @@@ func DefaultConfig() *Config 
  
  // Start should be called exactly once: after setting all public
  // fields, and before using the config.
- func (cfg *Config) Start() error {
+ func (cfg *Config) Start(reg *prometheus.Registry) error {
        if cfg.Debug {
                log.Level = logrus.DebugLevel
                cfg.debugLogf = log.Printf
                        return fmt.Errorf("no volumes found")
                }
        }
+       vm := newVolumeMetricsVecs(reg)
        for _, v := range cfg.Volumes {
-               if err := v.Start(); err != nil {
+               if err := v.Start(vm); err != nil {
                        return fmt.Errorf("volume %s: %s", v, err)
                }
                log.Printf("Using volume %v (writable=%v)", v, v.Writable())
@@@ -165,7 -167,7 +167,7 @@@ func (vl *VolumeList) UnmarshalJSON(dat
        for _, factory := range VolumeTypes {
                t := factory().Type()
                if _, ok := typeMap[t]; ok {
 -                      log.Fatal("volume type %+q is claimed by multiple VolumeTypes")
 +                      log.Fatalf("volume type %+q is claimed by multiple VolumeTypes", t)
                }
                typeMap[t] = factory
        }