Ana içeriğe geç

Sık Sorulan Sorular ve Troubleshooting

S: Stream kaydı oluşmuyor, nereden başlamalıyım?

Kontrol sırası:

  1. qapu.ingest.raw eventi Stream servisine geliyor mu?
  2. Redis device_buffer:{device_id} keyi var mı?
  3. Envanter kontrolünde DB hatası var mı?
  4. streams insert hatası alınıyor mu?

Kısa teşhis tablosu:

BelirtiOlası NedenKontrol
Hiç stream yokKafka consume yokConsumer lag ve topic offset kontrol et
stream.failed.v1 artmışDB/Redis erişim hatasıServis log ve connection pool kontrol et
Bazı cihazlarda stream yokEnvanter lookup hatasıdevices/modems/sims sorgularını kontrol et

S: message_type bilinmiyor ama paket neden reddedilmiyor?

Bu davranış tasarımsal olarak böyledir:

  • message_type alanı boş gelebilir
  • alan dolu ama sözlükte yoksa da paket işlenmeye devam eder
  • message_type_id null yazılır
  • stream.message_type.unmapped.v1 inceleme eventi üretilir

Bu sayede saha verisi kaybedilmez, sınıflandırma problemi ops tarafında görünür olur.


S: Cihaz envanteri ne zaman güncellenir?

Stream servisi her pakette şu alanları karşılaştırır:

  • device_id
  • imei
  • iccid
  • firmware

Yeni/değişen değer varsa create/update yapılır ve ilgili audit event üretilir. Aynıysa no-op geçilir.


S: stream_id Redis'e neden geri yazılıyor?

stream_id Redis'e yazılarak downstream servislerin aynı akışta ortak referans kullanması sağlanır.

  • Kalibrasyon, synthesis, rule/action gibi adımlar aynı stream bağlamı ile devam eder.
  • DB join ve trace işlemleri kolaylaşır.

S: Kafka publish başarısız olursa veri kaybolur mu?

Hayır.

  • streams kaydı DB'de durur.
  • Redis güncellemesi başarılıysa state korunur.
  • Kafka publish için outbox/retry mekanizması devreye girer.

Bu durumda downstream gecikir ama accepted stream kaydı kaybolmaz.


S: Replay nasıl çalışır? Aynı paket tekrar mı gelir?

Normal ingest akışında duplicate paket Stream'e gelmez. Replay ayrı servis tarafından başlatılır:

  1. İşlenemeyen raw_data kaydı tespit edilir
  2. Replay servisi yeni bir iş isteği oluşturur
  3. Stream akışı yeniden tetiklenir

Yani bu aynı cihaz retry paketi değil, kontrollü backend replay işlemidir.


S: Hangi metrikleri izlemeliyim?

MetrikAlarm Eşiği
stream_created_rateAniden düşerse alarm
stream_failed_rate> %1 ise alarm
inventory_update_rateAniden yükselirse saha değişim/fault incele
unmapped_message_type_rate> 0 ise inceleme listesi
redis_stream_update_failures> 0 ise kritik
kafka_publish_failures> 0 ise retry/outbox takibi

S: Flow ve event detaylarını nerede görebilirim?