func (eventLog *Log) Append(that *Log) {
	for _, thatEntry := range that.hookMemory.entries {
		entry := &logrus.Entry{
			Logger:  eventLog.logger,
			Data:    thatEntry.Data,
			Time:    thatEntry.Time,
			Level:   thatEntry.Level,
			Message: thatEntry.Message,
		}
		switch entry.Level {
		case logrus.PanicLevel:
			entry.Panic(entry.Message)
		case logrus.FatalLevel:
			entry.Fatal(entry.Message)
		case logrus.ErrorLevel:
			entry.Error(entry.Message)
		case logrus.WarnLevel:
			entry.Warn(entry.Message)
		case logrus.InfoLevel:
			entry.Info(entry.Message)
		case logrus.DebugLevel:
			entry.Debug(entry.Message)
		}
	}
}
Append adds entries to the event logs
package event
import (
	"io/ioutil"
	"github.com/sirupsen/logrus"
)
type Fields map[string]interface{}
type Log struct {
	logger      *logrus.Logger
	hookMemory  *HookMemory
	level       logrus.Level
	scope       string
	fixedFields map[string]string
}
func NewLog(level logrus.Level, scope string) *Log {
	logger := &logrus.Logger{
		Out:       ioutil.Discard,
		Formatter: new(logrus.TextFormatter),
		Hooks:     make(logrus.LevelHooks),
		Level:     level,
	}
	hookMemory := &HookMemory{}
	logger.Hooks.Add(hookMemory)
	return &Log{
		logger:     logger,
		hookMemory: hookMemory,
		level:      level,
		scope:      scope,
		fixedFields: map[string]string{
			"scope": scope,
		},
	}
}
func (eventLog *Log) AddHook(hook logrus.Hook) *Log {
	eventLog.logger.Hooks.Add(hook)
	return eventLog
}
func (eventLog *Log) AddConsoleHook(level logrus.Level) *Log {
	return eventLog.AddHook(NewHookConsole(level))
}
func (eventLog *Log) GetLevel() logrus.Level {
	return eventLog.level
}
func (eventLog *Log) GetScope() string {
	return eventLog.scope
}
func (eventLog *Log) NewEntry() *logrus.Entry {
	logRusFields := logrus.Fields{}
	for key, value := range eventLog.fixedFields {
		logRusFields[key] = value
	}
	return eventLog.logger.WithFields(logRusFields)
}