func (m *mEntry) AddTime(key string, val time.Time) Entry {
	for i := range m.es {
		m.es[i] = m.es[i].AddTime(key, val)
	}
	return m
}
AddTime adds a time value to the log statement.
package logger
import (
	"time"
)
func NewMulti(ls ...Logger) Logger {
	return &mLog{ls: ls}
}
type mLog struct {
	ls []Logger
}
func (m *mLog) WithField(key, value string) Logger {
	for i := range m.ls {
		m.ls[i] = m.ls[i].WithField(key, value)
	}
	return m
}
func (m *mLog) Level(lvl Level) Entry {
	e := mEntry{make([]Entry, len(m.ls))}
	for i := range m.ls {
		e.es[i] = m.ls[i].Level(lvl)
	}
	return &e
}
func (m *mLog) Debug() Entry {
	e := mEntry{make([]Entry, len(m.ls))}
	for i := range m.ls {
		e.es[i] = m.ls[i].Debug()
	}
	return &e
}
func (m *mLog) Info() Entry {
	e := mEntry{make([]Entry, len(m.ls))}
	for i := range m.ls {
		e.es[i] = m.ls[i].Info()
	}
	return &e
}
func (m *mLog) Warn() Entry {
	e := mEntry{make([]Entry, len(m.ls))}
	for i := range m.ls {
		e.es[i] = m.ls[i].Warn()
	}
	return &e
}
func (m *mLog) Error() Entry {
	e := mEntry{make([]Entry, len(m.ls))}
	for i := range m.ls {
		e.es[i] = m.ls[i].Error()
	}
	return &e
}
func (m *mLog) Fatal() Entry {
	e := mEntry{make([]Entry, len(m.ls))}
	for i := range m.ls {
		e.es[i] = m.ls[i].Fatal()
	}
	return &e
}
func (m *mLog) Panic() Entry {
	e := mEntry{make([]Entry, len(m.ls))}
	for i := range m.ls {
		e.es[i] = m.ls[i].Panic()
	}
	return &e
}
type mEntry struct {
	es []Entry
}
func (m *mEntry) Flush(msg string) {
	var r interface{}
	for i := range m.es {
		func() {
			defer func() {
				r = recover()
			}()
			m.es[i].Flush(msg)
		}()
	}
	if r != nil {
		panic(r)
	}
}
func (m *mEntry) AddFields(fields map[string]interface{}) Entry {
	for i := range m.es {
		m.es[i] = m.es[i].AddFields(fields)
	}
	return m
}
func (m *mEntry) AddErr(err error) Entry {
	for i := range m.es {
		m.es[i] = m.es[i].AddErr(err)
	}
	return m
}
func (m *mEntry) AddError(key string, val error) Entry {
	for i := range m.es {
		m.es[i] = m.es[i].AddError(key, val)
	}
	return m
}
func (m *mEntry) AddBool(key string, val bool) Entry {
	for i := range m.es {
		m.es[i] = m.es[i].AddBool(key, val)
	}
	return m
}
func (m *mEntry) AddInt(key string, val int) Entry {
	for i := range m.es {
		m.es[i] = m.es[i].AddInt(key, val)
	}
	return m
}
func (m *mEntry) AddStr(key string, val string) Entry {
	for i := range m.es {
		m.es[i] = m.es[i].AddStr(key, val)
	}
	return m
}