获取凭证的错误信息
(self, filename: str, mode: str = "geminicli")
| 879 | return False |
| 880 | |
| 881 | async def get_credential_errors(self, filename: str, mode: str = "geminicli") -> Dict[str, Any]: |
| 882 | """获取凭证的错误信息""" |
| 883 | self._ensure_initialized() |
| 884 | filename = os.path.basename(filename) |
| 885 | |
| 886 | try: |
| 887 | table_name = self._get_table_name(mode) |
| 888 | async with self._pool.acquire() as conn: |
| 889 | row = await conn.fetchrow( |
| 890 | f"SELECT error_codes, error_messages FROM {table_name} WHERE filename = $1", |
| 891 | filename |
| 892 | ) |
| 893 | |
| 894 | if row: |
| 895 | return { |
| 896 | "filename": filename, |
| 897 | "error_codes": json.loads(row["error_codes"] or "[]"), |
| 898 | "error_messages": json.loads(row["error_messages"] or "[]"), |
| 899 | } |
| 900 | |
| 901 | return {"filename": filename, "error_codes": [], "error_messages": []} |
| 902 | |
| 903 | except Exception as e: |
| 904 | log.error(f"Error getting credential errors {filename}: {e}") |
| 905 | return {"filename": filename, "error_codes": [], "error_messages": [], "error": str(e)} |
| 906 | |
| 907 | # ============ 模型级冷却管理 ============ |
| 908 |
no test coverage detected