Skip to content

Commit bba7da4

Browse files
committed
add telegram error reporting
1 parent 7506eaf commit bba7da4

File tree

2 files changed

+51
-24
lines changed

2 files changed

+51
-24
lines changed

apis/anthropic/anthropic_resource.py

Lines changed: 41 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -117,11 +117,17 @@ def post(self):
117117
# response = client.messages.create(**data)
118118
responseJson = extract_response_data(response)
119119

120+
121+
except anthropic.APIError as e:
122+
error_code = getattr(e, 'status_code', 500)
123+
error_message = str(e)
124+
app.logger.error(f"API Error: ({error_code}) {error_message}")
125+
telegram_report_error("xai", "NO_CHAT_ID", error_code, error_message)
126+
raise CustomError(error_code, error_message)
120127
except anthropic.AnthropicError as e:
121-
error_code = e.status_code
122-
error_json = json.loads(e.response.text)
123-
error_message = error_json["error"]["message"]
124-
app.logger.error(f"Unexpected Error: ({error_code}) {error_message}")
128+
error_code = getattr(e, 'status_code', 500)
129+
error_message = str(e)
130+
app.logger.error(f"API Error: ({error_code}) {error_message}")
125131
telegram_report_error("anthropic", "NO_CHAT_ID", error_code, error_message)
126132
raise CustomError(error_code, error_message)
127133
except Exception as e:
@@ -154,12 +160,18 @@ def post(self):
154160
thread.start()
155161
return make_response(jsonify({"id": f"{tool_execution_id}"}), 200)
156162

163+
164+
except anthropic.APIError as e:
165+
error_code = getattr(e, 'status_code', 500)
166+
error_message = str(e)
167+
app.logger.error(f"API Error: ({error_code}) {error_message}")
168+
telegram_report_error("xai", "NO_CHAT_ID", error_code, error_message)
169+
raise CustomError(error_code, error_message)
157170
except anthropic.AnthropicError as e:
158-
error_code = e.status_code
159-
error_json = json.loads(e.response.text)
160-
error_message = error_json["error"]["message"]
161-
app.logger.error(f"Unexpected Error: ({error_code}) {error_message}")
162-
telegram_report_error("anthropic", "NO_CHAT_ID", error_code, error_message)
171+
error_code = getattr(e, 'status_code', 500)
172+
error_message = str(e)
173+
app.logger.error(f"API Error: ({error_code}) {error_message}")
174+
telegram_report_error("anthropic", "NO_CHAT_ID", error_code, error_message)
163175
raise CustomError(error_code, error_message)
164176
except Exception as e:
165177
app.logger.error(f"Ucnexpected Error: {str(e)}")
@@ -341,12 +353,17 @@ def post(self):
341353
else:
342354
raise CustomError(400, "Bad request")
343355

356+
except anthropic.APIError as e:
357+
error_code = getattr(e, 'status_code', 500)
358+
error_message = str(e)
359+
app.logger.error(f"API Error: ({error_code}) {error_message}")
360+
telegram_report_error("xai", "NO_CHAT_ID", error_code, error_message)
361+
raise CustomError(error_code, error_message)
344362
except anthropic.AnthropicError as e:
345-
error_code = e.status_code
346-
error_json = json.loads(e.response.text)
347-
error_message = error_json["error"]["message"]
348-
app.logger.error(f"Unexpected Error: ({error_code}) {error_message}")
349-
telegram_report_error("anthropic", "NO_CHAT_ID", error_code, error_message)
363+
error_code = getattr(e, 'status_code', 500)
364+
error_message = str(e)
365+
app.logger.error(f"API Error: ({error_code}) {error_message}")
366+
telegram_report_error("anthropic", "NO_CHAT_ID", error_code, error_message)
350367
raise CustomError(error_code, error_message)
351368
except Exception as e:
352369
app.logger.error(f"Unexpected Error: {str(e)}")
@@ -438,12 +455,17 @@ def post(self):
438455
return output.strip()
439456
else:
440457
raise CustomError(400, "Bad request")
458+
except anthropic.APIError as e:
459+
error_code = getattr(e, 'status_code', 500)
460+
error_message = str(e)
461+
app.logger.error(f"API Error: ({error_code}) {error_message}")
462+
telegram_report_error("xai", "NO_CHAT_ID", error_code, error_message)
463+
raise CustomError(error_code, error_message)
441464
except anthropic.AnthropicError as e:
442-
error_code = e.status_code
443-
error_json = json.loads(e.response.text)
444-
error_message = error_json["error"]["message"]
445-
app.logger.error(f"Unexpected Error: ({error_code}) {error_message}")
446-
telegram_report_error("anthropic", "NO_CHAT_ID", error_code, error_message)
465+
error_code = getattr(e, 'status_code', 500)
466+
error_message = str(e)
467+
app.logger.error(f"API Error: ({error_code}) {error_message}")
468+
telegram_report_error("anthropic", "NO_CHAT_ID", error_code, error_message)
447469
raise CustomError(error_code, error_message)
448470
except Exception as e:
449471
app.logger.error(f"Unexpected Error: {str(e)}")

apis/xai_resource.py

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
1+
import anthropic.types
12
from flask import request, Response, current_app as app
23
from flask_restx import Namespace, Resource
34
import anthropic
45
import json
56
from res import EngMsg as msg, CustomError
67
from config import config
8+
from services.telegram import telegram_report_error
79

810
api = Namespace('xai', description=msg.API_NAMESPACE_XAI_DESCRIPTION)
911

@@ -53,12 +55,15 @@ def post(self):
5355
# response = client.messages.create(**data)
5456
responseJson = extract_response_data(response)
5557

56-
except anthropic.AnthropicError as e:
57-
error_code = e.status_code
58-
error_json = json.loads(e.response.text)
59-
error_message = error_json["error"]["message"]
60-
app.logger.error(f"Unexpected Error: ({error_code}) {error_message}")
58+
59+
except anthropic.APIError as e:
60+
# This will catch BadRequestError, RateLimitError, AuthenticationError, etc.
61+
error_code = getattr(e, 'status_code', 500)
62+
error_message = str(e)
63+
app.logger.error(f"API Error: ({error_code}) {error_message}")
64+
telegram_report_error("xai", "NO_CHAT_ID", error_code, error_message)
6165
raise CustomError(error_code, error_message)
66+
6267
except Exception as e:
6368
app.logger.error(f"Unexpected Error: {str(e)}")
6469
raise CustomError(500, "An unexpected error occurred.")

0 commit comments

Comments
 (0)