Performance & Scalability serimizin bir parçası
Tam kılavuzu okuyunEntegrasyon İzleme: Senkronizasyon Hatalarının Gelire Maliyet Olmadan Önce Tespit Edilmesi
En pahalı entegrasyon hatası kimsenin fark etmediği başarısızlıktır. Bir web kancası uç noktası, Cuma öğleden sonra etkinlik almayı sessizce durdurur. Pazartesi sabahı itibarıyla 200 sipariş ithal edilmedi, stoklar tüm kanallarda 48 saattir eski durumda ve müşteriler Cumartesi günü tükenen ürünler için "stokta" vaatleri alıyor.
Bu senaryo herkesin kabul ettiğinden daha sık gerçekleşir. Entegrasyon izleme, 30 saniyelik bir uyarı ile Pazartesi sabahı krizi arasındaki farktır. Her çok kanallı entegrasyon, e-Ticaret veri senkronizasyonunun belirli hata modları için tasarlanmış sağlık kontrollerine, hata sınıflandırmasına, yeniden deneme mantığına ve uyarılara ihtiyaç duyar.
Önemli Çıkarımlar
- Yalnızca çalışma süresini değil, veri tazeliğini de izleyin — olay almayı bırakan çalışan bir sistem, temel durum kontrollerine göre sağlıklı görünüyor
- Hataları, doğru yanıta yönlendirmek için önem derecesine ve kurtarılabilirliğe göre kategorilere ayırın (otomatik yeniden deneme veya manuel düzeltme)
- Geçersiz mektup kuyrukları, zehirli mesajların tüm boru hattınızı engellemesini önler
- Yalnızca teknik ölçümler (CPU, bellek) değil, iş etkisi ölçümleri (içe aktarılmayan siparişler, envanter kayması) hakkında uyarı
Neler İzlenmeli
Entegrasyon izleme üç katmanı kapsar: altyapı durumu, veri akışı durumu ve iş sonucu durumu.
Altyapı Sağlığı
| Metrik | Frekansı Kontrol Et | Uyarı Eşiği | Başarısızlığın Etkisi |
|---|---|---|---|
| API uç noktası kullanılabilirliği | Her 30 saniyede bir | 3 ardışık başarısızlık | Veri gönderilemiyor veya alınamıyor |
| Mesaj kuyruğu derinliği | Her dakika | 5 dakika boyunca 1.000'in üzerinde kuyruk derinliği | Birikmiş işlerin işlenmesi büyüyor |
| Çalışan işlem durumu | Her 30 saniyede bir | İşçi 1 dakika süreyle yerde | İşlenmeyen olaylar |
| Veritabanı bağlantı havuzu | Her dakika | Mevcut bağlantılar %10'un altında | Başarısız olan veya sıraya alınan sorgular |
| Redis bağlantısı | Her 30 saniyede bir | Bağlantı kesildi | Önbellek, kuyruklar ve kilitler başarısız oluyor |
| Disk alanı | Her 5 dakikada bir | %10'un altında ücretsiz | Günlük döndürme işlemi başarısız oluyor, DB duruyor |
Veri Akışı Durumu
| Metrik | Frekansı Kontrol Et | Uyarı Eşiği | Başarısızlığın Etkisi |
|---|---|---|---|
| Alınan siparişler (kanal başına) | Her 15 dakikada bir | Mesai saatleri içinde 2 saat boyunca sıfır sipariş | Eksik gelir ve sipariş karşılama gecikmeleri |
| Envanter senkronizasyon yaşı | Her 5 dakikada bir | Son başarılı senkronizasyon 10 dakikadan uzun süre önce | Aşırı satışa neden olan eski stok |
| Ürün feed'i durumu | Her saat | Feed reddedildi veya öğeler %5'in üzerinde onaylanmadı | Pazaryerindeki listelemeler devre dışı bırakıldı |
| Webhook teslim oranı | Her 15 dakikada bir | %95'in altında teslimat başarısı | Bırakılan etkinlikler |
| Dönüşüm hata oranı | Her 5 dakikada bir | %1'in üzerinde hata oranı | ERP'ye hatalı veri giriliyor |
| Uzlaşma sürüklenmesi | Her 6 saatte bir | Herhangi bir SKU'da 5 birimin üzerine çıkın | Envanter yanlışlığı |
İş Sonuç Sağlığı
| Metrik | Frekansı Kontrol Et | Uyarı Eşiği | Başarısızlığın Etkisi |
|---|---|---|---|
| Aşırı satış sayısı | Gerçek zamanlı | Herhangi bir aşırı satış olayı | Müşteri hayal kırıklığı, pazar cezası |
| Yerine getirilmeyen siparişlerin yaşlanması | Her saat | SLA'dan eski siparişler (24/48 saat) | Geç sevkiyatlar, kusur oranında artış |
| İade işlem süresi | Her saat | Ortalama 48 saatin üzerinde | Müşteri şikayetleri, pazaryerine müdahale |
| Kanal listeleme sayısı | Günlük | Düne göre %5'ten fazla düşüş | Listeden çıkarılan ürünler, gelir kaybı |
| Kanala göre gelir ve tahmin karşılaştırması | Günlük | Günlük tahminin %80'inin altında | Olası entegrasyon kesintisi veya listeleme sorunu |
Hata Sınıflandırması
Tüm hatalar eşit değildir. Geçici ağ zaman aşımı yeniden denemede kendi kendine çözülür. Bir veri doğrulama hatası insan araştırması gerektirir. Hız sınırı hatasının geri alınması gerekir. Hataların doğru şekilde sınıflandırılması yanıtı belirler.
Hata Türünden Çözüm Stratejisine
| Hata Türü | Örnekler | Otomatik Yeniden Dene | Eskalasyon | Çözünürlük |
|---|---|---|---|---|
| Geçici ağ | Bağlantı zaman aşımı, DNS hatası, 502/503/504 | Evet, üstel geri çekilme | 5 yeniden denemeden sonra | Genellikle birkaç dakika içinde çözülür |
| Oran sınırı | 429 Çok Fazla İstek | Evet, Retry-After başlığına saygı gösterin | 30 dakikalık sürekli limitlerden sonra | Talep oranını azaltın, kotayı artırın |
| Kimlik Doğrulama | 401 Yetkisiz, belirtecin süresi doldu | Evet (önce belirteci yenileyin) | Belirteç yenileme başarısız olduktan sonra | Yeniden kimlik doğrulaması yapın, kimlik bilgisi rotasyonunu kontrol edin |
| Doğrulama | Zorunlu alan eksik, geçersiz biçim | Hayır | Hemen | Eşlemeyi veya veri kaynağını düzeltin |
| İş mantığı | Yinelenen sipariş, SKU bulunamadı | Hayır | Hemen | Temel nedeni araştırın |
| API değişikliği | Beklenmeyen yanıt biçimi, yeni zorunlu alan | Hayır | Hemen (P1) | Eşleyiciyi güncelleyin, düzeltmeyi dağıtın |
| Kota aşıldı | Aylık API çağrı sınırına ulaşıldı | Hayır | Hemen (P1) | Planı yükseltin veya API kullanımını optimize edin |
| Veri bozulması | Bozuk kodlama, kesik yük | Hayır | Hemen | Kaynağı araştırın, dönüşümü düzeltin |
Hata Zenginleştirme
Ham hataları teşhis etmek zordur. Her hatayı bağlamla zenginleştirin:
- Zaman damgası: Hatanın oluştuğu zaman (UTC)
- Kanal: Hangi pazaryeri veya sistem
- İşlem: Ne yapılıyordu (ithalat siparişi, envanteri güncelleme, ürünü listeleme)
- Varlık: Belirli sipariş kimliği, SKU veya etkilenen müşteri
- İstek/yanıt: Başarısız olan API isteği ve alınan yanıt
- Yeniden deneme sayısı: Bunun kaç kez yeniden denendiği
- Korelasyon Kimliği: İlgili işlemleri hizmetler arasında birbirine bağlayan benzersiz bir kimlik
Stratejileri Yeniden Deneyin
Yeniden denemeler, geçici arızaları otomatik olarak ele alır, ancak kötü tasarlanmış yeniden deneme mantığı işleri daha da kötüleştirir; sorunlu bir API'yi yeniden denemelerle zorlamak, kurtarılabilir bir sorunu kesintiye dönüştürebilir.
Jitter ile Üstel Gerileme
Standart yaklaşım: senkronize yeniden deneme fırtınalarını önlemek için rastgele titreşimle yeniden denemeler arasında giderek daha uzun süre bekleyin.
| Yeniden Dene | Baz Gecikmesi | Titreşimli (örnek) |
|---|---|---|
| 1 | 1 saniye | 0,7 saniye |
| 2 | 2 saniye | 1,8 saniye |
| 3 | 4 saniye | 3,2 saniye |
| 4 | 8 saniye | 7,5 saniye |
| 5 | 16 saniye | 14,1 saniye |
| Maksimum | 60 saniye | 45-60 saniye |
Bütçeyi Yeniden Dene
Hata türü başına maksimum yeniden deneme sayısını ve maksimum yeniden deneme aralığını ayarlayın. 30 dakika içinde 5 kez başarısız olan bir siparişin içe aktarımı, yeniden denemeyi bırakmalı ve inceleme için teslim edilemeyen iletiler kuyruğuna taşınmalıdır. Sınırsız yeniden deneme, kaynakları boşa harcar ve kalıcı sorunları maskeler.
Devre Kesici Modeli
Bir kanal API'si sürekli olarak hata döndürdüğünde, devre kesici istek göndermeyi geçici olarak durdurur. Bu, sisteminizin kapalı bir hizmet için kaynak israfını önler ve hizmetin iyileşmesi için zaman tanır.
- Kapalı (normal): İstekler iletilir. Hata oranını takip edin.
- Açık (tetiklendi): Tüm istekler, API çağrılmadan hemen başarısız olur. Periyodik olarak kontrol edilir.
- Yarı açık (test): Hizmetin kurtarılıp kurtarılmadığını test etmek için bir isteğin geçmesine izin verin. Başarılı olursa devreyi kapatın. Başarısız olursa yeniden açın.
Hata oranı 60 saniyelik bir pencerede %50'yi aştığında devre kesiciyi açın. Kurtarma işlemini her 30 saniyede bir test edin.
Geçersiz Mektup Sıraları
Tüm yeniden denemelerde başarısız olan olaylar, geçersiz iletiler kuyruğuna (DLQ) taşınır. DLQ iki amaca hizmet eder: Zehirli mesajların ana hattı engellemesini önler ve başarısız olayları araştırma ve manuel olarak yeniden işleme için korur.
DLQ Yönetimi
- Günlük inceleme: Her iş gününde DLQ girişlerini incelemesi için birini atayın. Girişlerin çoğu düzeltilebilecek ve yeniden işlenebilecek veri sorunlarıdır.
- Örüntüleri kategorilere ayırın: Aynı hata türü tekrar tekrar görünüyorsa, olayları tek tek yeniden işlemek yerine temel nedeni düzeltin.
- Saklama politikası: DLQ girişlerini 30 gün boyunca saklayın. 30 gün sonra uyumluluk için soğuk depoya arşivleyin ancak etkin kuyruktan kaldırın.
- Yeniden işleme araçları: Operatörlerin, temel sorunu düzelttikten sonra tek bir DLQ girişini veya bir grup girişi yeniden işlemesine olanak tanıyan bir araç oluşturun.
DLQ Metrikleri
DLQ sağlığı için şu ölçümleri izleyin:
- Giriş hızı: Saatte DLQ'ya kaç olayın girdiği. Ani yükselişler sistematik bir soruna işaret ediyor.
- Yaşlanma: Olayların çözümlenmeden önce DLQ'da ne kadar süre kaldığı. Yaşlanma olayları çözülmemiş sorunları temsil eder.
- Çözünürlük oranı: DLQ olaylarının yüzde kaçı başarıyla yeniden işlendi, manuel olarak çözümlendi ve terk edildi.
Uyarıcı Tasarım
Uyarılar eyleme dönüştürülebilir, bağlamsal olmalı ve doğru kişiye yönlendirilmelidir. Günde 50 kez tetiklenen bir uyarı dikkate alınmaz. Birisini kritik olmayan bir sorun nedeniyle uyandıran bir uyarı, sisteme olan güveni zedeler.
Uyarı Önem Düzeyleri
| Seviye | Kriterler | Yanıt Süresi | Bildirim | Örnekler |
|---|---|---|---|---|
| P1 Kritik | Geliri etkileyen aktif veri kaybı | 15 dakika | Arama sırasında sayfa, telefon, SMS | Sipariş senkronizasyonu durduruldu, tüm kanallar eski |
| P2 Yüksek | Düşük performans, tek kanal kapalı | 1 saat | Slack kanalı, e-posta | Bir kanal senkronize edilmiyor, hata oranında artış |
| P3 Orta | Anormallik algılandı, henüz etkilenmiyor | 4 saat | Gevşek kanal | DLQ büyüyor, uzlaşma eşiğin üzerine çıkıyor |
| P4 Düşük | Bilgilendirici, gelecekteki potansiyel sorun | Sonraki iş günü | Kontrol Paneli | API kullanımdan kaldırılma uyarısı, kotaya yaklaşıyor |
Uyarı Yorulma Önleme
- İlgili uyarıları birleştirin: 50 ayrı "sipariş içe aktarma başarısız" uyarısı, tek bir "sipariş içe aktarma hatasında ani artış: 15 dakikada 50 hata" uyarısında birleştirilmelidir.
- Geçici sorunları otomatik çözme: Bir P2 uyarısı 5 dakika içinde çözülürse (devre kesici devreye girer, kanal kurtarılır), P4'e düşürün ve yükseltme yerine günlüğe kaydedin.
- Bakım pencereleri: Kanallarda veya kendi altyapınızda planlı bakım sırasında uyarıları bastırın.
- Runbook'lar: Her uyarı, uyarının ne anlama geldiğini, olası nedenlerini ve adım adım çözüm talimatlarını açıklayan bir runbook'a bağlanmalıdır.
Kontrol Panelleri ve Görünürlük
Bir izleme panosu, operasyon ekipleri, yönetim ve mühendislik için entegrasyon durumuna ilişkin bir bakışta görünürlük sağlar.
Önerilen Kontrol Paneli Panelleri
Genel bakış paneli: Kanal başına yeşil/sarı/kırmızı durum göstergesi. Yeşil = SLA dahilinde senkronizasyon. Sarı = bozulmuş (gecikmeli veya yüksek hatalar). Kırmızı = aşağı (eşik penceresinde senkronizasyon yok).
Sipariş akış paneli: Geçen haftanın aynı saatiyle karşılaştırıldığında kanal başına saat başına içe aktarılan siparişlerin gerçek zamanlı sayısı. Ani bir düşüş bir soruna işaret eder.
Envanter tazelik paneli: Kanal başına son başarılı envanter senkronizasyonundan bu yana geçen süre. Çalışma saatleri içinde 10 dakikayı aşan her şey sarıdır; 30 dakikanın üzerinde süre kırmızıdır.
Hata eğilimi paneli: Son 24 saatte türe göre hata sayısı. Yeni hata türlerini ve trend olan sorunları vurgular.
DLQ paneli: Mevcut DLQ derinliği ve yaşlanma dağılımı. 1 saatten kısa, 1-24 saatten eski ve 24 saatten uzun girişlerin sayısı.
Mutabakat paneli: SKU'ya göre sapmayı gösteren son mutabakat sonuçları. İlk önce en büyük sürüklenmeye göre sıralanır.
Daha geniş entegrasyon mimarisi için sütun gönderisine bakın: The Ultimate e-Commerce Integration Guide.
SLA İzleme
Entegrasyonunuzun temel veri akışları için SLA'ları tanımlayın ve izleyin.
| Veri Akışı | SLA Hedefi | Ölçüm | Bayanın Sonucu |
|---|---|---|---|
| İthalat siparişi | Yerleştirmeden sonraki 5 dakika içinde | Pazaryeri siparişinin oluşturulmasından ERP'nin içe aktarılmasına kadar geçen süre | Yerine getirme gecikmesi |
| Envanter yayılımı | Değişimden sonraki 60 saniye içinde | ERP stok değişiminden tüm kanallara geçiş süresi güncellendi | Aşırı satış riski |
| Fiyat güncellemesi | Değişimden sonraki 15 dakika içinde | ERP fiyat değişikliğinden kanal güncellemesine kadar geçen süre | Fiyatlandırma uyuşmazlığı |
| Ürün listeleme | Oluşturulduktan sonraki 24 saat içinde | PIM'in kanalda yayınlanmasından itibaren geçen süre | Satış fırsatının kaçırılması |
| İade işleme | Alındıktan sonraki 4 saat içinde | Depo taramasından iadenin başlatılmasına kadar geçen süre | Müşteri şikayeti |
SLA uyumluluğunu yüzde olarak izleyin (hedef: %99,5 veya daha yüksek) ve aylık olarak inceleyin. Kalıcı SLA eksiklikleri, yatırım gerektiren kapasite veya mimari sorunlarına işaret eder.
Bu SLA'ların bağlı olduğu envanter senkronizasyon mimarisine ilişkin ayrıntılar için bkz. Gerçek Zamanlı Envanter Senkronizasyon Mimarisi.
Sıkça Sorulan Sorular
E-Ticaret entegrasyonları için hangi izleme araçları en iyi sonucu verir?
Altyapı izleme için Datadog, New Relic veya Grafana + Prometheus standart seçeneklerdir. Uygulama düzeyinde izleme (hata izleme, istek izleme) açısından Sentry, Node.js/Python yığınları için mükemmeldir. Sıra izleme için BullMQ'nun yerleşik bir kontrol paneli (Bull Board) vardır ve RabbitMQ'nun yönetim kullanıcı arayüzü vardır. Önemli olan hangi aracı kullandığınız değil; önemli olan üç katmanın tamamını (altyapı, veri akışı, iş sonuçları) tutarlı bir şekilde izlemenizdir.
Göndereni kontrol etmezsem webhook güvenilirliğini nasıl izlerim?
Bir pazar yerinin web kancaları gönderip göndermediğini doğrudan izleyemezsiniz. Bunun yerine beklenen olayların yokluğunu izleyin. Shopify mağazanız genellikle saatte 10 sipariş web kancası alıyorsa ve siz 2 saat boyunca sıfır sipariş alıyorsanız uyarı verin. Bu "negatif izleme"dir; hataların varlığından ziyade beklenen etkinliğin yokluğunun tespit edilmesidir.
Entegrasyon işlemi için kabul edilebilir hata oranı nedir?
%0,5'in altı mükemmel. %0,5 ila %2 arası kabul edilebilir ancak araştırmayı gerektirir. %2'nin üzeri sistematik bir soruna işaret eder; büyük olasılıkla bir eşleme sorunu, API değişikliği veya kaynakta veri kalitesi sorunu. Sorunları hızlı bir şekilde tespit etmek için kanal başına ve işlem türüne göre hata oranlarını izleyin.
Özel izleme oluşturmalı mıyım yoksa yönetilen bir hizmet mi kullanmalıyım?
Uygulama hızı için yönetilen hizmetlerle (Datadog, Sentry) başlayın. Genel araçların hemen kapsamadığı, işletmeye özel ölçümler (sipariş akışı, envanter güncelliği, SLA uyumluluğu) için özel kontrol panelleri oluşturun. İş katmanı izleme, en fazla değeri elde ettiğiniz ve genel araçların yetersiz kaldığı yerdir.
Pazar yerindeki kesintiler sırasında izlemeyi nasıl halledebilirim?
Pazar yerindeki kesintiler (Amazon API'sinin bozulması, Shopify platform sorunları) kontrolünüz dışındadır. İzlemeniz "sistemimiz bozuk" ile "piyasa çökmüş" arasındaki ayrımı yapmalıdır. Pazar yeri durum sayfalarını programlı olarak kontrol edin (ör. Amazon'un SHD'si, Shopify'ın durum sayfası) ve harici kesintiler sırasında kontrol panellerinize açıklamalar ekleyin. Bilinen dış sorunlarla karşılaşan kanallar için uyarıları bastırın.
Sırada Ne Var
İzleme, gönderip unutacağınız bir özellik değildir. Entegrasyonunuzla birlikte gelişen bir uygulamadır. Kanal ekledikçe, hacmi artırdıkça ve yeni arıza modlarıyla karşılaştıkça, izlemeniz bunları kapsayacak şekilde artmalıdır. Yatırım, ilk kez 30 saniyelik bir uyarının hafta sonu sürecek bir kesintiyi önlediği anda kendini amorti ediyor.
Odoo ile üretime hazır entegrasyon izleme için ECOSIRE entegrasyon hizmetlerini keşfedin veya mevcut entegrasyon gözlemlenebilirlik boşluklarınızı değerlendirmek için ekibimizle iletişime geçin.
ECOSIRE tarafından yayınlandı — işletmelerin Odoo ERP, Shopify eCommerce ve OpenClaw AI genelinde yapay zeka destekli çözümlerle ölçeklenmesine yardımcı oluyor.
Yazan
ECOSIRE Research and Development Team
ECOSIRE'da kurumsal düzeyde dijital ürünler geliştiriyor. Odoo entegrasyonları, e-ticaret otomasyonu ve yapay zeka destekli iş çözümleri hakkında içgörüler paylaşıyor.
İlgili Makaleler
Building B2B Buyer Portals with Odoo: Self-Service Ordering & Reorders
Step-by-step guide to building B2B buyer portals in Odoo with self-service ordering, reorders, invoice access, and RFQ submission for wholesale operations.
The B2B eCommerce Playbook: Portals, Pricing Engines & Approval Workflows
Complete B2B eCommerce guide covering buyer portals, pricing engines, approval workflows, contract management, and ERP integration for wholesale operations.
B2B Marketplace Strategy: Alibaba, ThomasNet & Industry Exchanges
Build a winning B2B marketplace strategy across Alibaba, ThomasNet, Global Sources, and industry exchanges with integration, RFQ management, and ROI analysis.
Performance & Scalability serisinden daha fazlası
API Performance: Rate Limiting, Pagination & Async Processing
Build high-performance APIs with rate limiting algorithms, cursor-based pagination, async job queues, and response compression best practices.
Caching Strategies: Redis, CDN & HTTP Caching for Web Applications
Implement multi-layer caching with Redis, CDN edge caching, and HTTP cache headers to reduce latency by 90% and cut infrastructure costs.
Core Web Vitals Optimization: LCP, FID & CLS for eCommerce Sites
Optimize Core Web Vitals for eCommerce. Improve LCP, INP, and CLS scores to boost SEO rankings and reduce cart abandonment by 24%.
Database Query Optimization: Indexes, Execution Plans & Partitioning
Optimize PostgreSQL performance with proper indexing, EXPLAIN ANALYZE reading, N+1 detection, and partitioning strategies for growing datasets.
Load Testing Your eCommerce Platform: Preparing for Black Friday Traffic
Prepare your eCommerce site for Black Friday with load testing strategies using k6, Artillery, and Locust. Learn traffic modeling and bottleneck identification.
Monitoring & Observability: APM, Logging & Alerting Best Practices
Build production observability with the three pillars: metrics, logs, and traces. Compare APM tools and design alerts that reduce noise and catch real issues.