This commit is contained in:
vipg
2026-02-10 10:53:26 +08:00
parent 919ef704af
commit a33e6be08f
4 changed files with 28 additions and 0 deletions

View File

@@ -4,6 +4,7 @@ import (
"log" "log"
"os" "os"
"fmt" "fmt"
"path/filepath"
) )
type Logger interface { type Logger interface {
@@ -46,3 +47,20 @@ func (p *prefLogger) Fatalf(format string, v ...any) {
func WithPrefix(prefix string) Logger { func WithPrefix(prefix string) Logger {
return &prefLogger{prefix: prefix} return &prefLogger{prefix: prefix}
} }
func SetupFile(path string) error {
if path == "" {
return fmt.Errorf("log file path empty")
}
if err := os.MkdirAll(filepath.Dir(path), 0755); err != nil {
return err
}
f, err := os.OpenFile(path, os.O_CREATE|os.O_APPEND|os.O_WRONLY, 0644)
if err != nil {
return err
}
defaultLogger = &stdLogger{
l: log.New(f, "[app] ", log.LstdFlags|log.Lshortfile),
}
return nil
}

View File

@@ -15,6 +15,9 @@ import (
func main() { func main() {
port := utils.GetEnv("PORT", "8081") port := utils.GetEnv("PORT", "8081")
if err := logger.SetupFile(utils.GetEnv("LOG_FILE", "/var/log/app/country.log")); err != nil {
logger.L().Printf("setup file logger error: %v", err)
}
srv := &http.Server{ srv := &http.Server{
Addr: ":" + port, Addr: ":" + port,
Handler: routes(), Handler: routes(),

View File

@@ -38,6 +38,8 @@ services:
JWT_TTL: "24h" JWT_TTL: "24h"
ports: ports:
- "8080:8080" - "8080:8080"
volumes:
- ./shared_data/logs/:/var/log/app/
depends_on: depends_on:
postgres: postgres:
condition: service_healthy condition: service_healthy
@@ -53,6 +55,8 @@ services:
# PORT: "8081" # PORT: "8081"
# ports: # ports:
# - "8081:8081" # - "8081:8081"
# volumes:
# - ../shared_data/logs/:/var/log/app/
# restart: unless-stopped # restart: unless-stopped
volumes: volumes:

View File

@@ -23,6 +23,9 @@ var pg *sql.DB
func main() { func main() {
port := utils.GetEnv("PORT", "8080") port := utils.GetEnv("PORT", "8080")
if err := logger.SetupFile(utils.GetEnv("LOG_FILE", "/var/log/app/user.log")); err != nil {
logger.L().Printf("setup file logger error: %v", err)
}
srv := &http.Server{ srv := &http.Server{
Addr: ":" + port, Addr: ":" + port,
Handler: routes(), Handler: routes(),