ZhangZhihui's Blog  

 

复制代码
package main

import (
    "fmt"
    "log/slog"
    "os"
)

func main() {
    slog.Error("This is an ERROR message")
    slog.Debug("This is a DEBUG message")
    slog.Info("This is an INFO message")
    slog.Warn("This is a WARNING message")

    // Default log level
    logLevel := &slog.LevelVar{}
    fmt.Println("Log level:", logLevel)

    // Text Handler
    opts := &slog.HandlerOptions{
        Level: logLevel,
    }
    handler := slog.NewTextHandler(os.Stdout, opts)
    logger := slog.New(handler)
    // Change log level of logger
    logLevel.Set(slog.LevelDebug)
    logger.Debug("This is a DEBUG message")

    // JSON Handler
    logJSON := slog.New(slog.NewJSONHandler(os.Stdout, nil))
    logJSON.Error("ERROR message in JSON")
}
复制代码

 

zzh@ZZHPC:/zdata/Github/mastering-go-expertise$ go run main.go
2024/06/20 10:07:22 ERROR This is an ERROR message
2024/06/20 10:07:22 INFO This is an INFO message
2024/06/20 10:07:22 WARN This is a WARNING message
Log level: LevelVar(INFO)
time=2024-06-20T10:07:22.133+08:00 level=DEBUG msg="This is a DEBUG message"
{"time":"2024-06-20T10:07:22.133359176+08:00","level":"ERROR","msg":"ERROR message in JSON"}

 

func main() {
    fmt.Println(&slog.LevelVar{})
    slog.Debug("@@@@@@@@@@@@@@")
    slog.Info("************")
    fmt.Println(slog.SetLogLoggerLevel(slog.LevelDebug))
    fmt.Println(&slog.LevelVar{})
    slog.Debug("##############")
}

 

zzh@ZZHPC:/zdata/Github/ztest$ go run main.go
LevelVar(INFO)
2024/06/23 19:08:17 INFO ************
INFO
LevelVar(INFO)
2024/06/23 19:08:17 DEBUG ##############

 

 

posted on   ZhangZhihuiAAA  阅读(3)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
 
点击右上角即可分享
微信分享提示