adding logging to server

This commit is contained in:
2020-06-15 15:24:56 -04:00
parent d335549fd5
commit 88333417d4
10 changed files with 72 additions and 37 deletions

View File

@@ -1,31 +1,23 @@
package database
import (
"io"
logger "github.com/apsdehal/go-logger"
"github.com/asdine/storm"
"github.com/rs/zerolog"
)
type DB struct {
*storm.DB
*logger.Logger
*zerolog.Logger
}
// NewDB returns a new database object,
// it configures the database for you.
func NewDB(dbPath, format string, logLevel int, logWriter io.WriteCloser) (*DB, error) {
//Note! Do not use logger as you have no idea if logWriter has been configured for output yet
func NewDB(dbPath string, log *zerolog.Logger) (*DB, error) {
var db DB
log, err := logger.New("db logger", 1, logWriter)
if err != nil {
return &db, err
}
log.SetLogLevel(logger.LogLevel(logLevel))
log.SetFormat(format)
db.Logger = log
databaseLogger := log.With().Str("module", "database").Logger() // Setting up a sub logger for the database module
db.Logger = &databaseLogger
if err := db.ConfigureDB(dbPath); err != nil {
log.ErrorF("Error configuring the database ", err)
db.Err(err).Msg("unable to configure database")
return &db, err
}
return &db, nil