Github 中最受欢迎的Go日志库集合整理

      任何一个系统开发,都离不开完备的日志系统。go 日志不同其他语言,比如 java 由于 commons-logging 日志标准,和不同实现 如log4j,slf4j,logback,但都是统一调用标准接口;python 中标准logging 模块,功能强大,基本上满足各种需求。但是在golang 语言开发中,目前阅读了几个开源代码,都是自己实现了一套日志记录标准,并没有采用go 官方 log 模块。golang's log 模块主要提供了3类接口。分别是 “Print Panic Fatal ”,对每一类接口其提供了3中调用方式,分别是 "Xxxx 、 Xxxxln 、Xxxxf",基本和fmt中的相关函数类似;但功能有限,很难比如按天,按照容量自动输出拆封生成新日志。如果自己开发一套日子,基本上要满足日志等级输出如DEBUG,INFO,WARN,ERROR/FATAL 、支持输出 console 和滚动式文件、参数格式化输出、自定义格式化模板,当然如果支持更高级别如按照pakcage输出到不同文件,按照日志级别输出到不同地方那就更帅气了。

下面罗列觉得可能后期会用开源项目

log 对比
project starsforksdescription
logrus89951071Logrus is a structured logger for Go (golang), completely API compatible with the standard library logger.
zap5292376blazing fast, structured, leveled logging in Go.
zerolog141485The zerolog package provides a fast and simple logger dedicated to JSON output.
blog4go22032BLog4go is an efficient logging library written in the Go programming language, providing logging hook, log rotate, filtering and formatting log message.
    

logrus是已知的Go语言日志库中在github中stars数最多的日志库,功能强大,性能也不错。另外值得一提的是logrus的一个fork库gogap/logrus,可以配置输出到文件和graylog日志系统,基础的level、调用链、行号,文件切分都有,特色是结构化日志可以被统计和索引,借助graylog就可以做日志分析,不过这个库很久没有维护了。

zap是Go中一个快速,结构化,分级日志库,Uber出品。能够激活强大的ad-hoc分析, 灵活的仪表板, 其功能超过其他工具ELK, Splunk, 和 Sentry. 所有日志消息都是JSON-serialized。具体参考 Go高性能日志库zap详细分析 。

zerolog也是一款性能相当好的日志库,有趣的是zerolog和zap都在自家的Github库首页中的性能对比数据里打败了对方,zerolog 是受到uber 的日志库zap 的启发,golang社区里,对高性能日志库的追求,引发了编译器团队对一些使用模式的优化。

blog4go是高性能日志库。创新地使用“边解析边输出”方法进行日志输出,同时支持回调函数、日志淘汰和配置文件。可以解决高并发,调用日志函数频繁的情境下,日志库造成的性能问题。

 最后 提供两个  benchmark库,提供的部分Go日志库的性能对比数据,供技术选型时参考

  https://github.com/hnakamur/go-log-benchmarks
  https://github.com/imkira/go-loggers-bench

上一篇文章 go-grpc 初步体验

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在Github上,有许多欢迎的深度学习开源项目。以下是其一些备欢迎的深度学习开源项目: 1. TensorFlow:由Google开发的机器学习,广泛用于深度学习任务。 2. PyTorch:由Facebook开发的深度学习框架,提供动态计算图和丰富的功能。 3. Keras:一个高级神经网络API,可以运行在多个深度学习框架上,如TensorFlow和Theano。 4. Caffe:一个高效的深度学习框架,以速度和模型表达能力著称。 5. MXNet:一个高度可扩展的深度学习框架,支持分布式训练和多种编程语言。 6. Theano:一个基于Python的开源,用于定义、优化和评估数学表达式,特别适用于深度学习。 7. scikit-learn:一个用于机器学习和数据挖掘的Python,包含了许多经典的机器学习算法。 8. Darknet:一个轻量级的深度学习框架,特别适用于物体检测和图像分类任务。 9. Caffe2:Facebook开发的深度学习框架,具有高效的分布式训练能力。 10. Torch:一个科学计算框架,提供了丰富的工具和,适用于深度学习任务。 这只是其一小部分欢迎的深度学习开源项目。Github上还有许多其他项目,涵盖了各种深度学习任务和应用领域,供开发者们使用和贡献。 ### 回答2: GitHub上最欢迎的57个深度学习开源项目是基于其Stars数和社区贡献度的排名,以下是其一些项目的简介: 1. TensorFlow:由Google开发的深度学习框架,功能强大且广泛应用。 2. PyTorch:Facebook开发的深度学习框架,被广泛用于研究和开发。 3. Keras:用户友好的深度学习,可以在TensorFlow、Theano等后端运行。 4. Caffe:质量高且快速的深度学习框架,适用于计算机视觉任务。 5. Theano:用于定义、优化和评估数学表达式的Python,支持高效的机器学习计算。 6. Torch:基于LUA的科学计算框架,广泛用于机器学习。 7. MXNet:适用于分布式、高效的深度学习框架。 8. Fast.ai:构建在PyTorch之上的高级API,使深度学习更易于使用。 9. TensorFlow.js:用于在浏览器上进行机器学习的。 10. Dlib:用于图像处理和机器学习任务的C++。 11. DeepSpeech:Mozilla构建的自动语音识别框架。 12. OpenCV:图像处理和计算机视觉的开源,具有深度学习支持。 13. GANs:生成对抗网络的PyTorch实现,用于生成逼真的图像。 14. TensorFlow Object Detection API:用于目标检测的TensorFlow API。 15. MLBox:一个自动化机器学习工具,用于数据预处理、特征选择、模型选择等。 16. NLP:使用自然语言处理技术的Python。 17. Autokeras:自动化机器学习,用于快速构建和部署模型。 18. OpenAI Gym:用于开发和比较强化学习算法的工具包。 19. DeepFace:FaceNet网络的Keras实现,用于人脸识别。 20. StyleTransfer:用于图像风格转换的PyTorch实现。 这只是其一些欢迎的深度学习项目,GitHub上还有许多其他优秀的项目,每个项目都具有不同的特点和应用领域。无论您是初学者还是专业人士,都可以在GitHub上找到适合您需求的项目。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值