Improve logging system

This commit is contained in:
2025-08-25 19:43:39 +03:00
parent 19e9b6ecdb
commit ff8c130ed0
+34 -4
View File
@@ -3,7 +3,6 @@ package main
import ( import (
"flag" "flag"
"fmt" "fmt"
"gopkg.in/yaml.v3"
"io" "io"
"log" "log"
"net" "net"
@@ -16,6 +15,8 @@ import (
"strings" "strings"
"syscall" "syscall"
"time" "time"
"gopkg.in/yaml.v3"
) )
type EnitServiceState uint8 type EnitServiceState uint8
@@ -102,16 +103,31 @@ func main() {
} }
func setupESVMLogger() error { func setupESVMLogger() error {
// Create esvm log directory
err := os.MkdirAll("/var/log/esvm", 0755) err := os.MkdirAll("/var/log/esvm", 0755)
if err != nil { if err != nil {
return err return err
} }
// Create esvm old log directory
err = os.MkdirAll("/var/log/esvm/old", 0755)
if err != nil {
return err
}
// Move old log file
if _, err := os.Stat("/var/log/esvm/esvm.log"); err == nil {
os.Rename("/var/log/esvm/esvm.log", "/var/log/esvm/old/esvm.log")
}
// Open new log file
loggerFile, err := os.OpenFile("/var/log/esvm/esvm.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666) loggerFile, err := os.OpenFile("/var/log/esvm/esvm.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
if err != nil { if err != nil {
return err return err
} }
// Initialize logger and print a header line
logger = log.New(loggerFile, "[ESVM] ", log.Lshortfile|log.LstdFlags) logger = log.New(loggerFile, "[ESVM] ", log.Lshortfile|log.LstdFlags)
// Print an empty line as separator
_, err = loggerFile.WriteString("------ " + time.Now().Format(time.UnixDate) + " ------\n") _, err = loggerFile.WriteString("------ " + time.Now().Format(time.UnixDate) + " ------\n")
return nil return nil
@@ -366,16 +382,30 @@ func (service *EnitService) setCurrentState(state EnitServiceState) error {
} }
func (service *EnitService) GetLogFile() (file *os.File, err error) { func (service *EnitService) GetLogFile() (file *os.File, err error) {
err = os.MkdirAll(path.Join("/var/log/esvm/"), 0755) // Create esvm log directory
err = os.MkdirAll("/var/log/esvm", 0755)
if err != nil { if err != nil {
return nil, err return nil, err
} }
file, err = os.OpenFile(path.Join("/var/log/esvm/", service.Name+".log"), os.O_APPEND|os.O_WRONLY|os.O_CREATE, 0644) // Create esvm old log directory
err = os.MkdirAll("/var/log/esvm/old", 0755)
if err != nil { if err != nil {
return nil, err return nil, err
} }
// Move old log file
if _, err := os.Stat(path.Join("/var/log/esvm/", service.Name+".log")); err == nil {
os.Rename(path.Join("/var/log/esvm/", service.Name+".log"), path.Join("/var/log/esvm/old", service.Name+".log"))
}
// Open new log file
file, err = os.OpenFile(path.Join("/var/log/esvm/", service.Name+".log"), os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
if err != nil {
return nil, err
}
// Initialize logger and print a header line
_, err = file.WriteString("------ " + time.Now().Format(time.UnixDate) + " ------\n") _, err = file.WriteString("------ " + time.Now().Format(time.UnixDate) + " ------\n")
if err != nil { if err != nil {
file.Close() file.Close()