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)
相关推荐
自珍JAVA5 小时前
访问者模式:让你的代码优雅地“拜访”对象结构
后端
吃好睡好便好6 小时前
用while循环语句求和
开发语言·学习·算法·matlab·信息可视化
TechWayfarer6 小时前
查询IP所在地的3种方案:从API到离线库,风控场景怎么选?
开发语言·网络·python·网络协议·tcp/ip
摇滚侠6 小时前
Java 零基础全套教程,集合框架,笔记 153-163
java·开发语言·笔记
程序员榴莲6 小时前
Python 单例模式
开发语言·python·单例模式
L、2187 小时前
CANN算子开发调试实战:从“Segmentation Fault“到定位根因的完整流程
java·开发语言
毅航7 小时前
AI 浪潮下,会用工具不等于具备能力
后端·程序员·ai编程
狗凯之家源码网7 小时前
基于PHP的多语言跨境电商B2B2C商城系统技术解析
开发语言·php
比特森林探险记8 小时前
go 语言中的context 解读和用法
开发语言·后端·golang
古城小栈8 小时前
Rust 调用 C 语言库 实战指南(企业级)
c语言·开发语言·rust