首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用于在停靠器卷中写入日志的日志包

用于在停靠器卷中写入日志的日志包
EN

Stack Overflow用户
提问于 2022-08-09 05:28:53
回答 1查看 118关注 0票数 -3

我们被赋予一个映射在坞容器中的命名卷(/app/logs)来写入日志。

运行在docker容器中的应用程序应该将日志写入/app/logs中的文件(如果不存在则创建/app/logs)。每个文件大小不能超过2MB。需要创建一个新的日志文件(在以前的文件达到2MB限制之后)来写入下一个日志条目。

这样的日志记录是否有日志包(在GoLang中)?

编辑:

代码语言:javascript
运行
复制
$ go mod tidy
go: finding module for package go.uber.org/zap
go: found go.uber.org/zap in go.uber.org/zap v1.22.0
go: go.uber.org/zap@v1.22.0 requires
        gopkg.in/yaml.v3@v3.0.1: unrecognized import path "gopkg.in/yaml.v3": reading https://gopkg.in/yaml.v3?go-get=1: 502 Bad Gateway
        server response: Cannot obtain refs from GitHub: cannot talk to GitHub: Get https://github.com/go-yaml/yaml.git/info/refs?service=git-upload-pack: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
EN

回答 1

Stack Overflow用户

发布于 2022-08-09 08:28:10

您可以使用https://github.com/natefinch/lumberjack或使用https://github.com/uber-go/zap与伐木机集成。就像zap FAQ中的那样:

代码语言:javascript
运行
复制
// lumberjack.Logger is already safe for concurrent use, so we don't need to
// lock it.
w := zapcore.AddSync(&lumberjack.Logger{
  Filename:   "/var/log/myapp/foo.log",
  MaxSize:    500, // megabytes
  MaxBackups: 3,
  MaxAge:     28, // days
})
core := zapcore.NewCore(
  zapcore.NewJSONEncoder(zap.NewProductionEncoderConfig()),
  w,
  zap.InfoLevel,
)
logger := zap.New(core)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73286939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档