feat: enhance request logging and account handling in CLI proxy

- Added helper functions to log API request and response payloads in the Gin context.
- Improved `AccountInfo` to support cookie-based authentication in addition to API key and OAuth.
- Updated log messages for better clarity on account types used.
This commit is contained in:
Luis Pater
2025-09-22 03:09:15 +08:00
parent d9ad65622a
commit d5ad5fab87
3 changed files with 64 additions and 17 deletions

View File

@@ -254,10 +254,13 @@ func (m *Manager) executeWithProvider(ctx context.Context, provider string, req
return cliproxyexecutor.Response{}, errPick
}
if isAPIKey, info := auth.AccountInfo(); isAPIKey {
log.Debugf("Use API key %s for model %s", util.HideAPIKey(info), req.Model)
} else {
log.Debugf("Use OAuth %s for model %s", info, req.Model)
accountType, accountInfo := auth.AccountInfo()
if accountType == "api_key" {
log.Debugf("Use API key %s for model %s", util.HideAPIKey(accountInfo), req.Model)
} else if accountType == "oauth" {
log.Debugf("Use OAuth %s for model %s", accountInfo, req.Model)
} else if accountType == "cookie" {
log.Debugf("Use Cookie %s for model %s", util.HideAPIKey(accountInfo), req.Model)
}
tried[auth.ID] = struct{}{}
@@ -298,10 +301,13 @@ func (m *Manager) executeStreamWithProvider(ctx context.Context, provider string
return nil, errPick
}
if isAPIKey, info := auth.AccountInfo(); isAPIKey {
log.Debugf("Use API key %s for model %s", util.HideAPIKey(info), req.Model)
} else {
log.Debugf("Use OAuth %s for model %s", info, req.Model)
accountType, accountInfo := auth.AccountInfo()
if accountType == "api_key" {
log.Debugf("Use API key %s for model %s", util.HideAPIKey(accountInfo), req.Model)
} else if accountType == "oauth" {
log.Debugf("Use OAuth %s for model %s", accountInfo, req.Model)
} else if accountType == "cookie" {
log.Debugf("Use Cookie %s for model %s", util.HideAPIKey(accountInfo), req.Model)
}
tried[auth.ID] = struct{}{}