golib/logger/log_test.go

63 lines
1.3 KiB
Go

//
// log_test.go
// Copyright (C) 2022 tiglog <me@tiglog.com>
//
// Distributed under terms of the MIT license.
//
package logger_test
import (
"testing"
"git.hexq.cn/tiglog/golib/gtest"
"git.hexq.cn/tiglog/golib/logger"
"github.com/pkg/errors"
)
func inner() error {
return errors.New("seems we have an error here")
}
func middle() error {
err := inner()
if err != nil {
return err
}
return nil
}
func outer() error {
err := middle()
if err != nil {
return err
}
return nil
}
func TestLogToFile(t *testing.T) {
log := logger.New(logger.NewRotateBySize("./var/log/test.log"), logger.DebugLevel)
defer log.Sync()
gtest.NotNil(t, logger.Default())
err := outer()
log.Error("hello world", logger.Any("err", err))
log.Info("info1 中华人民共和国")
log.Debug("debug1 中华人民共和国")
}
func TestProdLog(t *testing.T) {
log := logger.New(logger.NewRotateBySize("./var/log/test.log"), logger.InfoLevel)
defer log.Sync()
log.Info("info2 中华人民共和国")
log.Debug("debug2 应该没有")
}
func TestWithGlobalField(t *testing.T) {
log := logger.New(logger.NewRotateBySize("./var/log/test.log"), logger.DebugLevel)
defer log.Sync()
logger.With(logger.String("reqId", "foo_IDD"))
log.Debug("debug3 中华人民共和国")
logger.With(logger.String("reqId", "bar_IID"))
log.Debug("debug3 救民于水火")
}