Ana içeriğe geç

Heartbeat Event Sozlesmeleri

Bu sayfa Heartbeat Servisi tarafindan uretilen eventlerin payload sozlesmelerini ve zorunlu alanlarini verir.

Event Haritasi

EventNe zaman kullanilir?ProducerConsumerAmac
heartbeat.metrics.updated.v1Ping sonucunda durum degismeden metrik guncellendigindeHeartbeat ServisiObserver/API ProjectionSon olcum metriklerini yaymak
heartbeat.status.changed.v1Durum gecisi oldugunda (online/degraded/offline)Heartbeat ServisiObserver/AlarmCanlilik degisimini duyurmak
heartbeat.failed.v1Islem teknik hata ile sonlandigindaHeartbeat ServisiObserverHata gorunurlugu ve retry orchestration

Ortak Envelope

{
"event": "<name>.v1",
"meta": {
"schema_version": 1,
"trace_id": "hb-2a6c",
"producer_service": "heartbeat-service",
"produced_at": "2026-04-14T10:20:01.120Z",
"process_ms": 7
},
"context": {
"sim_id": 41,
"iccid": "8945001234567890123"
},
"data": {},
"error": null
}

heartbeat.metrics.updated.v1

AlanTipZorunluAciklama
eventstringEvetSabit deger: heartbeat.metrics.updated.v1
meta.schema_versionintegerEvetEvent sema surumu
meta.trace_idstringEvetDagitik izleme kimligi
meta.producer_servicestringEvetSabit deger: heartbeat-service
meta.produced_atdatetimeEvetEvent uretim zamani
context.sim_idintegerEvetSIM kimligi
context.iccidstringEvetSIM ICCID
data.statusstringEvetonline | degraded | offline
data.ping_time_msnumber/nullEvetPing suresi (basarisiz durumda null)
data.consecutive_fail_countintegerEvetArdisik hata sayisi
data.last_checked_atdatetimeEvetSon kontrol zamani
errornullEvetBasari eventinde daima null

heartbeat.status.changed.v1

AlanTipZorunluAciklama
eventstringEvetSabit deger: heartbeat.status.changed.v1
meta.*objectEvetOrtak metadata
context.sim_idintegerEvetSIM kimligi
context.iccidstringEvetSIM ICCID
data.previous_statusstringEvetOnceki durum
data.current_statusstringEvetYeni durum
data.consecutive_fail_countintegerEvetGuncel ardisik hata sayisi
data.last_success_atdatetime/nullEvetSon basarili kontrol
errornullEvetBasari eventinde daima null

heartbeat.failed.v1

AlanTipZorunluAciklama
eventstringEvetSabit deger: heartbeat.failed.v1
meta.*objectEvetOrtak metadata
context.sim_idinteger/nullHayirHata global asamada ise bos olabilir
context.iccidstring/nullHayirHata global asamada ise bos olabilir
error.failed_stagestringEvettarget_selection | ping | persist | publish
error.error_codestringEvetMakine okunur kod
error.error_messagestringEvetAciklama
error.retryablebooleanEvetYeniden denenebilirlik
error.failed_atdatetimeEvetHata zamani

Retryable Karar Matrisi

  • HEARTBEAT_DB_TRANSIENT: true
  • HEARTBEAT_KAFKA_TRANSIENT: true
  • HEARTBEAT_TARGET_QUERY_INVALID: false
  • HEARTBEAT_CONFIG_INVALID: false
  • HEARTBEAT_PING_TIMEOUT: true