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)
相关推荐
lars_lhuan3 分钟前
Go Context
golang
2401_873544924 分钟前
基于C++的游戏引擎开发
开发语言·c++·算法
小江的记录本5 分钟前
【Redis】Redis常用命令速查表(完整版)
java·前端·数据库·redis·后端·spring·缓存
add45a5 分钟前
C++中的组合模式
开发语言·c++·算法
dys_Codemonkey6 分钟前
ROS 2 环境配置与 Shell 配置文件详解(zsh/bash)ROS 2 多工作空间规范配置
开发语言·chrome·bash
2501_945423549 分钟前
模板编程中的SFINAE技巧
开发语言·c++·算法
AMoon丶9 分钟前
Golang--垃圾回收
java·linux·开发语言·jvm·后端·算法·golang
☆56611 分钟前
C++中的策略模式应用
开发语言·c++·算法
Dylan~~~12 分钟前
Go语言Web框架选型指南:从入门到精通
开发语言·前端·golang
Densen201412 分钟前
企业H5站点升级PWA (二)
java·后端·spring