func NewLog() (l *Log) {
	defer func() {
		l.Logger = &log.Logger{
			Out: l,
			Formatter: &log.TextFormatter{
				FullTimestamp: true,
			},
			Level: log.InfoLevel,
			Hooks: log.LevelHooks{},
		}
		l.Hooks.Add(&debugHook{})
	}()
	return &Log{
		buffer: bytes.NewBuffer(make([]byte, 0, BUFFER_SIZE)),
	}
}
// NewLog returns a new log
NewLog returns a new log
// NewLog returns a new log
func NewLog() (l *Log) {
	defer func() {
		l.Logger = &log.Logger{
			Out: l,
			Formatter: &log.TextFormatter{
				FullTimestamp: true,
			},
			Level: log.InfoLevel,
			Hooks: log.LevelHooks{},
		}
		l.Hooks.Add(&debugHook{})
	}()
	return &Log{
		buffer: bytes.NewBuffer(make([]byte, 0, BUFFER_SIZE)),
	}
}
func NewLog ( ) ( l * Log ) { defer func ( ) { l . Logger = & log . Logger { Out : l , Formatter : & log . TextFormatter { FullTimestamp : true , } , Level : log . InfoLevel , Hooks : log . LevelHooks { } , } l . Hooks . Add ( & debugHook { } ) } ( ) return & Log { buffer : bytes . NewBuffer ( make ( [ ] byte , 0 , BUFFER_SIZE ) ) , } }
NewLog returns a new log
NewLog returns a new log