func makeLogger() (*log.Logger, *colog.CoLog) { // Create logger logger := log.New(os.Stderr, "", 0) // Create colog instance cl := colog.NewCoLog(os.Stderr, "", 0) // TODO: can set custom headers here // colog.AddHeader("[foo] ", colog.LError) // Overwrite both standard library and custom logger with this colog instance. log.SetOutput(cl) logger.SetOutput(cl) // Overwrite flags on stdlib logger log.SetPrefix("") log.SetFlags(0) return logger, cl }
func makeLogger() (*log.Logger, *colog.CoLog) { // Create logger logger := log.New(os.Stderr, "", 0) // Create colog instance cl := colog.NewCoLog(os.Stderr, "", 0) // This header is from the SOCKS package, and is actually at the 'Trace' // level, in that it shows all bytes copied colog.AddHeader("[DEBUG] ", colog.LTrace) // Overwrite both standard library and custom logger with this colog instance. log.SetOutput(cl) logger.SetOutput(cl) // Overwrite flags on stdlib logger log.SetPrefix("") log.SetFlags(0) return logger, cl }