Also switched test logging to use ctxlog TestLogger
Arvados-DCO-1.1-Signed-off-by: Eric Biagiotti <ebiagiotti@veritasgenetics.com>
"git.curoverse.com/arvados.git/lib/config"
"git.curoverse.com/arvados.git/sdk/go/arvados"
"git.curoverse.com/arvados.git/sdk/go/arvadostest"
"git.curoverse.com/arvados.git/lib/config"
"git.curoverse.com/arvados.git/sdk/go/arvados"
"git.curoverse.com/arvados.git/sdk/go/arvadostest"
- "github.com/sirupsen/logrus"
+ "git.curoverse.com/arvados.git/sdk/go/ctxlog"
+ "github.com/prometheus/client_golang/prometheus"
check "gopkg.in/check.v1"
)
check "gopkg.in/check.v1"
)
Cluster: s.config,
ArvClient: s.client,
RunOptions: *options,
Cluster: s.config,
ArvClient: s.client,
RunOptions: *options,
+ Metrics: newMetrics(prometheus.NewRegistry()),
Logger: options.Logger,
Dumper: options.Dumper,
}
Logger: options.Logger,
Dumper: options.Dumper,
}
-// make a log.Logger that writes to the current test's c.Log().
-func (s *runSuite) logger(c *check.C) *logrus.Logger {
- r, w := io.Pipe()
- go func() {
- buf := make([]byte, 10000)
- for {
- n, err := r.Read(buf)
- if n > 0 {
- if buf[n-1] == '\n' {
- n--
- }
- c.Log(string(buf[:n]))
- }
- if err != nil {
- break
- }
- }
- }()
- logger := logrus.New()
- logger.Out = w
- return logger
-}
-
func (s *runSuite) SetUpTest(c *check.C) {
func (s *runSuite) SetUpTest(c *check.C) {
- cfg, err := config.NewLoader(nil, nil).Load()
+ cfg, err := config.NewLoader(nil, ctxlog.TestLogger(c)).Load()
c.Assert(err, check.Equals, nil)
s.config, err = cfg.GetCluster("")
c.Assert(err, check.Equals, nil)
c.Assert(err, check.Equals, nil)
s.config, err = cfg.GetCluster("")
c.Assert(err, check.Equals, nil)
opts := RunOptions{
CommitPulls: true,
CommitTrash: true,
opts := RunOptions{
CommitPulls: true,
CommitTrash: true,
+ Logger: ctxlog.TestLogger(c),
}
s.stub.serveCurrentUserAdmin()
s.stub.serveZeroCollections()
}
s.stub.serveCurrentUserAdmin()
s.stub.serveZeroCollections()
opts := RunOptions{
CommitPulls: true,
CommitTrash: true,
opts := RunOptions{
CommitPulls: true,
CommitTrash: true,
+ Logger: ctxlog.TestLogger(c),
}
s.stub.serveCurrentUserNotAdmin()
s.stub.serveZeroCollections()
}
s.stub.serveCurrentUserNotAdmin()
s.stub.serveZeroCollections()
opts := RunOptions{
CommitPulls: true,
CommitTrash: true,
opts := RunOptions{
CommitPulls: true,
CommitTrash: true,
+ Logger: ctxlog.TestLogger(c),
}
s.stub.serveCurrentUserAdmin()
s.stub.serveCollectionsButSkipOne()
}
s.stub.serveCurrentUserAdmin()
s.stub.serveCollectionsButSkipOne()
opts := RunOptions{
CommitPulls: true,
CommitTrash: true,
opts := RunOptions{
CommitPulls: true,
CommitTrash: true,
+ Logger: ctxlog.TestLogger(c),
}
s.stub.serveCurrentUserAdmin()
s.stub.serveFooBarFileCollections()
}
s.stub.serveCurrentUserAdmin()
s.stub.serveFooBarFileCollections()
opts := RunOptions{
CommitPulls: false,
CommitTrash: false,
opts := RunOptions{
CommitPulls: false,
CommitTrash: false,
+ Logger: ctxlog.TestLogger(c),
}
s.stub.serveCurrentUserAdmin()
collReqs := s.stub.serveFooBarFileCollections()
}
s.stub.serveCurrentUserAdmin()
collReqs := s.stub.serveFooBarFileCollections()
opts := RunOptions{
CommitPulls: true,
CommitTrash: true,
opts := RunOptions{
CommitPulls: true,
CommitTrash: true,
- Logger: s.logger(c),
- Dumper: s.logger(c),
+ Logger: ctxlog.TestLogger(c),
+ Dumper: ctxlog.TestLogger(c),
}
s.stub.serveCurrentUserAdmin()
s.stub.serveFooBarFileCollections()
}
s.stub.serveCurrentUserAdmin()
s.stub.serveFooBarFileCollections()
opts := RunOptions{
CommitPulls: true,
CommitTrash: true,
opts := RunOptions{
CommitPulls: true,
CommitTrash: true,
- Logger: s.logger(c),
- Dumper: s.logger(c),
+ Logger: ctxlog.TestLogger(c),
+ Dumper: ctxlog.TestLogger(c),
}
s.stub.serveCurrentUserAdmin()
s.stub.serveFooBarFileCollections()
}
s.stub.serveCurrentUserAdmin()
s.stub.serveFooBarFileCollections()
"git.curoverse.com/arvados.git/sdk/go/arvados"
"git.curoverse.com/arvados.git/sdk/go/arvadosclient"
"git.curoverse.com/arvados.git/sdk/go/arvadostest"
"git.curoverse.com/arvados.git/sdk/go/arvados"
"git.curoverse.com/arvados.git/sdk/go/arvadosclient"
"git.curoverse.com/arvados.git/sdk/go/arvadostest"
+ "git.curoverse.com/arvados.git/sdk/go/ctxlog"
"git.curoverse.com/arvados.git/sdk/go/keepclient"
"git.curoverse.com/arvados.git/sdk/go/keepclient"
+ "github.com/prometheus/client_golang/prometheus"
"github.com/sirupsen/logrus"
check "gopkg.in/check.v1"
)
"github.com/sirupsen/logrus"
check "gopkg.in/check.v1"
)
}
func (s *integrationSuite) SetUpTest(c *check.C) {
}
func (s *integrationSuite) SetUpTest(c *check.C) {
- cfg, err := config.NewLoader(nil, nil).Load()
+ cfg, err := config.NewLoader(nil, ctxlog.TestLogger(c)).Load()
c.Assert(err, check.Equals, nil)
s.config, err = cfg.GetCluster("")
c.Assert(err, check.Equals, nil)
c.Assert(err, check.Equals, nil)
s.config, err = cfg.GetCluster("")
c.Assert(err, check.Equals, nil)
bal := &Balancer{
Logger: logger,
bal := &Balancer{
Logger: logger,
+ Metrics: newMetrics(prometheus.NewRegistry()),
}
nextOpts, err := bal.Run(s.client, s.config, opts)
c.Check(err, check.IsNil)
}
nextOpts, err := bal.Run(s.client, s.config, opts)
c.Check(err, check.IsNil)
"git.curoverse.com/arvados.git/lib/service"
"git.curoverse.com/arvados.git/sdk/go/arvados"
"git.curoverse.com/arvados.git/sdk/go/ctxlog"
"git.curoverse.com/arvados.git/lib/service"
"git.curoverse.com/arvados.git/sdk/go/arvados"
"git.curoverse.com/arvados.git/sdk/go/ctxlog"
+ "github.com/prometheus/client_golang/prometheus"
"github.com/sirupsen/logrus"
)
"github.com/sirupsen/logrus"
)
-func newHandler(ctx context.Context, cluster *arvados.Cluster, token string) service.Handler {
+func newHandler(ctx context.Context, cluster *arvados.Cluster, token string, registry *prometheus.Registry) service.Handler {
if !options.Once && cluster.Collections.BalancePeriod == arvados.Duration(0) {
return service.ErrorHandler(ctx, cluster, fmt.Errorf("You must either run keep-balance with the -once flag, or set Collections.BalancePeriod in the config. "+
"If using the legacy keep-balance.yml config, RunPeriod is the equivalant of Collections.BalancePeriod."))
if !options.Once && cluster.Collections.BalancePeriod == arvados.Duration(0) {
return service.ErrorHandler(ctx, cluster, fmt.Errorf("You must either run keep-balance with the -once flag, or set Collections.BalancePeriod in the config. "+
"If using the legacy keep-balance.yml config, RunPeriod is the equivalant of Collections.BalancePeriod."))
Cluster: cluster,
ArvClient: ac,
RunOptions: options,
Cluster: cluster,
ArvClient: ac,
RunOptions: options,
+ Metrics: newMetrics(registry),
Logger: options.Logger,
Dumper: options.Dumper,
}
Logger: options.Logger,
Dumper: options.Dumper,
}
-func newMetrics() *metrics {
+func newMetrics(registry *prometheus.Registry) *metrics {
- reg: prometheus.NewRegistry(),
statsGauges: map[string]setter{},
observers: map[string]observer{},
}
statsGauges: map[string]setter{},
observers: map[string]observer{},
}