You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

67 lines
1.9 KiB

package rabbitmq
import (
"fmt"
"log"
"os"
"github.com/wagslane/go-rabbitmq/internal/logger"
)
// Logger is describes a logging structure. It can be set using
// WithPublisherOptionsLogger() or WithConsumerOptionsLogger().
type Logger logger.Logger
const loggingPrefix = "gorabbit"
type stdDebugLogger struct{}
// Fatalf -
func (l stdDebugLogger) Fatalf(format string, v ...interface{}) {
log.Fatalf(fmt.Sprintf("%s FATAL: %s", loggingPrefix, format), v...)
}
// Errorf -
func (l stdDebugLogger) Errorf(format string, v ...interface{}) {
log.Printf(fmt.Sprintf("%s ERROR: %s", loggingPrefix, format), v...)
}
// Warnf -
func (l stdDebugLogger) Warnf(format string, v ...interface{}) {
log.Printf(fmt.Sprintf("%s WARN: %s", loggingPrefix, format), v...)
}
// Infof -
func (l stdDebugLogger) Infof(format string, v ...interface{}) {
log.Printf(fmt.Sprintf("%s INFO: %s", loggingPrefix, format), v...)
}
// Debugf -
func (l stdDebugLogger) Debugf(format string, v ...interface{}) {
log.Printf(fmt.Sprintf("%s DEBUG: %s", loggingPrefix, format), v...)
}
// simpleLogF is used to support logging in the test functions.
// This could be exposed publicly for integration in more simple logging interfaces.
type simpleLogF func(string, ...interface{})
func (l simpleLogF) Fatalf(format string, v ...interface{}) {
l(fmt.Sprintf("%s FATAL: %s", loggingPrefix, format), v...)
os.Exit(1)
}
func (l simpleLogF) Errorf(format string, v ...interface{}) {
l(fmt.Sprintf("%s ERROR: %s", loggingPrefix, format), v...)
}
func (l simpleLogF) Warnf(format string, v ...interface{}) {
l(fmt.Sprintf("%s WARN: %s", loggingPrefix, format), v...)
}
func (l simpleLogF) Infof(format string, v ...interface{}) {
l(fmt.Sprintf("%s INFO: %s", loggingPrefix, format), v...)
}
func (l simpleLogF) Debugf(format string, v ...interface{}) {
l(fmt.Sprintf("%s DEBUG: %s", loggingPrefix, format), v...)
}