| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- package common
- import (
- "fmt"
- "os"
- "time"
- "github.com/gin-gonic/gin"
- )
- func SysLog(s string) {
- t := time.Now()
- _, _ = fmt.Fprintf(gin.DefaultWriter, "[SYS] %v | %s \n", t.Format("2006/01/02 - 15:04:05"), s)
- }
- func SysError(s string) {
- t := time.Now()
- _, _ = fmt.Fprintf(gin.DefaultErrorWriter, "[SYS] %v | %s \n", t.Format("2006/01/02 - 15:04:05"), s)
- }
- func FatalLog(v ...any) {
- t := time.Now()
- _, _ = fmt.Fprintf(gin.DefaultErrorWriter, "[FATAL] %v | %v \n", t.Format("2006/01/02 - 15:04:05"), v)
- os.Exit(1)
- }
- func LogStartupSuccess(startTime time.Time, port string) {
- duration := time.Since(startTime)
- durationMs := duration.Milliseconds()
- // Get network IPs
- networkIps := GetNetworkIps()
- // Print blank line for spacing
- fmt.Fprintf(gin.DefaultWriter, "\n")
- // Print the main success message
- fmt.Fprintf(gin.DefaultWriter, " \033[32m%s %s\033[0m ready in %d ms\n", SystemName, Version, durationMs)
- fmt.Fprintf(gin.DefaultWriter, "\n")
- // Skip fancy startup message in container environments
- if !IsRunningInContainer() {
- // Print local URL
- fmt.Fprintf(gin.DefaultWriter, " ➜ \033[1mLocal:\033[0m http://localhost:%s/\n", port)
- }
- // Print network URLs
- for _, ip := range networkIps {
- fmt.Fprintf(gin.DefaultWriter, " ➜ \033[1mNetwork:\033[0m http://%s:%s/\n", ip, port)
- }
- // Print blank line for spacing
- fmt.Fprintf(gin.DefaultWriter, "\n")
- }
|