fix(pl24): kendi bütçe frenimiz "hesap banlandı" alarmı üretmesin #271
Reference in New Issue
Block a user
Delete Branch "dev"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Yanlış alarm
Bugün 19:10 (İstanbul) Telegram "🔴 PL24 giriş yapılamıyor — hesap banlanmış olabilir" dedi. Hesap sağlam: kullanıcı tarayıcıdan giriş yapabildi, aynı gün telemetride 143 başarılı auth çağrısı ve 0 × 401 var.
Gerçek sebep alarmın kendi metninde yazıyordu:
PL24 daily HTTP budget exhausted (user lane: 1205/1200). Yani upstream değil, bizim günlük tavanımız.Zincir
Kendi frenimiz hem login devre kesicisini tetikliyor hem de operatörü yanlış yere çağırıyor. İkisi de zararlı: devre kesici açılırsa bütçe sıfırlandıktan sonra bile giriş bloklanır.
Düzeltme
PL24BudgetExceededErrorartıkattemptLoginveauthorizeServiceForAccountiçinde olduğu gibi yukarı çıkıyor, giriş/yetkilendirme hatasına çevrilmiyor. Devre kesici tetiklenmiyor, kesinti sayacı başlamıyor, Telegram susuyor. Çağıran taraf PL24'ü atlayıp pcat/emex'e düşüyor — bugün de öyle oluyordu, ama artık sessizce ve doğru gerekçeyle.pl24:http:<gün>:{user,worker}. Paylaşılan toplam, tavanın NE ZAMAN dolduğunu söylüyordu ama KİMİN harcadığını söylemiyordu.Kapasite bulgusu (ayrı karar gerekiyor)
Kilitlenme düzeltmesi (PR #268) canlıya çıkınca prefetch gerçekten çalışmaya başladı ve tavan ilk kez gerçek trafikle doldu:
Worker şeridi tavanın %60'ında (720) duruyor, kalan ~485'i gerçek kullanıcı harcadı ve duvara çarptı. Yani tavan artık bağlayıcı ve kullanıcıyı aç bırakıyor; arka plan backfill hâlâ KAPALI olduğu hâlde.
Bu PR tavanı değiştirmiyor — yalnız yanlış alarmı kesiyor ve tavanı veriyle boyutlandırmak için şerit ayrımını ölçmeye başlıyor. Ban geçmişi göz önüne alındığında tavan sayısı sizin kararınız.
Test
5 yeni test (bütçe hatasının yukarı çıkması, Telegram'ın susması, kesinti sayacının başlamaması, hata sınıfı ve mesajı). api paketi 650 test geçiyor.
🤖 Generated with Claude Code
View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.