İşletme
#İzleme
#Sağlık uçları
| Uç | Ne söyler |
|---|---|
GET /healthz | Süreç ayakta mı. Her zaman {"status":"ok"} |
GET /readyz | Bağımlılıklar ve durum: status, dependencies.mongo, redis, audit_records_rejected, ner_model_loaded, upstreams_configured |
İzleme sisteminizde takip edilecek tek sayı: audit_records_rejected. Sıfırdan farklıysa ağ geçidi tutamadığı kanıt üretmiş demektir; en yüksek öncelikle bakın. Olası nedenler: veritabanı uzun süre erişilemez kaldı ve disk tamponu doldu, ya da yazılan kayıt şemaya uymadı.
#Metrikler
.env içinde METRICS_TOKEN (16+ karakter) tanımlıysa GET /metrics Prometheus biçiminde metrik verir. Jetonsuz uç yoktur; metrikler kurum kimliklerini etiket olarak taşıdığı için açık bırakılmaz.
curl -s -H "authorization: Bearer $METRICS_TOKEN" http://localhost:8080/metrics
| Metrik | Etiketler | Anlamı |
|---|---|---|
nev_requests_total | tenant, endpoint, outcome | İstek sayısı |
nev_decisions_total | tenant, step, action | Adım kararları; bir red artışı önce burada görünür |
nev_tokens_total | tenant, direction | Sağlayıcının bildirdiği token sayısı (in / out) |
nev_gateway_latency_seconds | tenant | Tanık'ın harcadığı süre (histogram) |
nev_upstream_latency_seconds | tenant | Sağlayıcıdan ilk bayta kadar geçen süre (histogram) |
Metrikler, kayda yazılan anlık görüntünün aynısından üretilir; kayıtla çelişemezler.
#Uyarı kuralı önerileri
audit_records_rejected > 0— derhal.nev_decisions_total{action="block"}oranında ani artış — bir politika değişikliği ya da bir uygulamanın davranış değişikliği.nev_decisions_total{step="budget",action="block"}— bir ekibin bütçesi doldu.nev_gateway_latency_secondsp95'inde artış — derin modda isim taraması kaynak bekliyor;NER_THREADSayarına bakın.
#Günlükler
Günlükler yapılandırılmış JSON'dur. Hiçbir seviyede istek ya da cevap içeriği günlüğe yazılmaz; kişisel veri alanları otomatik çıkarılır. Günlüklerde göreceğiniz şey: adım, gerekçe, istek kimliği, hedef adı.