haiwai-grlogs/log_test.go
2023-03-13 19:42:29 +08:00

103 lines
2.1 KiB
Go

package grlogs
import (
"errors"
_ "haiwai-grlogs/logs/alils"
_ "haiwai-grlogs/logs/es"
"os"
"sync"
"testing"
"time"
)
func TestGetLogger(t *testing.T) {
// 新建 channel 大小为128 标识为nds 日志通道 , Get 的方法 默认带 console 和 file 输出
l := Get("nds", 128).SetAdapter(LevelAll, AdapterElasticSearch)
l.Debug("我正在调试")
l.Critical("出错了")
// 复用 nds 的日志通道
Get("nds").Warning("hadoee %s", time.Now().Format(time.RFC1123))
Get("nds").Warning("hadoee %s", time.Now().Format(time.RFC1123))
// 新建 channel 大小为默认 标识为wifi 日志通道 , GetEs 的方法 默认带 console 和 file 和 elatisearch 输出
GetEs("wifi")
for i := 0; i < 10; i++ {
Get("wifi").Warning("Warning")
Get("wifi").Warn("Warn")
Get("wifi").Debug("Debug")
Get("wifi").Error("Error")
Get("wifi").Notice("Notice")
Get("wifi").Info("Info")
Get("wifi").Alert("Alert")
}
Get("wifi").Critical("neoweiwoewe")
}
func TestGetAliLs(t *testing.T) {
lable := "test_alils"
l := GetAli(lable).Async(128)
for i := 0; i < 2; i++ {
l.Info("Info")
l.Debug("Debug")
l.Warn("Warn")
l.Warning("Warning")
l.Error("Error")
l.Error("Error\n\n 测试换行")
l.Warn("Warn")
}
time.Sleep(time.Hour * 1)
}
func TestDropAdapter(t *testing.T) {
SetAdapter(LevelAll, AdapterAliLs)
DropAdapter(AdapterAliLs)
Informational(errors.New("he hello"))
SetAdapter(LevelAll, AdapterAliLs)
Debug(errors.New("he hello"))
CloseAll()
}
func TestNew(t *testing.T) {
os.Setenv("GRLOG_INTERNET", "public")
os.Setenv("GRLOG_APP_NAME", "yoda.hk")
os.Setenv("GRLOG_ALILS_DEBUG", "on")
t.Log(os.Getenv("GRLOG_INTERNET"))
wg := sync.WaitGroup{}
for i := 0; i < 10; i++ {
wg.Add(1)
go func(i int) {
GetAli("ok").Debug("%d", i)
wg.Done()
}(i)
}
for i := 0; i < 10; i++ {
GetAli("ok").Debug("aaaaaa%d", i)
}
wg.Wait()
}
func TestGetEs(t *testing.T) {
wg := sync.WaitGroup{}
for i := 0; i < 10; i++ {
wg.Add(1)
go func(i int) {
GetEs("ok").Debug("%d", i)
time.Sleep(time.Second * 10)
wg.Done()
}(i)
}
for i := 0; i < 10; i++ {
GetEs("ok").Debug("aaaaaa%d", i)
}
wg.Wait()
}