code: func (l *Logger) Log(level Level, format string, a ...interface{}) {
  	if level > l.MaxLevel || !l.open {
  		return
  	}
  	message := format
  	if len(a) > 0 {
  		message = fmt.Sprintf(format, a...)
  	}
  	entry := &Entry{
  		Category: l.Category,
  		Level:    level,
  		Message:  message,
  		Time:     time.Now(),
  	}
  	if l.CallStackDepth > 0 {
  		entry.CallStack = GetCallStack(3, l.CallStackDepth, l.CallStackFilter)
  	}
  	entry.FormattedMessage = l.Formatter(l, entry)
  	l.entries <- entry
  }
docs: // Log logs a message of a specified severity level.