Egress Event Sozlesmeleri
Bu servis musteri policy'sine gore telemetri veya otomasyon kaynakli olaylari dis sistemlere iletir. Payload yapisi tek formatta sabit degildir; policy profili ile tanimlanir.
Girdi Eventleri
| Event | Aciklama |
|---|---|
window.ready.v1 | Telemetri zinciri tamamlandiginda olusan olgun veri eventi |
automation.command.requested.v1 | Otomasyonun komut talebini dis sisteme yansitmak icin |
automation.job.completed.v1 | Komut basari sonucunu dis sisteme bildirmek icin |
automation.job.failed.v1 | Komut hata sonucunu dis sisteme bildirmek icin |
Cikti Eventleri
Topic Esleme Kurali
| Topic | Event(ler) |
|---|---|
qapu.egress.events | egress.sent.v1, egress.failed.v1 |
qapu.dlq.egress | DLQ payload (max retry sonrasi) |
Not: Egress cikis eventleri tek bir ana topic'te (qapu.egress.events) toplanir. Event ayrimi payload icindeki event alaniyla yapilir.
egress.sent.v1
{
"event": "egress.sent.v1",
"meta": {
"schema_version": 1,
"trace_id": "eg-9f3f",
"producer_service": "egress-service",
"produced_at": "2026-04-15T10:30:10.100Z",
"process_ms": 44
},
"context": {
"device_id": "400000011D081B70",
"stream_id": 9823412,
"target_system": "acme-erp"
},
"data": {
"policy_id": 7,
"target_type": "webhook",
"http_status": 200,
"retry_count": 0,
"request_body_hash": "sha256:ab12..."
},
"error": null
}
egress.failed.v1
{
"event": "egress.failed.v1",
"meta": {
"schema_version": 1,
"trace_id": "eg-9f3f",
"producer_service": "egress-service",
"produced_at": "2026-04-15T10:30:12.300Z",
"process_ms": 71
},
"context": {
"device_id": "400000011D081B70",
"stream_id": 9823412,
"target_system": "acme-erp"
},
"data": {
"policy_id": 7,
"target_type": "webhook",
"retry_count": 3,
"dlq_written": true
},
"error": {
"failed_stage": "egress_delivery",
"error_code": "EGRESS_HTTP_TIMEOUT",
"error_message": "partner endpoint timeout",
"retryable": false,
"failed_at": "2026-04-15T10:30:12Z"
}
}
Bildirim Tetikleme (Opsiyonel)
Kalici hata sonrasinda operasyon ekibine bildirim icin action.execute.requested.v1 tetiklenebilir.
{
"event": "action.execute.requested.v1",
"meta": {
"schema_version": 1,
"trace_id": "eg-alert-28a1",
"producer_service": "egress-service"
},
"context": {
"device_id": "400000011D081B70"
},
"data": {
"source_type": "egress",
"source_ref_id": 7,
"severity": "high",
"message": "Egress delivery failed after max retries"
},
"error": null
}
Notlar
- Metrik, baz, sentez, window ve skor verilerinin hangisinin disari acilacagi policy ile belirlenir.
- Guvenlik profili (API key, OAuth2, mTLS, imza) partner bazinda degisebilir.