发布于2026-06-29 阅读(0)
扫一扫,手机访问
在Debian上用Golang做日志处理,其实是个很常见的需求。无论你是跑个小脚本,还是维护一套生产服务,日志都是排查问题的第一道防线。下面就把这套流程拆开讲讲,从环境准备到代码落地,一条龙说清楚。

第一步,先把Golang装好。如果系统里还没有,打开终端跑两行命令就行:
sudo apt-get update
sudo apt-get install golang-go
装完之后,找个顺手的目录,建一个项目文件夹,里面放个main.go文件——这是咱们的主战场。
mkdir my-golang-logging-project
cd my-golang-logging-project
touch main.go
接下来就是写代码。Go标准库自带的log包虽然简单,但应付日常场景绰绰有余。下面这段示例,会把日志同时写到文件和控制台,方便你实时查看,也方便事后回溯。
package main
import (
"log"
"os"
)
func main() {
// 设置日志输出到文件
logFile, err := os.OpenFile("logs/app.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
if err != nil {
log.Fatalf("error opening log file: %v", err)
}
defer logFile.Close()
// 设置日志输出到文件和控制台
log.SetOutput(io.MultiWriter(logFile, os.Stdout))
// 记录日志
log.Println("This is an info log.")
log.Printf("This is a formatted %s log with an int: %d\n", "info", 42)
}
代码逻辑很直白:先打开或创建logs/app.log文件,然后用io.MultiWriter把文件和控制台绑在一起,后续所有日志就同时往两个地方写。最后用Println和Printf分别记录一条简单信息和一条带格式的信息。
写完之后,在终端里运行:
go run main.go
程序会自动创建logs文件夹,并在里面生成app.log文件。想看日志内容,用cat命令或者直接打开文件都行:
cat logs/app.log
到这里,一个基础的日志处理流程就跑通了。当然,这只是一个起点。实际项目中你可能需要调整日志级别、格式化输出、或者按日期轮转文件。这时候可以考虑引入第三方库,比如logrus或zap,它们能提供更丰富的功能,性能也更好。不过,从标准库入手,把基础逻辑摸清楚,再去用那些高级工具,心里会更踏实。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8