Я использую Google Wire для внедрения зависимостей, и мне нужно 2 регистратора (ошибка и информация). Итак, я создал следующего провайдера:
type errorLogger *log.Logger
type infoLogger *log.Logger
type Logger struct {
Error errorLogger
Info infoLogger
}
func ProvideLogger() *Logger {
return &Logger{
Error: log.New(os.Stderr, "ERROR\t", log.Ldate|log.Ltime|log.Lshortfile),
Info: log.New(os.Stdout, "INFO\t", log.Ldate|log.Ltime),
}
}
В моем коде я ссылаюсь на регистраторы так:
h.Logger.Error
Однако это не дает мне доступа к методам logger
как я предполагаю (например, Println
, Fatalf
et c)
введите описание изображения здесь
Я предполагаю, что ссылаюсь на что-то неправильно, просто не знаю, на что.