Golang:Sirupsen/logrus是一个日志库

Sirupsen/logrus是一个日志库

文档

安装

bash 复制代码
go get github.com/sirupsen/logrus

代码示例

go 复制代码
package main

import (
    "github.com/sirupsen/logrus"
)

func main() {

    var log = logrus.New()

    log.Trace("Something very low level.")
    log.Debug("Useful debugging information.")
    log.Info("Something noteworthy happened!")
    log.Warn("You should probably take a look at this.")
    log.Error("Something failed but I'm not quitting.")
}

输出

复制代码
time="2024-05-27T11:27:24+08:00" level=info msg="Something noteworthy happened!"
time="2024-05-27T11:27:24+08:00" level=warning msg="You should probably take a look at this."
time="2024-05-27T11:27:24+08:00" level=error msg="Something failed but I'm not quitting."

其他参数

go 复制代码
// 1、设置格式
// json格式:&logrus.JSONFormatter{}
// 文本格式(默认):&log.TextFormatter{}
log.SetFormatter(&logrus.JSONFormatter{})

// 2、设置输出到文件

// 2.1、标准输出
log.Out = os.Stdout

// 2.2、文件输出
file, err := os.OpenFile("logrus.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
defer file.Close()

if err == nil {
    log.Out = file
} else {
    log.Info("Failed to log to file, using default stderr")
}

// 3、设置日志级别
log.SetLevel(logrus.DebugLevel)
相关推荐
陈随易12 小时前
AI时代,你还在坚持手搓文章吗
前端·后端·程序员
Bat U12 小时前
JavaEE|多线程初阶(七)
java·开发语言
大鱼七成饱12 小时前
VMware NAT模式下固定内网IP(附详细图文)
后端
谭欣辰13 小时前
C++ 排列组合完整指南
开发语言·c++·算法
foundbug99913 小时前
自适应滤除直达波干扰的MATLAB实现
开发语言·算法·matlab
XDH_CS14 小时前
MySQL 8.0 安装与 MySQL Workbench 使用全流程(超详细教程)
开发语言·数据库·mysql
小短腿的代码世界14 小时前
Qt实时盈亏计算深度解析:从持仓数据到动态盈亏展示
开发语言·qt
小康小小涵14 小时前
基于ESP32S3实现无人机RID模块底层源码编译
linux·开发语言·python
IT_陈寒14 小时前
Vue的这个响应式陷阱,我debug了一整天才爬出来
前端·人工智能·后端