Logrus 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
Logrus 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
Logrus 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
Logrus 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
Logrus 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 MIT
开发语言 Google Go 查看源码 »
操作系统 跨平台
软件类型 开源软件
开源组织
地区 不详
投 递 者 段段段落
适用人群 未知
收录时间 2019-05-06

软件简介

Logrus 是一个结构化、可插拔的 Go 日志框架,完全兼容官方 log 库接口。功能强大的同时,Logrus 具有高度的灵活性,它提供了自定义插件的功能,有 TEXT 与 JSON 两种可选的日志输出格式。

Logrus 还支持 Field 机制和可扩展的 HOOK 机制。它鼓励用户通过 Field 机制进行精细化的、结构化的日志记录,允许用户通过 hook 的方式将日志分发到任意地方。许多著名开源项目,如 docker、prometheus 等都是使用 Logrus 来记录日志。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (9)

加载中

引用来自“吾爱”的评论

性能貌似没有zap高

引用来自“ifsc01”的评论

有性能瓶颈?

引用来自“没有头像也是一种帅”的评论

差距比你想象中的小的多

引用来自“贾一饼”的评论

zap底层大量c,性能差了几十倍

引用来自“没有头像也是一种帅”的评论

膜拜大佬,底层大量C😓😓😓
哈哈哈,没有,看错库了
2019/05/15 11:13
回复
举报

引用来自“吾爱”的评论

性能貌似没有zap高

引用来自“ifsc01”的评论

有性能瓶颈?

引用来自“没有头像也是一种帅”的评论

差距比你想象中的小的多

引用来自“贾一饼”的评论

zap底层大量c,性能差了几十倍
膜拜大佬,底层大量C😓😓😓
2019/05/15 00:06
回复
举报

引用来自“吾爱”的评论

性能貌似没有zap高

引用来自“ifsc01”的评论

有性能瓶颈?

引用来自“没有头像也是一种帅”的评论

差距比你想象中的小的多
应该是,一般也遇不到瓶颈
2019/05/14 15:05
回复
举报

引用来自“吾爱”的评论

性能貌似没有zap高

引用来自“ifsc01”的评论

有性能瓶颈?

引用来自“没有头像也是一种帅”的评论

差距比你想象中的小的多
zap底层大量c,性能差了几十倍
2019/05/12 02:11
回复
举报

引用来自“吾爱”的评论

性能貌似没有zap高

引用来自“ifsc01”的评论

有性能瓶颈?
差距比你想象中的小的多
2019/05/10 15:46
回复
举报

引用来自“吾爱”的评论

性能貌似没有zap高
有性能瓶颈?
2019/05/10 12:04
回复
举报
性能貌似没有zap高
2019/05/10 09:39
回复
举报
类似的 https://github.com/uber-go/zap
2019/05/10 09:33
回复
举报
先拿小本本记下
2019/05/08 22:34
回复
举报
更多评论
暂无内容
2019/10/09 16:11

Logrus源码阅读(2)--logrus生命周期

上一篇介绍logrus的基本用法, 本篇文章介绍logrus的整个生命周期 func main() {   log.Info("hello logrus") } 从上面这个简单的例子, 追踪logrus的整个生命周期 初始化 // exported.go:L108 func Info(args ...interface{}) {   std.Info(args...) } Info函数的参数是一个可变参数, 接收任意类型的参数 // exported.go:L11 var (   // std is the name of the standard logger in stdlib `log`   std = New() ) func StandardLogg...

0
0
发表了博客
2019/11/08 14:30

logrus 剖析之 formatter

使用 logrus 通过 formatter 来定义输出日志的格式,具体例子如下: package main import (   log "github.com/Sirupsen/logrus" ) func main() {   formatter := &log.TextFormatter{ // 不需要彩色日志     DisableColors: true, // 定义时间戳格式     TimestampFormat: "2006-01-02 15:04:05",   }   log.SetFormatter(formatter)   log.Printf("hello world") } 打印的日志内容如下: time="2019-11-07 17:41:20" level=...

0
0
发表了博客
2019/11/10 14:51

logrus 剖析之 hook

logrus 通过实现 Hook接口扩展 hook 机制,可以根据需求将日志分发到任意的存储介质, 比如 es, mq 或者监控报警系统,及时获取异常日志。可以说极大的提高了日志系统的可扩展性。 hook 内部实现 Hook 接口定义如下: type Hook interface { // 定义哪些等级的日志触发 hook 机制   Levels() []Level // hook 触发器的具体执行操作 // 如果 Fire 执行失败,错误日志会重定向到标准错误流   Fire(*Entry) error } 那logrus的内部...

0
0
发表了博客
2020/01/08 23:36

logrus日志框架

[toc] <br/> logrus介绍 golang标准库的日志框架非常简单,仅仅提供了print,panic和fatal三个函数。对于更精细的日志级别、日志文件分割,以及日志分发等方面,并没有提供支持。在golang的世界,流行的日志框架包括logrus、zap、zerolog、seelog等。 <br/> logrus配置 1. 日志级别: logrus有7个日志级别,依次是Trace << Debug << Info << Warning << Error << Fatal << Panic // 只输出不低于当前级别是日志数据 logrus.Set...

0
0
发表于开发技能专区
2020/10/16 11:53

golang logrus 日志切分

记录一下, logrus日志切分 ```go package main import ( "fmt" "github.com/lestrrat-go/file-rotatelogs" "io" "io/ioutil" "time" "github.com/rifflock/lfshook" "github.com/sirupsen/logrus" ) const ( _infoPath = "./logs/access.log" _errorPath = "./logs/error.log" _rotationHour = 24 _maxAgeHour = 72 _timeStampFormat = "2016-01-02 15:04:05" ) //var _logEntry *logrus.Entry var log *logrus.Logger func m...

0
0
发表了博客
2019/03/14 17:10

logrus学习笔记

logrus源码:https://github.com/sirupsen/logrus 1.logrus.Entry结构 1.1 类型 type Entry struct { Logger *Logger // 指向Logger对象 Data Fields // 包含用户设置的所有字段,Fields结构:type Fields map[string]interface{} Time time.Time // log entry创建时间 Level Level // 可以记录的日志级别为Trace, Debug, Info, Warn, Error, Fatal ...

0
0
发表了博客
2020/08/30 22:58

Golang日志框架之logrus

golang日志库 golang标准库的日志框架非常简单,仅仅提供了print,panic和fatal三个函数对于更精细的日志级别、日志文件分割以及日志分发等方面并没有提供支持。所以催生了很多第三方的日志库,但是在golang的世界里,没有一个日志库像slf4j那样在Java中具有绝对统治地位。golang中,流行的日志框架包括logrus、zap、zerolog、seelog等。 logrus是目前Github上star数量最多的日志库,目前(2018.08,下同)star数量为8119,fork数...

0
0
发表于开发技能专区
2019/04/20 09:39

golang 日志 logrus demo

>logrus 是结构化的,与 golang 标准库完全兼容的 golang 日志打印框架。支持 Filed 和 HOOK 机制,自带 text 和 json 两种日志输出格式 ```package main import ( "github.com/rifflock/lfshook" "github.com/sirupsen/logrus" ) var Log *logrus.Logger func NewLogger() *logrus.Logger { if Log != nil { return Log } pathMap := lfshook.PathMap{ logrus.InfoLevel: "./info.log", logrus.WarnLevel: "./warn.log", logr...

0
0
发表于软件架构专区
2020/02/28 16:13

Go日志——logrus

安装 安装: go get github.com/sirupsen/logrus hello world package main import log "github.com/sirupsen/logrus" func main() { log.Info("我是一条日志") log.WithFields(log.Fields{"key":"value"}).Info("我要打印了") } 输出: time="2019-05-24T08:13:47+08:00" level=info msg="我是一条日志" time="2019-05-24T08:13:47+08:00" level=info msg="我要打印了" key=value 日志格式 将日志输出格式设置为JSON格...

0
0
发表了博客
2019/09/13 19:27

Go第三方日志库logrus

[TOC] 更新、更全的《Go从入门到放弃》的更新网站,更有python、go、人工智能教学等着你:https://www.cnblogs.com/nickchen121/p/11517502.html <p>日志是程序中必不可少的一个环节,由于Go语言内置的日志库功能比较简洁,我们在实际开发中通常会选择使用第三方的日志库来进行开发。本文介绍了<code>logrus</code>这个日志库的基本使用。</p> 一、logrus介绍 <p>Logrus是Go(golang)的结构化logger,与标准库logger完全API兼容...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
9 评论
73 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部