Calibration Event Sözleşmeleri
Bu sayfa Calibration Servisi tarafından üretilen eventlerin payload sözleşmelerini, alan anlamlarını ve örneklerini toplu olarak verir.
Event Haritası
| Event | Ne zaman üretilir? | Consumer | Amaç |
|---|---|---|---|
calibration.ready.v1 | Kalibrasyon tamamlandığında | Raw Writer Servisi | Kalibre edilmiş verinin yazıma hazır olduğunu bildirmek |
calibration.failed.v1 | Kalibrasyon adımı teknik hatayla sonlandığında | Ops/Replay Worker | Hata görünürlüğü ve replay tetiklemesi |
Ortak Envelope
Calibration eventleri aşağıdaki ortak zarf yapısını kullanır:
{
"event": "<name>.v1",
"meta": {
"schema_version": 1,
"trace_id": "9f3f...",
"producer_service": "calibration-service",
"produced_at": "2026-03-11T15:22:09.102Z",
"process_ms": 14
},
"context": {
"device_id": "400000011D081B70",
"stream_id": 9823412,
"device_time": "2026-03-11T15:22:06Z",
"stream_time": "2026-03-11T15:22:09Z"
},
"data": {},
"error": null
}
Alan notları:
meta.process_ms: Calibration servisinin bu event için uçtan uca işlem süresi (ms).context.device_time: Cihazın ürettiği zaman damgası.context.stream_time: Stream servisinde kaydın açıldığı sistem zamanı.
calibration.ready.v1
Kalibrasyon adımı başarıyla tamamlandığında üretilir.
Alanlar
| Alan | Tip | Zorunlu | Açıklama |
|---|---|---|---|
event | string | Evet | Sabit değer: calibration.ready.v1 |
meta.schema_version | integer | Evet | Event şema sürümü |
meta.trace_id | string | Evet | Dağıtık izleme kimliği |
meta.producer_service | string | Evet | Sabit değer: calibration-service |
meta.produced_at | datetime | Evet | Event üretim zamanı |
meta.process_ms | integer | Evet | İşlem süresi (ms) |
context.device_id | string | Evet | Cihaz kimliği |
context.stream_id | integer | Evet | Stream kaydı kimliği |
context.device_time | datetime | Evet | Cihaz zamanı |
context.stream_time | datetime | Evet | Stream zamanı |
data.calibration_version | integer | Evet | Uygulanan kalibrasyon sürümü |
data.calibrated | boolean | Evet | Kalibrasyon uygulandı mı |
data.warnings[] | string[] | Hayır | Non-blocking uyarılar (CT_CONFIG_MISS gibi) |
error | null | Evet | Başarı eventinde daima null |
Örnek
{
"event": "calibration.ready.v1",
"meta": {
"schema_version": 1,
"trace_id": "9f3f...",
"producer_service": "calibration-service",
"produced_at": "2026-03-11T15:22:09.102Z",
"process_ms": 14
},
"context": {
"device_id": "400000011D081B70",
"stream_id": 9823412,
"device_time": "2026-03-11T15:22:06Z",
"stream_time": "2026-03-11T15:22:09Z"
},
"data": {
"calibration_version": 12,
"calibrated": true,
"warnings": [
"CT_CONFIG_MISS"
]
},
"error": null
}
calibration.failed.v1
Kalibrasyon adımı teknik nedenle tamamlanamadığında üretilir.
Alanlar
| Alan | Tip | Zorunlu | Açıklama |
|---|---|---|---|
event | string | Evet | Sabit değer: calibration.failed.v1 |
meta.schema_version | integer | Evet | Event şema sürümü |
meta.trace_id | string | Evet | Dağıtık izleme kimliği |
meta.producer_service | string | Evet | Sabit değer: calibration-service |
meta.produced_at | datetime | Evet | Event üretim zamanı |
meta.process_ms | integer | Evet | Hatanın oluştuğu ana kadar geçen süre |
context.device_id | string | Evet | Cihaz kimliği |
context.stream_id | integer | Evet | Stream kaydı kimliği |
error.failed_stage | string | Evet | Sabit değer: calibration |
error.error_code | string | Evet | Makine okunur hata kodu |
error.error_message | string | Evet | İnsan okunur hata açıklaması |
error.failed_at | datetime | Evet | Hata oluşum zamanı |
Örnek
{
"event": "calibration.failed.v1",
"meta": {
"schema_version": 1,
"trace_id": "9f3f...",
"producer_service": "calibration-service",
"produced_at": "2026-03-11T15:22:09.140Z",
"process_ms": 13
},
"context": {
"device_id": "400000011D081B70",
"stream_id": 9823412
},
"error": {
"failed_stage": "calibration",
"error_code": "CAL_RULE_STORE_UNAVAILABLE",
"error_message": "calibration rules could not be loaded",
"failed_at": "2026-03-11T15:22:09Z"
}
}
Hata Kodları Referansı
Aşağıdaki hata kodları calibration.failed.v1 içinde kullanılabilir:
CAL_RULE_STORE_UNAVAILABLECAL_SNAPSHOT_INVALIDCALCULATION_ERROR
Not: CT_CONFIG_MISS bir hata kodu değildir; kalibrasyon devam ederken calibration.ready.v1 içindeki data.warnings[] alanında taşınır.