商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > centos环境下golang日志如何配置

centos环境下golang日志如何配置

  发布于2026-07-15 阅读(0)

扫一扫,手机访问

在CentOS上配置Golang日志,其实说难不难,关键看你怎么选。最常用的就两条路:要么用标准库自带的log,轻量省事;要么上第三方库,比如logruszap,功能更全。下面直接拆开讲,从零开始写。

centos环境下golang日志如何配置

方案一:使用标准库 log

标准库的好处是用不着额外引入依赖,适合小项目或者快速原型。操作起来也很直观:

  1. 先新建一个文件,比如叫 logger.go,专门放日志配置代码。
  2. 然后贴下面这段代码进去:
package main

import (
    "fmt"
    "log"
    "os"
)

func init() {
    // 设置日志输出格式
    log.SetFlags(log.LstdFlags | log.Lshortfile)

    // 设置日志输出文件
    logFile, err := os.OpenFile("app.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
    if err != nil {
        log.Fatalf("打开日志文件失败: %v", err)
    }
    defer logFile.Close()
    log.SetOutput(logFile)
}

func main() {
    log.Println("这是一条日志信息")
    log.Printf("这是一个带参数的日志信息: %d", 42)
}

这段代码干了三件事:先配好输出格式(带时间戳、文件名和行号),再打开一个叫app.log的日志文件,最后把这个文件设成日志的目的地。以后所有log.Printlnlog.Printf写的东西都乖乖进这个文件。

  1. 在主程序里引用 logger.go 就可以直接用了,比如这样:
package main

import (
    "your_project/logger"
)

func main() {
    logger.Info("这是一条日志信息")
    logger.Warn("这是一个警告信息")
    logger.Error("这是一个错误信息")
}

跑起来以后,日志就会源源不断地写进 app.log,查起来很方便。

方案二:上第三方库 logrus

如果项目大了,标准库的调味料可能不太够——比如你想控制日志级别、输出到多个目标、或者换更漂亮的格式。这时候用 logrus 显然更顺手。安装很简单:

go get github.com/sirupsen/logrus

然后在 logger.go 里换成这样的配置:

package main

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

func init() {
    logrus.SetFormatter(&logrus.TextFormatter{
        FullTimestamp: true,
    })
    logrus.SetOutput(os.Stdout)
    logrus.SetLevel(logrus.DebugLevel)
}

func main() {
    logrus.Info("这是一条日志信息")
    logrus.Warn("这是一个警告信息")
    logrus.Error("这是一个错误信息")
}

这里我们把日志输出到控制台(os.Stdout),格式用了带完整时间戳的文本形式,日志级别设成了DebugLevel——也就是说,从调试信息到错误都会显示出来。你要是只想看到警告以上,改成WarnLevel就行。

  1. 主程序里引用方式几乎一样:
package main

import (
    "your_project/logger"
)

func main() {
    logger.Info("这是一条日志信息")
    logger.Warn("这是一个警告信息")
    logger.Error("这是一个错误信息")
}

现在日志直接刷在控制台上了,调试期间特别方便。当然,你也可以根据需要调整输出文件、格式和级别——这一步留给读者自己玩。

本文转载于:https://www.yisu.com/ask/59795993.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注