feat: add detailed OAuth config logging for troubleshooting

This commit is contained in:
garionion (aider) 2025-02-27 15:14:42 +01:00
parent e3d07fb1ca
commit 364a27e44f

24
main.go
View file

@ -79,7 +79,13 @@ func main() {
logger.Fatal("Failed to load config", zap.Error(cfgErr))
}
logger.Info("Loaded config", zap.Any("config", cfg))
// Add detailed logging of the OAuth config
logger.Info("OAuth Configuration",
zap.String("ClientID", cfg.OAuth.ClientID),
zap.String("ClientSecret", cfg.OAuth.ClientSecret),
zap.String("AuthURL", cfg.OAuth.AuthURL),
zap.String("TokenURL", cfg.OAuth.TokenURL),
zap.String("UserInfoURL", cfg.OAuth.UserInfoURL))
// Initialize OAuth2
oauthConfig = &oauth2.Config{
@ -92,7 +98,14 @@ func main() {
RedirectURL: fmt.Sprintf("http://localhost:%d/oauth/callback", cfg.Server.Port),
Scopes: []string{"profile", "email"},
}
fmt.Println(oauthConfig)
// Log the OAuth config that's actually being used
logger.Info("Initialized OAuth Config",
zap.String("ClientID", oauthConfig.ClientID),
zap.String("ClientSecret", oauthConfig.ClientSecret),
zap.String("AuthURL", oauthConfig.Endpoint.AuthURL),
zap.String("TokenURL", oauthConfig.Endpoint.TokenURL),
zap.String("RedirectURL", oauthConfig.RedirectURL))
// Initialize database connection
var dsn string
@ -229,6 +242,9 @@ func oauthMiddleware(next echo.HandlerFunc) echo.HandlerFunc {
return c.JSON(http.StatusUnauthorized, map[string]string{"error": "invalid Authorization header"})
}
// Log the UserInfoURL being used
logger.Info("Fetching user info", zap.String("UserInfoURL", cfg.OAuth.UserInfoURL))
// Validate token and fetch user info
userInfo, err := fetchUserInfo(token)
if err != nil {
@ -244,6 +260,10 @@ func oauthMiddleware(next echo.HandlerFunc) echo.HandlerFunc {
// Fetch user info from OAuth provider
func fetchUserInfo(token string) (map[string]interface{}, error) {
if cfg.OAuth.UserInfoURL == "" {
return nil, fmt.Errorf("UserInfoURL is empty")
}
req, err := http.NewRequest("GET", cfg.OAuth.UserInfoURL, nil)
if err != nil {
return nil, err