类似 log4j/logback 那种的
1
waising 2022 年 1 月 18 日
|
2
z657386160z 2022 年 1 月 18 日
|
3
zoharSoul OP @z657386160z #2 这个是按文件大小的.
|
4
exkernel 2022 年 1 月 18 日
|
5
mcfog 2022 年 1 月 18 日 |
7
janxin 2022 年 1 月 18 日
|
8
lwch 2022 年 1 月 18 日
|
9
adoal 2022 年 1 月 18 日
如果不考虑 Windows ,只在 Linux 运行的话,不如打到 syslog 里去,通过 logrotate 任务来切分。
能用运维手段解决的就没必要用开发手段解决。运维手段用的基础设施往往是久经考验的。 |
11
adoal 2022 年 1 月 18 日 via iPhone
好吧,对运维方式处理问题不感兴趣的纯程,byebye
|
12
quzard 2022 年 1 月 18 日 via Android
uber 开源的 zap 日志库
|
14
Immortal 2022 年 1 月 18 日
为什么就不考虑 linux 系统里自带又好用的 logrorate
|
15
securityCoding 2022 年 1 月 18 日 via Android
@Immortal +1
|
16
my3157 2022 年 1 月 18 日 via Android
logrotate + signal ,完美解决
|
17
dingyaguang117 2022 年 1 月 18 日 via iPhone
我写了一个,原理大概就是 加锁 和 rename
|
18
xuyang9978 2022 年 1 月 18 日 via iPhone
#1 的那个也不错,使用很方便,不过作者已经不维护了
|
19
hululu 2022 年 1 月 22 日
const rotate = "00 00 00 * * *"
func RotateCrond(logger *lumberjack.Logger, rotate string) { rotateCrondOnce.Do(func() { c := cron.New(cron.WithSeconds()) _, _ = c.AddFunc(rotate, func() { _ = logger.Rotate() }) c.Start() }) } |
20
SillyChenBrother 2022 年 2 月 18 日
我觉得很多都不好用,就自己写了一个。
支持日志输出到控制台或文件,支持很多配置,如打印函数调用行,配置日志级别等。 支持日志层级输出到不同文件,且支持文件切割,清除过期日志文件等。 使用接口契约,你可以自行再次封装该库,我留有 SetCallerSkip 给你继续封装。 https://github.com/hunterhug/golog |