better erro logging
This commit is contained in:
+5
-5
@@ -5,7 +5,7 @@ import uuid
|
|||||||
import datetime
|
import datetime
|
||||||
import sys
|
import sys
|
||||||
import json
|
import json
|
||||||
from flask import Flask, request, jsonify
|
from flask import Flask, request, jsonify, current_app
|
||||||
from pymongo import MongoClient
|
from pymongo import MongoClient
|
||||||
from APIs import generate, EdamamAPI
|
from APIs import generate, EdamamAPI
|
||||||
from APIs.mqtt import send_command
|
from APIs.mqtt import send_command
|
||||||
@@ -79,7 +79,7 @@ async def cooking_params():
|
|||||||
f.write(base64.b64decode(camera_image_b64))
|
f.write(base64.b64decode(camera_image_b64))
|
||||||
data["camera_image"] = filepath
|
data["camera_image"] = filepath
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"[Error] Failed to save camera image: {str(e)}")
|
current_app.logger.exception("Failed to save camera image")
|
||||||
return jsonify({"error": f"Failed to save camera image: {str(e)}"}), 500
|
return jsonify({"error": f"Failed to save camera image: {str(e)}"}), 500
|
||||||
|
|
||||||
# 2. Run Vision Safety Check & Cook Planner Concurrently
|
# 2. Run Vision Safety Check & Cook Planner Concurrently
|
||||||
@@ -98,13 +98,13 @@ async def cooking_params():
|
|||||||
safety_result, cook_plan = await asyncio.gather(safety_task, planner_task)
|
safety_result, cook_plan = await asyncio.gather(safety_task, planner_task)
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"[Error] Exception during safety check or cook planning: {str(e)}")
|
current_app.logger.exception("Exception during safety check or cook planning")
|
||||||
return jsonify({"error": f"Task execution failed: {str(e)}"}), 500
|
return jsonify({"error": f"Task execution failed: {str(e)}"}), 500
|
||||||
|
|
||||||
# 3. Evaluate Safety Result
|
# 3. Evaluate Safety Result
|
||||||
data["safety_check"] = safety_result
|
data["safety_check"] = safety_result
|
||||||
if not safety_result.get("is_safe", True):
|
if not safety_result.get("is_safe", True):
|
||||||
print(f"[Safety Warning] Unsafe dish detected: {safety_result}")
|
current_app.logger.warning(f"Unsafe dish detected: {safety_result}")
|
||||||
return jsonify({
|
return jsonify({
|
||||||
"error": "Safety hazard detected in microwave area",
|
"error": "Safety hazard detected in microwave area",
|
||||||
"is_safe": False,
|
"is_safe": False,
|
||||||
@@ -123,7 +123,7 @@ async def cooking_params():
|
|||||||
|
|
||||||
return jsonify(cook_plan), 201
|
return jsonify(cook_plan), 201
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"[Error] Exception in /cooking-params: {str(e)}")
|
current_app.logger.exception("Exception in /cooking-params")
|
||||||
|
|
||||||
@app.route("/telemetry", methods=["POST"])
|
@app.route("/telemetry", methods=["POST"])
|
||||||
def telemetry():
|
def telemetry():
|
||||||
|
|||||||
Reference in New Issue
Block a user