fix(server): hata yönetimini iyileştir

Zamanlayıcı ve qbit istemcisi bileşenlerinde hata işleme yeteneklerini
güçlendirir.

- loop.scheduler: qbit hatalarında sistem durumunu ve sağlık bilgisini
  güncelleme ekler.
- qbit.client: geçici ağ hatalarını (EAI_AGAIN vb.) algılayarak oturum
  durumunu sıfırlar.
- timer.worker: global hata yakalama ekleyerek işleyicinin çökmesini
  engeller ve hataları günlüğe kaydeder.
This commit is contained in:
2026-01-31 11:04:31 +03:00
parent 075780435c
commit 9b495b7bf7
3 changed files with 97 additions and 68 deletions

View File

@@ -48,6 +48,18 @@ export class QbitClient {
}
return await fn();
} catch (error) {
if (axios.isAxiosError(error)) {
const code = error.code ?? "";
const transient =
code === "EAI_AGAIN" ||
code === "ENOTFOUND" ||
code === "ECONNREFUSED" ||
code === "ECONNRESET" ||
code === "ETIMEDOUT";
if (transient) {
this.loggedIn = false;
}
}
if (
axios.isAxiosError(error) &&
(error.response?.status === 401 || error.response?.status === 403)