infra: add logging wrapping

Resolves issues with gcp cloud logging quirks such as field names
This commit is contained in:
Arjun Patel
2026-05-27 15:49:27 -07:00
parent e804cee229
commit 563c91e7d5
30 changed files with 347 additions and 250 deletions
+11 -9
View File
@@ -3,13 +3,14 @@ package main
import (
"context"
"fmt"
"log/slog"
"net"
"net/http"
"os"
"os/signal"
"syscall"
"github.com/flowy-live/llink/internal/utils/flog"
"github.com/flowy-live/llink/internal"
"github.com/flowy-live/llink/internal/auth"
"github.com/flowy-live/llink/internal/db"
@@ -17,8 +18,9 @@ import (
"github.com/flowy-live/llink/internal/pusher"
"github.com/flowy-live/llink/internal/utils"
pbpusher "github.com/flowy-live/llink/genproto/llink/pusher"
"google.golang.org/grpc"
pbpusher "github.com/flowy-live/llink/genproto/llink/pusher"
)
func main() {
@@ -56,15 +58,15 @@ func main() {
// --- gRPC server (internal presence queries) ---
grpcListener, err := net.Listen("tcp", fmt.Sprintf("0.0.0.0:%s", grpcPort))
if err != nil {
slog.Error("failed to listen for gRPC", "port", grpcPort, "error", err)
flog.Error("failed to listen for gRPC", "port", grpcPort, "error", err)
os.Exit(1)
}
grpcServer := grpc.NewServer()
pbpusher.RegisterPusherServiceServer(grpcServer, server)
go func() {
slog.Info("gRPC server listening", "port", grpcPort)
flog.Info("gRPC server listening", "port", grpcPort)
if err := grpcServer.Serve(grpcListener); err != nil {
slog.Error("gRPC server failed", "error", err)
flog.Error("gRPC server failed", "error", err)
}
}()
@@ -79,9 +81,9 @@ func main() {
httpServer := &http.Server{Addr: httpAddr, Handler: mux}
go func() {
slog.Info("HTTP server listening", "addr", httpAddr)
flog.Info("HTTP server listening", "addr", httpAddr)
if err := httpServer.ListenAndServe(); err != nil && err != http.ErrServerClosed {
slog.Error("HTTP server failed", "error", err)
flog.Error("HTTP server failed", "error", err)
os.Exit(1)
}
}()
@@ -91,10 +93,10 @@ func main() {
signal.Notify(sigCh, syscall.SIGTERM, syscall.SIGINT)
<-sigCh
slog.Info("shutting down...")
flog.Info("shutting down...")
cancel()
grpcServer.GracefulStop()
httpServer.Shutdown(context.Background())
slog.Info("shutdown complete")
flog.Info("shutdown complete")
}