refactor: surface hydrogen source failures

This commit is contained in:
kkfluous
2026-08-07 15:29:21 +08:00
parent 0d849fcbb1
commit 326201abab
6 changed files with 160 additions and 16 deletions
+20
View File
@@ -26,6 +26,26 @@ app.use('*', async (c, next) => {
return next();
});
app.onError((error, c) => {
const sourceCode = typeof error === 'object' && error !== null && 'code' in error
? String((error as { code?: unknown }).code ?? 'UNKNOWN')
: 'UNKNOWN';
if (c.req.path.includes('/hydrogen/')) {
console.error('[energy/hydrogen] data source unavailable', { code: sourceCode });
return c.json({
error: '当前无法读取氢能业务数据,请稍后重试',
code: 'HYDROGEN_SOURCE_UNAVAILABLE',
retryable: true,
}, 503);
}
console.error('[energy] request failed', { path: c.req.path, code: sourceCode });
return c.json({
error: '能源数据请求失败,请稍后重试',
code: 'ENERGY_REQUEST_FAILED',
retryable: true,
}, 500);
});
const HYDROGEN_MIN_DATE = '2024-01-01';
// hydrogen_fuel_ledger.refuel_time 已是业务本地时间字面值,直接使用即可(不再 +8 小时)