Proje Deneyimi
Watchtower
Merkezi Hata İstihbarat Platformu
~4000 e-ticaret sitesini izleyen, hatalari tespit eden, alarm üreten ve otomatik çözüm süreci başlatan merkezi bir hata istihbarat platformu tasarladım ve geliştirdim. Bu sayfa, o yolculuğun hikâyesi.
Solo Mimar & Geliştirici
Laravel 12 · Alpine.js · MySQL
i.
Neden Merkezi Log Yönetimi?
Saat gece 3. Bir müşteriden hata bildirimi geldi. Hangi site? Binlercesinden biri. Hangi versiyon? Bilinmiyor. Log nerede? Sunucuda bir yerlerde, belki rotasyonla silinmiş bile. Bu sahneyi hayal edin: ~4000 e-ticaret sitesi, her biri kendi sunucusunda, kendi loglarinda, kendi karanliginda. Bir sey kırıldığında, once hangi siteye bakacaginizi bile bilmiyorsunuz.
Manuel log kontrolü binlerce site için sadece yavas değil — imkansiz. Her siteye SSH ile bağlanmak, log dosyasini bulmak, filtrelemek, desenler aramak... Bunu bir site için yapabilirsiniz. On site için zor ama mümkün. 4000 site için? Saçınızı yolarsanız bile yetmez.
Ihtiyac belliydi: her seyi gören tek bir kule. Her sitenin nabzını tutan, anormallikleri aninda tespit eden, sizi uyandirmadan once sorunu teşhis eden merkezi bir istihbarat platformu.
"Binlerce siteyi tek tek izlemek bir strateji değil — kaybolma planı. Gerçek strateji, hepsini tek noktadan görmek."
ii.
4000 Sitenin Nabzı
Her 30 dakikada bir, Watchtower tum sitelerden loglari API üzerinden ceker. Bu senkronizasyon süreci sessiz ama amansızdır — hiçbir hata gözden kaçmaz. Gelen her log girisi yapilandirilmis formatta kaydedilir: seviye, mesaj, baglam (JSON), kanal, ciddiyet, dosya yolu, satir numarasi.
Tekrar eden hatalarin onune geçmek için message_hash tabanli tekillleştirme kullanilir. Aynı hata 400 siteden de gelse, veritabaninda tek bir grup olarak takip edilir — ama her bir olusum kaydedilir. Domain bazli kaynak filtreleme, ortam ayristirmasi ve soft delete ile denetim izi korunur.
iii.
Hata Komuta Merkezi
Watchtower sadece hatalari listeleyen bir panel değil — hangisini once düzeltmenizi gerektiğini söyleyen bir komuta merkezi. Dashboard dort ana katmandan oluşur:
Aksiyon Kuyrugu
Oncelik sıralı incelenmemis hatalar. En kritik olandan baslayarak, henuz gözden gecirilmemis her hata burada sıraya girer. Geliştirici her sabah buradan başlar.
Sağlık Haritasi
Ortam ve versiyona gore hata dağılımı. Hangi ortamda (uretim, staging, gelistirme) ne kadar hata birikiyor? Hangi versiyonlar daha kırılgan? Tek bakista anlaşılır.
Versiyon Etki Matrisi
Hangi versiyonlar en cok hata üretiyor? Bir versiyon yayınlandığında hata oranindaki değişim aninda görülür. Regresyon tespiti için kritik.
Baglam İstihbarati
Desen tespiti ve gruplanmis hatalar. Aynı kok nedenden kaynaklanan farkli hata mesajlari otomatik olarak gruplanır. Tek bir düzeltme, onlarca sorunu çözer.
"Iyi bir monitoring sistemi soru sormaz — cevap verir. 'En kritik sorun ne?' sorusuna bir bakista yanit alabilmelisiniz."
iv.
Alarm Motoru
Hatalari tespit etmek yetmez — dogru zamanda, dogru kisiye, dogru kanaldan haber vermek gerekir. Alarm motoru kural tabanli çalışır ve dort temel tespit mekanizmasi sunar:
Esik Alarmlar
→
Belirli bir zaman penceresinde hata sayisi esigi aştığında tetiklenir. "Son 1 saatte 50+ hata" gibi kurallar.
Ani Artis Tespiti
→
Normal hata oranina gore ani yükselmeler yakalanır. Deploy sonrası regresyonlar için kritik.
Yeni Hata Tespiti
→
Daha once hic görülmemiş bir hata mesaji ilk kez ortaya çıktığında aninda bildirim. Sifir gunden koruma.
Sessizlik Izleme
→
Beklenen log akisi durduguinda alarm. Site çökmüş ama hata bile üretemiyor olabilir.
Alarm Yorgunlugu
→
Soğuma pencereleri, ciddiyet filtreleme, mesaj deseni eşleştirme. Gereksiz bildirim yok.
Alarmlar Email ve Slack üzerinden iletilir. Kaynak filtreleme ile belirli sitelere veya ortamlara ozel alarm kurallari tanımlanabilir.
v.
Otomatik Bug Çözüm Pipeline'i
Watchtower sadece tespit etmez — düzeltme sürecini başlatır. Tespitten çözüme giden yol 4 farklı repoyu kapsayan çapraz proje otomasyonudur. Büyük resim:
1 Hata Tespiti & Gruplama
2 Jira Ticket Oluşturma
3 Yerel Sandbox'ta Reproduksiyon
4 Düzeltme Önerisi
Bu sürecin kalbinde 8 adımlık otomatik bir pipeline var: hata analizi, kök neden tespiti, ilgili kod dosyasının bulunması, sandbox ortamında hata reproduksiyonu, fix branch oluşturma, değişikliklerin uygulanması, test çalıştırma ve sonuç raporu. Tek bir komutla başlar, insan müdahalesi olmadan ilerler.
Bu yaklaşım, bir hatanin tespitten çözüme kadar geçen süresini saatlerden dakikalara düşürür. Geliştirici, hatanin bağlamını zaten bilen bir ortamda çalışmaya başlar — sıfırdan araştırma yapmak yerine dogrudan çözüme odaklanır.
vi.
Geliştirici Deneyimi
CLI-first tasarım. Watchtower'in birincil kullanıcı arayüzü terminal komutlarıdır. Sidebar karışıklığı yok, gereksiz panel yok — terminal acan bir geliştirici için her sey bir komut uzağında:
- Log senkronizasyonu — tüm sitelerden tek komutla çekme
- Sağlık raporu — platform genelinde anlık durum kontrolü
- Otomatik temizlik — eski logların periyodik budanması
- Desen analizi — AI destekli hata pattern tespiti
- Ticket oluşturma — gruplanmış hatalardan otomatik iş emri
Yerel gelistirme ortami Docker uzerinde çalışır: PHP 8.2, MySQL 8.4 ve phpMyAdmin. Tek komutla ayağa kalkar, sıfır konfigurasyonla çalışır.
viii.
Etki & Sonraki Adımlar
Watchtower, dagilmis log dosyalarinda kaybolma donemine son verdi. Binlerce sitenin sağlık durumu tek bir panelden izlenir, hatalar otomatik gruplanır, alarmlar dogru zamanda dogru kanala iletilir ve düzeltme süreci tek komutla başlar. Bir hatayi fark etmek ile cozmek arasindaki sure, saatlerden dakikalara dustu.
Sirada ne var: gercek zamanli websocket log akisi ile aninda tespit, ML tabanli anomali algilama ile desen ogrenme ve kritik hatalarda otomatik geri alma ile kendini iyilestiren altyapi.
"En iyi monitoring sistemi, sizi uyandirmadan once sorunu cozendir."