diff --git a/api/db.py b/api/db.py index f36462a..1b314b6 100644 --- a/api/db.py +++ b/api/db.py @@ -122,6 +122,7 @@ class Database: script_mode TEXT, transport TEXT, -- 'bt' | 'tcp' mock_mode INTEGER DEFAULT 0, + car_info TEXT, -- LLM diagnosis_text TEXT, @@ -199,11 +200,12 @@ class Database: vin, dtc_count, pid_count, duration_ms, response_count, error_count, retry_count, timeout_count, script_mode, - transport, mock_mode, + transport, mock_mode, car_info, diagnosis_text, diagnosis_len, llm_model, llm_duration_ms, llm_success, raw_responses, request_id, response_json - ) VALUES (?,?,?,?, ?,?,?,?,?, ?,?,?,?,?, ?,?,?, ?,?,?, ?,?,?, ?,?,?, ?,?, ?,?,?,?, ?,?,?,?) + ) VALUES (?,?,?,?, ?,?,?,?,?, ?,?,?,?,?, ?,?,?, ?,?,?, ?,?,?, ?,?,?, ?,?, ?,?,?,?, ?,?,?,?,?) + """, ( ci.get("client_ip"), ci.get("real_ip"), ci.get("user_agent"), ci.get("content_length"), @@ -216,6 +218,7 @@ class Database: ci.get("duration_ms"), len(responses), ci.get("error_count", 0), ci.get("retry_count", 0), ci.get("timeout_count", 0), ci.get("script_mode"), ci.get("transport"), ci.get("mock_mode", 0), + ci.get("car_info", ""), diagnosis, len(diagnosis), llm_model, llm_duration_ms, 1 if llm_success else 0, json.dumps(responses, ensure_ascii=False) if responses else None, diff --git a/api/routes.py b/api/routes.py index 443dcec..c22f67e 100644 --- a/api/routes.py +++ b/api/routes.py @@ -115,6 +115,7 @@ def register(app): parsed = parse_batch(responses) car_info = (data.get("car_info") or "").strip() + client_info["car_info"] = car_info cfg = load() api_key = cfg["llm"]["api_key"]