Skip to content

Commit

Permalink
NOISSUE - Logger Fatal method returns no value (#1728)
Browse files Browse the repository at this point in the history
* Make Fatal return no value

Signed-off-by: dusanb94 <dusan.borovcanin@mainflux.com>

* Add Fatal test

Signed-off-by: dusanb94 <dusan.borovcanin@mainflux.com>

* Rename logger imports

Signed-off-by: dusanb94 <dusan.borovcanin@mainflux.com>

* Replace Fatal with Fatalf

Signed-off-by: dusanb94 <dusan.borovcanin@mainflux.com>

* Refactor Logger tests

Signed-off-by: dusanb94 <dusan.borovcanin@mainflux.com>

* Fix expected and actual order inversion

Signed-off-by: dusanb94 <dusan.borovcanin@mainflux.com>

* Update dependencies

Signed-off-by: dusanb94 <dusan.borovcanin@mainflux.com>

---------

Signed-off-by: dusanb94 <dusan.borovcanin@mainflux.com>
  • Loading branch information
dborovcanin committed Feb 22, 2023
1 parent 108077a commit c0c7249
Show file tree
Hide file tree
Showing 45 changed files with 611 additions and 877 deletions.
24 changes: 12 additions & 12 deletions cmd/auth/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ import (
"github.com/mainflux/mainflux/internal/server"
grpcserver "github.com/mainflux/mainflux/internal/server/grpc"
httpserver "github.com/mainflux/mainflux/internal/server/http"
"github.com/mainflux/mainflux/logger"
mflog "github.com/mainflux/mainflux/logger"
"github.com/mainflux/mainflux/pkg/uuid"
"github.com/opentracing/opentracing-go"
acl "github.com/ory/keto/proto/ory/keto/acl/v1alpha1"
Expand Down Expand Up @@ -61,54 +61,54 @@ func main() {
// Create auth service configurations
cfg := config{}
if err := env.Parse(&cfg); err != nil {
log.Fatalf("failed to load %s configuration : %s", svcName, err.Error())
log.Fatalf("failed to load %s configuration : %s", svcName, err)
}

logger, err := logger.New(os.Stdout, cfg.LogLevel)
logger, err := mflog.New(os.Stdout, cfg.LogLevel)
if err != nil {
log.Fatalf(err.Error())
log.Fatalf("failed to init logger: %s", err)
}

// Create new postgres client
dbConfig := pgClient.Config{Name: defDB}
db, err := pgClient.SetupWithConfig(envPrefix, *authPg.Migration(), dbConfig)
if err != nil {
logger.Fatal(fmt.Sprintf("failed to setup postgres database : %s", err.Error()))()
logger.Fatal(fmt.Sprintf("failed to setup postgres database : %s", err))
}
defer db.Close()

// Create new tracer for database
dbTracer, dbCloser, err := jaegerClient.NewTracer("auth_db", cfg.JaegerURL)
if err != nil {
logger.Fatal(fmt.Sprintf("failed to init Jaeger: %s", err.Error()))()
logger.Fatal(fmt.Sprintf("failed to init Jaeger: %s", err))
}
defer dbCloser.Close()

// Create new keto reader grpc client
readerConn, _, err := grpcClient.Connect(grpcClient.Config{ClientTLS: false, URL: fmt.Sprintf("%s:%s", cfg.KetoReadHost, cfg.KetoReadPort)})
if err != nil {
logger.Fatal(fmt.Sprintf("failed to connect to keto gRPC: %s", err.Error()))()
logger.Fatal(fmt.Sprintf("failed to connect to keto gRPC: %s", err))
}

// Create new keto writer grpc client
writerConn, _, err := grpcClient.Connect(grpcClient.Config{ClientTLS: false, URL: fmt.Sprintf("%s:%s", cfg.KetoWriteHost, cfg.KetoWritePort)})
if err != nil {
logger.Fatal(fmt.Sprintf("failed to connect to keto gRPC: %s", err.Error()))()
logger.Fatal(fmt.Sprintf("failed to connect to keto gRPC: %s", err))
}

svc := newService(db, dbTracer, cfg.Secret, logger, readerConn, writerConn, cfg.LoginDuration)

// Create new HTTP Server
tracer, closer, err := jaegerClient.NewTracer("auth", cfg.JaegerURL)
if err != nil {
logger.Fatal(fmt.Sprintf("failed to init Jaeger: %s", err.Error()))()
logger.Fatal(fmt.Sprintf("failed to init Jaeger: %s", err))
}
defer closer.Close()

httpServerConfig := server.Config{Port: defSvcHttpPort}

if err := env.Parse(&httpServerConfig, env.Options{Prefix: envPrefixHttp, AltPrefix: envPrefix}); err != nil {
logger.Fatal(fmt.Sprintf("failed to load %s HTTP server configuration : %s", svcName, err.Error()))()
logger.Fatal(fmt.Sprintf("failed to load %s HTTP server configuration : %s", svcName, err))
}

hs := httpserver.New(ctx, cancel, svcName, httpServerConfig, httpapi.MakeHandler(svc, tracer, logger), logger)
Expand All @@ -117,7 +117,7 @@ func main() {
grpcServerConfig := server.Config{Port: defSvcGrpcPort}

if err := env.Parse(&grpcServerConfig, env.Options{Prefix: envPrefixGrpc, AltPrefix: envPrefix}); err != nil {
logger.Fatal(fmt.Sprintf("failed to load %s gRPC server configuration : %s", svcName, err.Error()))()
logger.Fatal(fmt.Sprintf("failed to load %s gRPC server configuration : %s", svcName, err))
}
registerAuthServiceServer := func(srv *grpc.Server) {
mainflux.RegisterAuthServiceServer(srv, grpcapi.NewServer(tracer, svc))
Expand All @@ -141,7 +141,7 @@ func main() {
}
}

func newService(db *sqlx.DB, tracer opentracing.Tracer, secret string, logger logger.Logger, readerConn, writerConn *grpc.ClientConn, duration time.Duration) auth.Service {
func newService(db *sqlx.DB, tracer opentracing.Tracer, secret string, logger mflog.Logger, readerConn, writerConn *grpc.ClientConn, duration time.Duration) auth.Service {
database := authPg.NewDatabase(db)
keysRepo := tracing.New(authPg.New(database), tracer)

Expand Down
22 changes: 11 additions & 11 deletions cmd/bootstrap/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ import (
"github.com/mainflux/mainflux/internal/env"
"github.com/mainflux/mainflux/internal/server"
httpserver "github.com/mainflux/mainflux/internal/server/http"
"github.com/mainflux/mainflux/logger"
mflog "github.com/mainflux/mainflux/logger"
mfsdk "github.com/mainflux/mainflux/pkg/sdk/go"
"golang.org/x/sync/errgroup"
)
Expand Down Expand Up @@ -51,34 +51,34 @@ func main() {

cfg := config{}
if err := env.Parse(&cfg); err != nil {
log.Fatalf("failed to load %s configuration : %s", svcName, err.Error())
log.Fatalf("failed to load %s configuration : %s", svcName, err)
}

logger, err := logger.New(os.Stdout, cfg.LogLevel)
logger, err := mflog.New(os.Stdout, cfg.LogLevel)
if err != nil {
log.Fatal(err.Error())
log.Fatalf("failed to init logger: %s", err)
}

// Create new postgres client
dbConfig := pgClient.Config{Name: defDB}

db, err := pgClient.SetupWithConfig(envPrefix, *bootstrapPg.Migration(), dbConfig)
if err != nil {
logger.Fatal(err.Error())()
logger.Fatal(err.Error())
}
defer db.Close()

// Create new redis client for bootstrap event store
esClient, err := redisClient.Setup(envPrefixES)
if err != nil {
logger.Fatal(fmt.Sprintf("failed to setup %s bootstrap event store redis client : %s", svcName, err.Error()))()
logger.Fatal(fmt.Sprintf("failed to setup %s bootstrap event store redis client : %s", svcName, err))
}
defer esClient.Close()

// Create new auth grpc client api
auth, authHandler, err := authClient.Setup(envPrefix, cfg.JaegerURL)
if err != nil {
logger.Fatal(err.Error())()
logger.Fatal(err.Error())
}
defer authHandler.Close()
logger.Info("Successfully connected to auth grpc server " + authHandler.Secure())
Expand All @@ -89,7 +89,7 @@ func main() {
// Create an new HTTP server
httpServerConfig := server.Config{Port: defSvcHttpPort}
if err := env.Parse(&httpServerConfig, env.Options{Prefix: envPrefixHttp, AltPrefix: envPrefix}); err != nil {
logger.Fatal(fmt.Sprintf("failed to load %s HTTP server configuration : %s", svcName, err.Error()))()
logger.Fatal(fmt.Sprintf("failed to load %s HTTP server configuration : %s", svcName, err))
}
hs := httpserver.New(ctx, cancel, svcName, httpServerConfig, api.MakeHandler(svc, bootstrap.NewConfigReader([]byte(cfg.EncKey)), logger), logger)

Expand All @@ -104,7 +104,7 @@ func main() {
// Subscribe to things event store
thingsESClient, err := redisClient.Setup(envPrefixES)
if err != nil {
logger.Fatal(err.Error())()
logger.Fatal(err.Error())
}
defer thingsESClient.Close()

Expand All @@ -115,7 +115,7 @@ func main() {
}
}

func newService(auth mainflux.AuthServiceClient, db *sqlx.DB, logger logger.Logger, esClient *r.Client, cfg config) bootstrap.Service {
func newService(auth mainflux.AuthServiceClient, db *sqlx.DB, logger mflog.Logger, esClient *r.Client, cfg config) bootstrap.Service {
repoConfig := bootstrapPg.NewConfigRepository(db, logger)

config := mfsdk.Config{
Expand All @@ -133,7 +133,7 @@ func newService(auth mainflux.AuthServiceClient, db *sqlx.DB, logger logger.Logg
return svc
}

func subscribeToThingsES(svc bootstrap.Service, client *r.Client, consumer string, logger logger.Logger) {
func subscribeToThingsES(svc bootstrap.Service, client *r.Client, consumer string, logger mflog.Logger) {
eventStore := rediscons.NewEventStore(svc, client, consumer, logger)
logger.Info("Subscribed to Redis Event Store")
if err := eventStore.Subscribe(context.Background(), "mainflux.things"); err != nil {
Expand Down
18 changes: 9 additions & 9 deletions cmd/cassandra-reader/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import (
"github.com/mainflux/mainflux/internal/env"
"github.com/mainflux/mainflux/internal/server"
httpserver "github.com/mainflux/mainflux/internal/server/http"
"github.com/mainflux/mainflux/logger"
mflog "github.com/mainflux/mainflux/logger"
"github.com/mainflux/mainflux/readers"
"github.com/mainflux/mainflux/readers/api"
"github.com/mainflux/mainflux/readers/cassandra"
Expand All @@ -44,34 +44,34 @@ func main() {
cfg := config{}

if err := env.Parse(&cfg); err != nil {
log.Fatalf("failed to load %s service configuration : %s", svcName, err.Error())
log.Fatalf("failed to load %s service configuration : %s", svcName, err)
}

logger, err := logger.New(os.Stdout, cfg.LogLevel)
logger, err := mflog.New(os.Stdout, cfg.LogLevel)
if err != nil {
log.Fatalf(err.Error())
log.Fatalf("failed to init logger: %s", err)
}

// Create new thing grpc client
tc, tcHandler, err := thingsClient.Setup(envPrefix, cfg.JaegerURL)
if err != nil {
logger.Fatal(err.Error())()
logger.Fatal(err.Error())
}
defer tcHandler.Close()
logger.Info("Successfully connected to things grpc server " + tcHandler.Secure())

// Create new auth grpc client
auth, authHandler, err := authClient.Setup(envPrefix, cfg.JaegerURL)
if err != nil {
logger.Fatal(err.Error())()
logger.Fatal(err.Error())
}
defer authHandler.Close()
logger.Info("Successfully connected to auth grpc server " + authHandler.Secure())

// Create new cassandra client
csdSession, err := cassandraClient.Setup(envPrefix)
if err != nil {
logger.Fatal(err.Error())()
logger.Fatal(err.Error())
}
defer csdSession.Close()

Expand All @@ -82,7 +82,7 @@ func main() {
httpServerConfig := server.Config{Port: defSvcHttpPort}

if err := env.Parse(&httpServerConfig, env.Options{Prefix: envPrefixHttp, AltPrefix: envPrefix}); err != nil {
logger.Fatal(fmt.Sprintf("failed to load %s HTTP server configuration : %s", svcName, err.Error()))()
logger.Fatal(fmt.Sprintf("failed to load %s HTTP server configuration : %s", svcName, err))
}

hs := httpserver.New(ctx, cancel, svcName, httpServerConfig, api.MakeHandler(repo, tc, auth, svcName, logger), logger)
Expand All @@ -101,7 +101,7 @@ func main() {
}
}

func newService(csdSession *gocql.Session, logger logger.Logger) readers.MessageRepository {
func newService(csdSession *gocql.Session, logger mflog.Logger) readers.MessageRepository {
repo := cassandra.New(csdSession)
repo = api.LoggingMiddleware(repo, logger)
counter, latency := internal.MakeMetrics("cassandra", "message_reader")
Expand Down
17 changes: 8 additions & 9 deletions cmd/cassandra-writer/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import (
"github.com/mainflux/mainflux/internal/env"
"github.com/mainflux/mainflux/internal/server"
httpserver "github.com/mainflux/mainflux/internal/server/http"
"github.com/mainflux/mainflux/logger"
mflog "github.com/mainflux/mainflux/logger"
"github.com/mainflux/mainflux/pkg/messaging/brokers"
"golang.org/x/sync/errgroup"
)
Expand All @@ -42,20 +42,19 @@ func main() {

// Create new cassandra writer service configurations
cfg := config{}

if err := env.Parse(&cfg); err != nil {
log.Fatalf("failed to load %s service configuration : %s", svcName, err.Error())
log.Fatalf("failed to load %s configuration : %s", svcName, err)
}

logger, err := logger.New(os.Stdout, cfg.LogLevel)
logger, err := mflog.New(os.Stdout, cfg.LogLevel)
if err != nil {
log.Fatalf(err.Error())
log.Fatalf("failed to init logger: %s", err)
}

// Create new to cassandra client
csdSession, err := cassandraClient.SetupDB(envPrefix, cassandra.Table)
if err != nil {
logger.Fatal(err.Error())()
logger.Fatal(err.Error())
}
defer csdSession.Close()

Expand All @@ -65,7 +64,7 @@ func main() {
// Create new pub sub broker
pubSub, err := brokers.NewPubSub(cfg.BrokerURL, "", logger)
if err != nil {
logger.Fatal(fmt.Sprintf("failed to connect to message broker: %s", err.Error()))()
logger.Fatal(fmt.Sprintf("failed to connect to message broker: %s", err))
}
defer pubSub.Close()

Expand All @@ -78,7 +77,7 @@ func main() {
httpServerConfig := server.Config{Port: defSvcHttpPort}

if err := env.Parse(&httpServerConfig, env.Options{Prefix: envPrefix, AltPrefix: envPrefixHttp}); err != nil {
logger.Fatal(fmt.Sprintf("failed to load %s HTTP server configuration : %s", svcName, err.Error()))()
logger.Fatal(fmt.Sprintf("failed to load %s HTTP server configuration : %s", svcName, err))
}

hs := httpserver.New(ctx, cancel, svcName, httpServerConfig, api.MakeHandler(svcName), logger)
Expand All @@ -98,7 +97,7 @@ func main() {

}

func newService(session *gocql.Session, logger logger.Logger) consumers.Consumer {
func newService(session *gocql.Session, logger mflog.Logger) consumers.Consumer {
repo := cassandra.New(session)
repo = api.LoggingMiddleware(repo, logger)
counter, latency := internal.MakeMetrics("cassandra", "message_writer")
Expand Down
24 changes: 12 additions & 12 deletions cmd/certs/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ import (
"github.com/mainflux/mainflux/internal/env"
"github.com/mainflux/mainflux/internal/server"
httpserver "github.com/mainflux/mainflux/internal/server/http"
"github.com/mainflux/mainflux/logger"
mflog "github.com/mainflux/mainflux/logger"
"golang.org/x/sync/errgroup"

"github.com/jmoiron/sqlx"
Expand Down Expand Up @@ -71,12 +71,12 @@ func main() {

cfg := config{}
if err := env.Parse(&cfg); err != nil {
log.Fatalf("failed to load %s configuration : %s", svcName, err.Error())
log.Fatalf("failed to load %s configuration : %s", svcName, err)
}

logger, err := logger.New(os.Stdout, cfg.LogLevel)
logger, err := mflog.New(os.Stdout, cfg.LogLevel)
if err != nil {
log.Fatalf(err.Error())
log.Fatalf("failed to init logger: %s", err)
}

tlsCert, caCert, err := loadCertificates(cfg, logger)
Expand All @@ -85,24 +85,24 @@ func main() {
}

if cfg.PkiHost == "" {
logger.Fatal("No host specified for PKI engine")()
logger.Fatal("No host specified for PKI engine")
}

pkiClient, err := vault.NewVaultClient(cfg.PkiToken, cfg.PkiHost, cfg.PkiPath, cfg.PkiRole)
if err != nil {
logger.Fatal("failed to configure client for PKI engine")()
logger.Fatal("failed to configure client for PKI engine")
}

dbConfig := pgClient.Config{Name: defDB}
db, err := pgClient.SetupWithConfig(envPrefix, *certsPg.Migration(), dbConfig)
if err != nil {
logger.Fatal(err.Error())()
logger.Fatal(err.Error())
}
defer db.Close()

auth, authHandler, err := authClient.Setup(envPrefix, cfg.JaegerURL)
if err != nil {
logger.Fatal(err.Error())()
logger.Fatal(err.Error())
}
defer authHandler.Close()
logger.Info("Successfully connected to auth grpc server " + authHandler.Secure())
Expand All @@ -111,7 +111,7 @@ func main() {

httpServerConfig := server.Config{Port: defSvcHttpPort}
if err := env.Parse(&httpServerConfig, env.Options{Prefix: envPrefixHttp, AltPrefix: envPrefix}); err != nil {
logger.Fatal(fmt.Sprintf("failed to load %s HTTP server configuration : %s", svcName, err.Error()))()
logger.Fatal(fmt.Sprintf("failed to load %s HTTP server configuration : %s", svcName, err))
}
hs := httpserver.New(ctx, cancel, svcName, httpServerConfig, api.MakeHandler(svc, logger), logger)

Expand All @@ -128,7 +128,7 @@ func main() {
}
}

func newService(auth mainflux.AuthServiceClient, db *sqlx.DB, logger logger.Logger, esClient *redis.Client, tlsCert tls.Certificate, x509Cert *x509.Certificate, cfg config, pkiAgent vault.Agent) certs.Service {
func newService(auth mainflux.AuthServiceClient, db *sqlx.DB, logger mflog.Logger, esClient *redis.Client, tlsCert tls.Certificate, x509Cert *x509.Certificate, cfg config, pkiAgent vault.Agent) certs.Service {
certsRepo := certsPg.NewRepository(db, logger)
config := mfsdk.Config{
CertsURL: cfg.CertsURL,
Expand All @@ -142,7 +142,7 @@ func newService(auth mainflux.AuthServiceClient, db *sqlx.DB, logger logger.Logg
return svc
}

func loadCertificates(conf config, logger logger.Logger) (tls.Certificate, *x509.Certificate, error) {
func loadCertificates(conf config, logger mflog.Logger) (tls.Certificate, *x509.Certificate, error) {
var tlsCert tls.Certificate
var caCert *x509.Certificate

Expand Down Expand Up @@ -170,7 +170,7 @@ func loadCertificates(conf config, logger logger.Logger) (tls.Certificate, *x509

block, _ := pem.Decode(b)
if block == nil {
logger.Fatal("No PEM data found, failed to decode CA")()
logger.Fatal("No PEM data found, failed to decode CA")
}

caCert, err = x509.ParseCertificate(block.Bytes)
Expand Down
Loading

0 comments on commit c0c7249

Please sign in to comment.