在Debian系统上管理Golang应用程序的日志可以通过以下几种方法实现:
logrus、zap和zerolog等。go get命令安装所选的日志库。例如,安装logrus:go get github.com/sirupsen/logrus
logrus将日志写入文件并进行基本配置:package main
import (
    "github.com/sirupsen/logrus"
    "os"
)
func main() {
    logger := logrus.New()
    logger.SetFormatter(&logrus.JSONFormatter{})
    logFile, err := os.OpenFile("myapp.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
    if err != nil {
        logger.Fatalf("Failed to create log file: %v", err)
    }
    defer logFile.Close()
    logger.SetOutput(logFile)
    logger.Info("This is a log message.")
}
/etc/logrotate.d/golang文件,添加如下配置:/path/to/your/golang/app/logs/*.log {
    daily rotate 7
    compress
    missingok
    notifempty
    create 0640 root root
}
systemd服务运行Golang应用程序,可以使用journalctl来查看日志。例如,查看特定服务的日志:journalctl -u your-service.service -f
通过上述方法,你可以在Debian系统中有效地管理Golang应用程序的日志,确保系统的稳定性和可观测性。