From 0d18351c6e3e4956d85b25a356151d49fa66bcc9 Mon Sep 17 00:00:00 2001 From: Julius Foitzik Date: Thu, 7 Apr 2022 12:48:30 +0200 Subject: [PATCH] couchdb,http: Allow to disable logging transport in CouchDB client --- backend/couchdb/couchdb.go | 17 +++++++++-------- backend/couchdb/db.go | 10 ++++++---- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/backend/couchdb/couchdb.go b/backend/couchdb/couchdb.go index 012d65b7..c9c44216 100644 --- a/backend/couchdb/couchdb.go +++ b/backend/couchdb/couchdb.go @@ -6,12 +6,13 @@ package couchdb import "time" type Config struct { - URL string `env:"COUCHDB_URL" envDefault:"http://couchdb:5984/"` - User string `env:"COUCHDB_USER" envDefault:"admin"` - Password string `env:"COUCHDB_PASSWORD" envDefault:"secret"` - Database string `env:"COUCHDB_DB" envDefault:"test"` - DatabaseAutoCreate bool `env:"COUCHDB_DB_AUTO_CREATE" envDefault:"true"` - HealthCheckKey string `env:"COUCHDB_HEALTH_CHECK_KEY" envDefault:"$health_check"` - HealthCheckResultTTL time.Duration `env:"COUCHDB_HEALTH_CHECK_RESULT_TTL" envDefault:"10s"` - DisableHealthCheck bool `env:"COUCHDB_DISABLE_HEALTH_CHECK" envDefault:"false"` + URL string `env:"COUCHDB_URL" envDefault:"http://couchdb:5984/"` + User string `env:"COUCHDB_USER" envDefault:"admin"` + Password string `env:"COUCHDB_PASSWORD" envDefault:"secret"` + Database string `env:"COUCHDB_DB" envDefault:"test"` + DatabaseAutoCreate bool `env:"COUCHDB_DB_AUTO_CREATE" envDefault:"true"` + HealthCheckKey string `env:"COUCHDB_HEALTH_CHECK_KEY" envDefault:"$health_check"` + HealthCheckResultTTL time.Duration `env:"COUCHDB_HEALTH_CHECK_RESULT_TTL" envDefault:"10s"` + DisableHealthCheck bool `env:"COUCHDB_DISABLE_HEALTH_CHECK" envDefault:"false"` + DisableRequestLogging bool `env:"COUCHDB_DB_DISABLE_REQUEST_LOGGING" envDefault:"false"` } diff --git a/backend/couchdb/db.go b/backend/couchdb/db.go index 057f89b7..abb47011 100644 --- a/backend/couchdb/db.go +++ b/backend/couchdb/db.go @@ -75,16 +75,18 @@ func Client(cfg *Config) (*kivik.Client, error) { if err != nil { return nil, err } - - chain := transport.Chain( + rts := []transport.ChainableRoundTripper{ &AuthTransport{ Username: cfg.User, Password: cfg.Password, }, &transport.JaegerRoundTripper{}, transport.NewDumpRoundTripperEnv(), - &transport.LoggingRoundTripper{}, - ) + } + if !cfg.DisableHealthCheck { + rts = append(rts, &transport.LoggingRoundTripper{}) + } + chain := transport.Chain(rts...) tr := couchdb.SetTransport(chain) err = client.Authenticate(ctx, tr) if err != nil {