Skip to content

Commit c0a0435

Browse files
committed
Fix models endpoint
1 parent 546e3aa commit c0a0435

2 files changed

Lines changed: 34 additions & 1 deletion

File tree

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
package server
2+
3+
import (
4+
"net/http"
5+
"time"
6+
7+
"github.com/dvcrn/gemini-code-assist-proxy/internal/logger"
8+
)
9+
10+
// loggingMiddleware logs all incoming requests
11+
func loggingMiddleware(next http.Handler) http.Handler {
12+
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
13+
start := time.Now()
14+
15+
// Log the request
16+
logger.Get().Info().
17+
Str("method", r.Method).
18+
Str("url", r.URL.String()).
19+
Str("remote_addr", r.RemoteAddr).
20+
Msg("Incoming request")
21+
22+
// Call the next handler
23+
next.ServeHTTP(w, r)
24+
25+
// Log the response
26+
logger.Get().Info().
27+
Str("method", r.Method).
28+
Str("url", r.URL.String()).
29+
Dur("duration", time.Since(start)).
30+
Msg("Finished request")
31+
})
32+
}

internal/server/server.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ func (s *Server) Start(addr string) error {
4848
s.startTokenRefreshLoop()
4949

5050
logger.Get().Info().Msgf("Starting proxy server on %s", addr)
51-
return http.ListenAndServe(addr, s.mux)
51+
return http.ListenAndServe(addr, loggingMiddleware(s.mux))
5252
}
5353

5454
// LoadCredentials loads OAuth credentials using the configured provider
@@ -123,6 +123,7 @@ func (s *Server) setupRoutes() {
123123
s.mux.HandleFunc("/admin/credentials/status", s.adminMiddleware(s.credentialsStatusHandler))
124124
s.mux.HandleFunc("/v1beta/models/", s.adminMiddleware(s.streamGenerateContentHandler))
125125
s.mux.HandleFunc("/v1/models/", s.modelsHandler)
126+
s.mux.HandleFunc("/v1/models", s.modelsHandler)
126127
s.mux.HandleFunc("/v1/chat/completions", s.adminMiddleware(s.openAIChatCompletionsHandler))
127128
}
128129

0 commit comments

Comments
 (0)