Skip to content

Conversation

@swrzalek
Copy link

@swrzalek swrzalek commented Feb 9, 2026

Summary

  • Prefixes all API error messages and logs with their source (e.g., [Anthropic API], [Exa API],
    [Financial Datasets API])
  • Adds identifyProvider() helper to identify LLM providers based on model name
  • Updates withRetry() to log errors with provider context
  • Standardizes error message format across all external API integrations

Before:

Error: [GoogleGenerativeAI Error]: Error fetching from
https://generativelanguage.googleapis.com/v1beta/models/gemini-3-flash-preview:generateContent: [400 Bad
Request] API key not valid. Please pass a valid API key. [{"@type":"type.googleapis.com/google.rpc.ErrorIn
fo","reason":"API_KEY_INVALID","domain":"googleapis.com","metadata":{"service":"generativelanguage.googlea
pis.com"}},{"@type":"type.googleapis.com/google.rpc.LocalizedMessage","locale":"en-US","message":"API key
not valid. Please pass a valid API key."}]

After:

[ERROR [Google API] error (attempt 1/3): [GoogleGenerativeAI Error]: Error fetching from               │
│       https://generativelanguage.googleapis.com/v1beta/models/gemini-3-flash-preview:generateContent:  │
│       [400 Bad Request] API key not valid. Please pass a valid API key.                                │
│       [{"@type":"type.googleapis.com/google.rpc.ErrorInfo","reason":"API_KEY_INVALID","domain":"google │
│       apis.com","metadata":{"service":"generativelanguage.googleapis.com"}},{"@type":"type.googleapis. │
│       com/google.rpc.LocalizedMessage","locale":"en-US","message":"API key not valid. Please pass a    │
│       valid API key."}]                                                                                │
│ [ERROR [Google API] error (attempt 2/3): [GoogleGenerativeAI Error]: Error fetching from               │
│       https://generativelanguage.googleapis.com/v1beta/models/gemini-3-flash-preview:generateContent:  │
│       [400 Bad Request] API key not valid. Please pass a valid API key.                                │
│       [{"@type":"type.googleapis.com/google.rpc.ErrorInfo","reason":"API_KEY_INVALID","domain":"google │
│       apis.com","metadata":{"service":"generativelanguage.googleapis.com"}},{"@type":"type.googleapis. │
│       com/google.rpc.LocalizedMessage","locale":"en-US","message":"API key not valid. Please pass a    │
│       valid API key."}]                                                                                │
│ [ERROR [Google API] error (attempt 3/3): [GoogleGenerativeAI Error]: Error fetching from               │
│       https://generativelanguage.googleapis.com/v1beta/models/gemini-3-flash-preview:generateContent:  │
│       [400 Bad Request] API key not valid. Please pass a valid API key.                                │
│       [{"@type":"type.googleapis.com/google.rpc.ErrorInfo","reason":"API_KEY_INVALID","domain":"google │
│       apis.com","metadata":{"service":"generativelanguage.googleapis.com"}},{"@type":"type.googleapis. │
│       com/google.rpc.LocalizedMessage","locale":"en-US","message":"API key not valid. Please pass a    │
│       valid API key."}]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant