Merge: structured logging (slog)
This commit is contained in:
@@ -4,6 +4,7 @@ import (
|
||||
"crypto/tls"
|
||||
"database/sql"
|
||||
"fmt"
|
||||
"log/slog"
|
||||
"net"
|
||||
|
||||
pb "git.wntrmute.dev/kyle/eng-pad-server/gen/engpad/v1"
|
||||
@@ -46,7 +47,7 @@ func Start(cfg Config) (*grpc.Server, error) {
|
||||
syncSvc := &SyncService{DB: cfg.DB, BaseURL: cfg.BaseURL}
|
||||
pb.RegisterEngPadSyncServer(srv, syncSvc)
|
||||
|
||||
fmt.Printf("gRPC listening on %s\n", cfg.Addr)
|
||||
slog.Info("gRPC server started", "addr", cfg.Addr)
|
||||
go func() { _ = srv.Serve(lis) }()
|
||||
|
||||
return srv, nil
|
||||
|
||||
23
internal/log/log.go
Normal file
23
internal/log/log.go
Normal file
@@ -0,0 +1,23 @@
|
||||
package log
|
||||
|
||||
import (
|
||||
"log/slog"
|
||||
"os"
|
||||
"strings"
|
||||
)
|
||||
|
||||
func Init(level string) {
|
||||
var lvl slog.Level
|
||||
switch strings.ToLower(level) {
|
||||
case "debug":
|
||||
lvl = slog.LevelDebug
|
||||
case "warn":
|
||||
lvl = slog.LevelWarn
|
||||
case "error":
|
||||
lvl = slog.LevelError
|
||||
default:
|
||||
lvl = slog.LevelInfo
|
||||
}
|
||||
handler := slog.NewJSONHandler(os.Stderr, &slog.HandlerOptions{Level: lvl})
|
||||
slog.SetDefault(slog.New(handler))
|
||||
}
|
||||
@@ -4,6 +4,7 @@ import (
|
||||
"crypto/tls"
|
||||
"database/sql"
|
||||
"fmt"
|
||||
"log/slog"
|
||||
"net/http"
|
||||
"time"
|
||||
|
||||
@@ -42,7 +43,7 @@ func Start(cfg Config) (*http.Server, error) {
|
||||
IdleTimeout: 120 * time.Second,
|
||||
}
|
||||
|
||||
fmt.Printf("REST API listening on %s\n", cfg.Addr)
|
||||
slog.Info("REST API started", "addr", cfg.Addr)
|
||||
go func() { _ = srv.ListenAndServeTLS("", "") }()
|
||||
|
||||
return srv, nil
|
||||
|
||||
@@ -6,6 +6,7 @@ import (
|
||||
"fmt"
|
||||
"html/template"
|
||||
"io/fs"
|
||||
"log/slog"
|
||||
"net/http"
|
||||
"time"
|
||||
|
||||
@@ -85,10 +86,10 @@ func Start(cfg Config) (*http.Server, error) {
|
||||
Certificates: []tls.Certificate{tlsCert},
|
||||
MinVersion: tls.VersionTLS13,
|
||||
}
|
||||
fmt.Printf("Web UI listening on %s (TLS)\n", cfg.Addr)
|
||||
slog.Info("web UI started", "addr", cfg.Addr, "tls", true)
|
||||
go func() { _ = srv.ListenAndServeTLS("", "") }()
|
||||
} else {
|
||||
fmt.Printf("Web UI listening on %s\n", cfg.Addr)
|
||||
slog.Info("web UI started", "addr", cfg.Addr, "tls", false)
|
||||
go func() { _ = srv.ListenAndServe() }()
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user