API

Analitik API

Bir proje veya tüm organizasyon için istek trafiğini, deploy istatistiklerini ve container kaynak kullanımını, ayrıca sunucu bazında edge analitiklerini okuyun.

Analitik API'si uygulamalarınızın nasıl performans gösterdiğini raporlar: istek trafiği ve durum kodları, deploy sıklığı ve başarı oranı, canlı container CPU/bellek/bant genişliği ve edge proxy'den alınan coğrafi istek dökümleri. dashboard'da bu sayılar projenin Analitik sekmesini ve organizasyonun Dashboard'unu destekler; her rota salt okunurdur.

Temel yol ve kimlik doğrulama

Tüm yollar, /api altında, örneğin https://your-host/api/analytics gibi, kendi instance'ınıza göredir. alaf server token create ile oluşturulmuş kişisel bir erişim token'ını bearer header olarak gönderin (Authorization: Bearer <token>). dashboard bunun yerine oturum çerezinizi kullanır. Ayrıntılar için API genel bakışına ve kimlik doğrulama modeline bakın.

?projectId= aracılığıyla proje kapsamı

/dashboard dışındaki her endpoint bir ?projectId= gerektirir — bunu atlamak 404 döndürür. /dashboard hiçbir parametre almaz ve her zaman çağrı yapanın aktif organizasyonunu raporlar. Bir projectId bir cloud projesini işaret ettiğinde, istek şeffaf bir şekilde Alaf Server Cloud'a iletilir.

Endpointler

Method & pathİzinNe işe yarar
GET /api/analyticsanalytics:readBir proje için kümülatif istek/trafik özeti ( ?projectId= gerektirir).
GET /api/analytics/periodsanalytics:readDönemlere ayrılmış trafik zaman serisi.
GET /api/analytics/overviewanalytics:readÖzet + dönemler birlikte (trafik, durum kodları, en popüler yollar) tek bir istekte.
GET /api/analytics/deploymentsanalytics:readDeploy istatistikleri (sıklık, başarı oranı, süreler).
GET /api/analytics/usageanalytics:readMevcut container kaynak kullanımı (CPU / bellek / bant genişliği).
GET /api/analytics/usage/streamanalytics:readAktif container için gerçek zamanlı kaynak kullanımının SSE akışı.
GET /api/analytics/containeranalytics:readBir projenin çalışma zamanı için container bilgisi (durum, IP, çalışma süresi).
GET /api/analytics/dashboardanalytics:readOrganizasyon dashboard'u toplu verileri (ana metrikler).
GET /api/analytics/server/:serverIdserver:readBir sunucu için kalıcı dakika bazlı istek analitikleri.
GET /api/analytics/server/:serverId/geoserver:readBir sunucu için günlük ülke bazında coğrafi toplamlar.
GET /api/analytics/server/:serverId/liveserver:readSunucunun yönetim API'sinden proxy aracılığıyla alınan canlı analitikler.

İstek analitikleri

summary, periods ve overview aynı temel trafik verilerini okur. overview hem kümülatif özeti hem de zaman serisi dönemlerini tek bir istekte döndürür — dashboard bunu kullandığı için bir proje görünümü iki yerine tek bir gidiş-dönüş yapar. Üçü de şu sorgu parametrelerini paylaşır:

GET /api/analytics/overview

Prop

Type

curl "https://your-host/api/analytics/overview?projectId=proj_123" \
  -H "Authorization: Bearer $ALAFSERVER_TOKEN"
# CLI'dan aynı şey (genel kimlik doğrulamalı istek):
alaf server api /analytics/overview -q projectId=proj_123

Deploy istatistikleri

Bir proje için başarı/başarısızlık sayıları ve ortalama build süreleri.

GET /api/analytics/deployments?projectId=<id>
curl "https://your-host/api/analytics/deployments?projectId=proj_123" \
  -H "Authorization: Bearer $ALAFSERVER_TOKEN"

Kaynak kullanımı

usage, aktif container'ın kaynaklarının anlık bir görüntüsünü döndürür; container ise çalışma zamanı bilgilerini (durum, IP, çalışma süresi) döndürür. Her ikisi de şunları alır:

Prop

Type

curl "https://your-host/api/analytics/usage?projectId=proj_123" \
  -H "Authorization: Bearer $ALAFSERVER_TOKEN"

Canlı kullanım akışı

GET /api/analytics/usage/stream?projectId=<id>, bağlantı açıkken yaklaşık her 5 saniyede bir usage olayı yayan bir Server-Sent Events akışıdır. Yalnızca projectId alır ve projenin çalışan bir container'a sahip aktif bir deploy'u olmasını gerektirir.

curl -N "https://your-host/api/analytics/usage/stream?projectId=proj_123" \
  -H "Authorization: Bearer $ALAFSERVER_TOKEN"

404 — akış yok

Projenin aktif bir deploy'u olmadığında veya aktif deploy'un çalışan bir container'ı olmadığında akış 404 döndürür. Önce projeyi deploy edin, sonra yeniden bağlanın.

Dashboard toplu verileri

Aktif organizasyonun dashboard'u için organizasyon genelindeki ana metrikler. Sorgu parametresi almaz.

GET /api/analytics/dashboard
curl https://your-host/api/analytics/dashboard \
  -H "Authorization: Bearer $ALAFSERVER_TOKEN"

Sunucu analitikleri

Bunlar, proje bazında değil, edge proxy'den (OpenResty) toplanan belirli bir sunucu ( :serverId yol parametresiyle tanımlanır) için istek analitiklerini okur. Bunları görüntülemek, isteğe bağlı, kendi kendini kısıtlayan bir veri çekme işlemini tetikler — yanıt, şu anda veritabanındaki satırları döndürür ve bir sonraki okuma için yeni bucket'lar gelir. Üçü de bir domain sorgu parametresi gerektirir ve server:read iznini kullanır.

RotaSorguDöndürür
GET /api/analytics/server/:serverIddomain (zorunlu), from, toDakika bazlı analitikler. from/to ISO zaman damgalarını veya epoch dakikalarını kabul eder; varsayılan son 60 dakikadır.
GET /api/analytics/server/:serverId/geodomain (zorunlu), dayGünlük ülke bazında toplamlar. day YYYYMMDD formatındadır; varsayılan bugündür.
GET /api/analytics/server/:serverId/livedomain (zorunlu)Sunucunun yönetim API'sinden SSH üzerinden canlı olarak proxy aracılığıyla alınan gerçek zamanlı toplamlar.
curl "https://your-host/api/analytics/server/srv_123?domain=app.example.com" \
  -H "Authorization: Bearer $ALAFSERVER_TOKEN"

400 — domain zorunlu

Sunucu analitik rotaları, domain sorgu parametresi eksikse 400 döndürür. Sayılarını istediğiniz izlenen hostname'i geçin.

502 — sunucuya ulaşılamıyor

Alaf Server, o sunucunun yönetim API'sine ulaşamadığında (SSH kapalı, proxy çalışmıyor) /server/:serverId/live 502 döndürür. Kalıcı /server/:serverId ve /geo okumaları veritabanından hala çalışır.

On this page