当前位置: 首页 > 面试题库 >

如何在golang中实现基于级别的日志记录?

穆才良
2023-03-14
问题内容

在golang中是否有任何适用于基于级别的日志记录的好的包装器?如果没有,我应该如何自己实施?

我想要的很简单。我想要一些功能,例如

log.Error()
log.Info()

等将其输出显示到stdout并将它们保存在日志文件中(基于作为命令行参数提供给程序的级别)。如何实现此包装器?


问题答案:

现在已有的答案已经很老了,还有更多建议:

  • https://github.com/op/go-logging-比这里小
  • https://github.com/sirupsen/logrus-用于许多流行的项目,例如Docker
  • https://github.com/inconshreveable/log15
  • https://github.com/golang/glog-来自Google,在Go中实现其C ++ glog库
  • https://github.com/go-kit/kit/tree/master/log专注于“结构化日志记录”,它更适合工具使用
  • https://github.com/uber-go/zap- “快如闪电”


 类似资料:
  • 在我的Java应用程序中,我使用SLF4J+Logback进行日志记录。我在开发环境中使用调试级日志记录,在生产环境中使用错误级日志记录。但是有一些消息我无论如何都想要记录下来,无论日志级别如何(类似于,但使用的是logger)。 有什么切实可行的方法可以实现这一点吗?我可以使用error或更低的级别,但我想做的是给出一些信息,所以在语义上是错误的,它不是错误。 我可以在我的中为我的类定义另一个记

  • 我想更改我的Quarkus应用程序的日志记录级别。 如何从配置文件或运行时执行此操作?

  • 我有一个用例,在这个用例中,我运行了数千个SQL查询和日志记录集,按照现在的情况,将每个查询写到控制台需要花费大量时间,并且会使客户端的调用超时。我试着将pom.xml中dev概要文件的logback.loglevel属性设置为ERROR,但是没有用。 所以我的问题是: < li >是否可以为单独的REST调用配置日志级别? < li >如何全局配置应用程序的日志级别?

  • 问题内容: 我在系统中收到以下消息:“ FacesMessage已入队…。 ”。 Sun的JavaServer Faces实现(1.2_07-b03-FCS)的解决方案是将其添加到web.xml: 但是出于某种原因,该解决方案不适用于我正在使用 Mojarra(1.2_15-b01-FCS)的 该实施 。 该文档说,我只需要简单地更改RenderResponsePhase的记录器即可。 Faces

  • 如何设置在TomEE中运行的OpenEJB组件的日志记录级别?我想从的源代码中查看调试日志记录语句。 我尝试修改conf/logging.properties并在WAR的WEB-INF\类中添加一个logging.properties文件,但我找不到正确的组合,我甚至不确定这些是要修改/创建的正确文件。

  • 问题内容: 我想为我的应用程序使用loglevel TRACE(5),因为我认为这还不够。另外不是我想要的。如何将自定义日志级别添加到Python记录器? 我有以下内容: 在我的代码中,我通过以下方式使用它: 现在我想打电话 在此先感谢您的帮助。 编辑 (2016年12月8日):我[pfa的)可接受答案更改为IMHO,这是基于Eric S的非常好的建议的出色解决方案。 问题答案: @Eric S.