feat(oauth): use slogger #6

merged
opened by brookjeynes.dev targeting master from push-trrpxxyxxmot
Changed files
+9 -5
internal
server
+1 -1
internal/server/app.go
···
idResolver := atproto.DefaultResolver()
-
oauth, err := oauth.New(config, posthog)
if err != nil {
return nil, fmt.Errorf("failed to start oauth handler: %w", err)
}
···
idResolver := atproto.DefaultResolver()
+
oauth, err := oauth.New(config, posthog, log.SubLogger(logger, "oauth"))
if err != nil {
return nil, fmt.Errorf("failed to start oauth handler: %w", err)
}
+4 -3
internal/server/oauth/handler.go
···
import (
"encoding/json"
-
"log"
"net/http"
"github.com/go-chi/chi/v5"
···
jwks := o.Config.OAuth.Jwks
pubKey, err := pubKeyFromJwk(jwks)
if err != nil {
-
log.Printf("failed to parse public key: %v", err)
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
···
sessData, err := o.ClientApp.ProcessCallback(ctx, r.URL.Query())
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
if err := o.SaveSession(w, r, sessData); err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
···
Event: ph.UserSignInSuccessEvent,
})
if err != nil {
-
log.Println("failed to enqueue posthog event:", err)
}
}
···
import (
"encoding/json"
"net/http"
"github.com/go-chi/chi/v5"
···
jwks := o.Config.OAuth.Jwks
pubKey, err := pubKeyFromJwk(jwks)
if err != nil {
+
o.Logger.Error("failed to parse public key", "err", err)
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
···
sessData, err := o.ClientApp.ProcessCallback(ctx, r.URL.Query())
if err != nil {
+
o.Logger.Error("failed to process callback", "err", err)
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
if err := o.SaveSession(w, r, sessData); err != nil {
+
o.Logger.Error("failed to save session", "err", err)
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
···
Event: ph.UserSignInSuccessEvent,
})
if err != nil {
+
o.Logger.Error("failed to enqueue posthog event", "err", err)
}
}
+4 -1
internal/server/oauth/oauth.go
···
import (
"errors"
"fmt"
"net/http"
"time"
···
Config *config.Config
JwksUri string
Posthog posthog.Client
}
-
func New(config *config.Config, ph posthog.Client) (*OAuth, error) {
var oauthConfig oauth.ClientConfig
var clientUri string
···
SessionStore: sessStore,
JwksUri: jwksUri,
Posthog: ph,
}, nil
}
···
import (
"errors"
"fmt"
+
"log/slog"
"net/http"
"time"
···
Config *config.Config
JwksUri string
Posthog posthog.Client
+
Logger *slog.Logger
}
+
func New(config *config.Config, ph posthog.Client, logger *slog.Logger) (*OAuth, error) {
var oauthConfig oauth.ClientConfig
var clientUri string
···
SessionStore: sessStore,
JwksUri: jwksUri,
Posthog: ph,
+
Logger: logger,
}, nil
}