github.com/sereiner/library@v0.0.0-20200518095232-1fa3e640cc5f/log/appender.sys.go (about)

     1  package log
     2  
     3  import (
     4  	"fmt"
     5  	"os"
     6  	"strings"
     7  	"time"
     8  )
     9  
    10  // 测试的时候给这个变量赋值,可以进行回调
    11  var testCallBack func(error)
    12  
    13  func sysLoggerInfo(content ...interface{}) {
    14  	sysLoggerWrite(SLevel_Info, fmt.Sprint(content...))
    15  }
    16  func sysLoggerError(content ...interface{}) {
    17  	sysLoggerWrite(SLevel_Error, fmt.Sprint(content...))
    18  }
    19  
    20  func sysLoggerWrite(level string, content interface{}) {
    21  	if strings.EqualFold(level, "") {
    22  		level = "All"
    23  	}
    24  
    25  	e := &LogEvent{}
    26  	e.Now = time.Now()
    27  	e.Level = level
    28  	e.Name = "sys"
    29  	e.Session = CreateSession()
    30  	e.Content = fmt.Sprintf("%v", content)
    31  	e.Output = "%content%n"
    32  	os.Stderr.WriteString(transform(e.Output, e))
    33  
    34  	// 测试时候回调
    35  	if testCallBack != nil {
    36  		testCallBack(content.(error))
    37  	}
    38  }