登录
首页 >  Golang >  Go问答

使用glog插件在Go语言中进行日志文件的分割方法

来源:stackoverflow

时间:2024-02-15 10:48:22 115浏览 收藏

亲爱的编程学习爱好者,如果你点开了这篇文章,说明你对《使用glog插件在Go语言中进行日志文件的分割方法 》很感兴趣。本篇文章就来给大家详细解析一下,主要介绍一下,希望所有认真读完的童鞋们,都有实质性的提高。

问题内容

因为我的服务器可能会运行很长时间,日志文件会太大。有没有办法根据大小或时间来切割日志?


正确答案


现在我找到了一种分割日志的方法。 使用第三方库。(例如:https://github.com/natefinch/lumberjack

由于您担心大型日志文件,请尝试条件日志记录或偶尔日志记录 您可以使用以下宏来执行条件日志记录:

log_if(info, num_cookies > 10) << "got lots of cookies";

仅当变量 num_cookies 超过 10 时,才会记录“有很多 cookie”消息。如果一行代码被执行多次,则仅以特定时间间隔记录一条消息可能会很有用。这种日志记录对于信息性消息最有用。

log_every_n(info, 10) << "got the " << google::counter << "th cookie";

上面的行在第 1、11、21...次执行时输出日志消息。请注意,特殊的 google::counter 值用于识别正在发生的重复。

您可以使用以下宏将条件日志记录和偶尔日志记录结合起来。

log_if_every_n(info, (size > 1024), 10) << "got the " << google::counter
                                           << "th big cookie";

您还可以将输出限制为前 n 次出现,而不是每 n 次输出一条消息:

LOG_FIRST_N(INFO, 20) << "Got the " << google::COUNTER << "th cookie";

输出前 20 次执行的日志消息。同样,google::counter 标识符指示正在发生的重复。

您可以拨打here了解更多信息

文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《使用glog插件在Go语言中进行日志文件的分割方法 》文章吧,也可关注golang学习网公众号了解相关技术文章。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>