twitch-bot/pkg/database/logger.go

31 lines
744 B
Go
Raw Normal View History

package database
import (
"fmt"
"io"
"github.com/sirupsen/logrus"
)
type (
// LogWriter implements a logger for the gorm logging
LogWriter struct{ io.Writer }
)
// NewLogrusLogWriterWithLevel creates a new LogWriter with the given
// logrus.Logger and the specified logrus.Level
func NewLogrusLogWriterWithLevel(logger *logrus.Logger, level logrus.Level, dbDriver string) LogWriter {
writer := logger.WithField("database", dbDriver).WriterLevel(level)
return LogWriter{writer}
}
// Print implements the gorm.Logger interface
func (l LogWriter) Print(a ...any) {
fmt.Fprint(l.Writer, a...)
}
// Printf implements the gorm.Logger interface
func (l LogWriter) Printf(format string, a ...any) {
fmt.Fprintf(l.Writer, format, a...)
}