关于go中日志类

    xiaoxiao2021-03-25  110

    在新建日志文件后运行三个协程:

    1、负责定时检查文件是否存在,若不存在,重新创建,并且清除过期日志

    2、定时为文件改名字,在原名字后添加日期

    3、定时将缓存内容flush到日志中

    调用日志errorf等函数时:

    1、判断其日志级别是否在配置的范围内

    2、用runtime.Caller获取函数调用栈,得到运行当前命令所在的文件、所在行等信息

    3、创建一个buffer用于临时存储string日志信息

    4、将buffer内容写入到文件中

    5、若buffer很大,则不做处理,交给垃圾回收机制;如果buffer不大,则将其保存起来,下次继续用。提高了系统资源的使用率。

    转载请注明原文地址: https://ju.6miu.com/read-8279.html

    最新回复(0)