Posted in

【回顾】支持日志添加色彩的轻量级工具库_AI阅读总结 — 包阅AI

包阅导读总结

1. 控制台日志、色彩、tint、开源项目、Golang

2. 本文介绍了支持日志添加色彩的轻量级工具库 tint,它是一个开源的 slog.Handler,在 GitHub 约有 1000 Star,无依赖且适合各类 Golang 项目,介绍了获取及使用方法,并提供了项目地址。

3.

– 背景介绍

– 控制台日志在开发中的重要性及传统日志的不足

– 彩色日志的优势

– 项目介绍

– tint 是可给日志添加色彩的开源 slog.Handler

– 输出格式受 zerolog.ConsoleWriter 和 slog.TextHandler 影响,可自定义 Options 调整格式

– 如何使用

– 通过 go get 命令获取

– 新建 logger 时以 tint 作为 Handler,可自定义属性如不展示时间、自动展示颜色等

– 项目推介

– 功能强大、使用方便、无依赖、轻量级,适合 Golang 项目

– 提供项目 Star 趋势图

– 给出开源项目地址等信息

思维导图:

文章地址:https://mp.weixin.qq.com/s/yusT5C5GySQYh2I0KSXgFA

文章来源:mp.weixin.qq.com

作者:精选君

发布时间:2024/8/6 0:36

语言:中文

总字数:665字

预计阅读时间:3分钟

评分:85分

标签:日志工具,Golang,开源项目,开发者工具,日志美化


以下为原文内容

本内容来源于用户推荐转载,旨在分享知识与观点,如有侵权请联系删除 联系邮箱 media@ilingban.com

背景介绍

在日常的开发过程中,控制台日志是我们调试问题、了解系统运行状态的重要手段之一,然而众所周知,传统的控制台日志都是单调的黑白文本,分析和查看起来费时费力,同时也缺乏美观性。对于编程者来说,如果有丰富多彩的日志输出,不仅可以提升查看体验,也更有利于我们快速定位和理解关键信息。

今天要给大家推荐一个 GitHub 开源项目 lmittmann/tint,该项目在 GitHub 有差不多 1000 Star,一句话介绍该项目:slog.Handler that writes tinted (colorized) logs

项目介绍

tint是一个开源的slog.Handler,可以实现给日志添加色彩的功能。它的输出格式深受zerolog.ConsoleWriterslog.TextHandler的影响。并提供自定义的Options,让你可以根据需要调整日志格式。

如何使用

你可以通过go get命令轻松获取tint

gogetgithub.com/lmittmann/tint

使用起来非常简单,你只需在新建logger时,用tint作为它的 Handler 即可:

w:=os.Stderr

//createanewlogger
logger:=slog.New(tint.NewHandler(w,nil))

你也可以自定义一些属性,比如不展示时间:

//createanewloggerthatdoesn'twritethetime
w:=os.Stderr
logger:=slog.New(
tint.NewHandler(w,&tint.Options{
ReplaceAttr:func(groups[]string,aslog.Attr)slog.Attr{
ifa.Key==slog.TimeKey&&len(groups)==0{
returnslog.Attr{}
}
returna
},
}),
)

比如自动展示颜色:

w:=os.Stderr
logger:=slog.New(
tint.NewHandler(w,&tint.Options{
NoColor:!isatty.IsTerminal(w.Fd()),
}),
)

项目推介

tint是一个功能强大,使用方便的日志代理库。它无依赖,轻量级,非常适合在各类 Golang 项目中使用。

以下是该项目 Star 趋势图(代表项目的活跃程度):

更多项目详情请查看如下链接。

开源项目地址:https://github.com/lmittmann/tint

开源项目作者:lmittmann

开源协议:MIT License

关注我们,一起探索有意思的开源项目。

点击如下卡片后台回复:加群与技术极客们一起交流人工智能、开源项目,一起成长。如果你正在寻求开源项目推广、DevOps、AIGC 大模型、软件开发等领域的付费服务,可参考推文了解详情。