mirror of
https://github.com/redis/go-redis.git
synced 2025-09-10 07:11:50 +03:00
* feat(hitless): Introduce handlers for hitless upgrades This commit includes all the work on hitless upgrades with the addition of: - Pubsub Pool - Examples - Refactor of push - Refactor of pool (using atomics for most things) - Introducing of hooks in pool --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
34 lines
711 B
Go
34 lines
711 B
Go
package internal
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
"log"
|
|
"os"
|
|
)
|
|
|
|
// TODO (ned): Revisit logging
|
|
// Add more standardized approach with log levels and configurability
|
|
|
|
type Logging interface {
|
|
Printf(ctx context.Context, format string, v ...interface{})
|
|
}
|
|
|
|
type DefaultLogger struct {
|
|
log *log.Logger
|
|
}
|
|
|
|
func (l *DefaultLogger) Printf(ctx context.Context, format string, v ...interface{}) {
|
|
_ = l.log.Output(2, fmt.Sprintf(format, v...))
|
|
}
|
|
|
|
func NewDefaultLogger() Logging {
|
|
return &DefaultLogger{
|
|
log: log.New(os.Stderr, "redis: ", log.LstdFlags|log.Lshortfile),
|
|
}
|
|
}
|
|
|
|
// Logger calls Output to print to the stderr.
|
|
// Arguments are handled in the manner of fmt.Print.
|
|
var Logger Logging = NewDefaultLogger()
|