基于 `zap` 包封装。除了实现 `Go` 日志包的基本功能外,还实现了很多高级功能 本包基于`github.com/tkestack/tke/pkg/util/log`裁剪
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

42 lines
967 B

package log_test
import (
"cynking.com/pkg/log"
"github.com/spf13/pflag"
"github.com/stretchr/testify/assert"
"testing"
)
func Test_WithName(t *testing.T) {
defer log.Flush() // used for record logger printer
logger := log.WithName("test")
logger.Infow("Hello world!", "foo", "bar") // structed logger
}
func Test_WithValues(t *testing.T) {
defer log.Flush() // used for record logger printer
logger := log.WithValues("key", "value") // used for record context
logger.Info("Hello world!")
logger.Info("Hello world!")
}
func Test_V(t *testing.T) {
defer log.Flush() // used for record logger printer
log.V(0).Infow("Hello world!", "key", "value")
log.V(1).Infow("Hello world!", "key", "value")
}
func Test_Option(t *testing.T) {
fs := pflag.NewFlagSet("test", pflag.ExitOnError)
opt := log.NewOptions()
opt.AddFlags(fs)
args := []string{"--log.level=debug"}
err := fs.Parse(args)
assert.Nil(t, err)
assert.Equal(t, "debug", opt.Level)
}