Bu sayfa topluluk tarafından çevrilmiştir ve güncel olmayabilir. Referans versiyonuna (İngilizce) bakın.

Bu sayfa topluluk tarafından çevrilmiştir ve güncel olmayabilir. Referans versiyonuna (İngilizce) bakın.

Bu sayfa topluluk tarafından çevrilmiştir ve güncel olmayabilir. Referans versiyonuna (İngilizce) bakın.

Tarafından desteklenmektedir
Metrikler

Metrikler

Tip

Gerçek zamanlı panolar ve üretim izlemesi dahil eksiksiz bir gözlemlenebilirlik kurulumu için Gözlemlenebilirlik sayfasına bakın.

# Prometheus dışa aktarımı

Caddy metrikleri etkinleştirildiğinde FrankenPHP şu metrikleri yayınlar:

  • frankenphp_total_threads: Toplam PHP iş parçacığı sayısı.
  • frankenphp_busy_threads: Şu anda bir isteği işleyen PHP iş parçacığı sayısı (çalışan worker’lar her zaman bir iş parçacığı tüketir).
  • frankenphp_queue_depth: Kuyruğa alınmış olağan istek sayısı.
  • frankenphp_total_workers{worker="[worker_name]"}: Toplam worker sayısı.
  • frankenphp_busy_workers{worker="[worker_name]"}: Şu anda bir isteği işleyen worker sayısı.
  • frankenphp_worker_request_time{worker="[worker_name]"}: Tüm worker’ların istekleri işlemek için harcadığı süre.
  • frankenphp_worker_request_count{worker="[worker_name]"}: Tüm worker’ların işlediği istek sayısı.
  • frankenphp_ready_workers{worker="[worker_name]"}: En az bir kez frankenphp_handle_request çağırmış worker sayısı.
  • frankenphp_worker_crashes{worker="[worker_name]"}: Bir worker’ın beklenmedik şekilde sonlandığı sayı.
  • frankenphp_worker_restarts{worker="[worker_name]"}: Bir worker’ın bilinçli olarak yeniden başlatıldığı sayı.
  • frankenphp_worker_queue_depth{worker="[worker_name]"}: Kuyruğa alınmış istek sayısı.

Worker metriklerinde [worker_name] yer tutucusu Caddyfile’daki worker adıyla değiştirilir; aksi halde worker dosyasının mutlak yolu kullanılır.

# İş parçacığı durumu uç noktası

FrankenPHP, Caddy admin API üzerinden bir /frankenphp/threads uç noktası yayınlar. Tüm etkin PHP iş parçacıklarının JSON anlık görüntüsünü döndürür; hata ayıklama ve gözlemlenebilirlik araçları oluşturmak için kullanışlıdır.

curl -s http://localhost:2019/frankenphp/threads | jq .

# Yanıt biçimi

Uç nokta şu yapıda bir JSON nesnesi döndürür:

{
    "ThreadDebugStates": [
        {
            "Index": 0,
            "Name": "worker-/path/to/worker.php",
            "State": "ready",
            "IsWaiting": true,
            "IsBusy": false,
            "WaitingSinceMilliseconds": 1234,
            "CurrentURI": "",
            "CurrentMethod": "",
            "RequestStartedAt": 0,
            "RequestCount": 42,
            "MemoryUsage": 2097152
        }
    ],
    "ReservedThreadCount": 3
}

# Alanlar

AlanTürAçıklama
ReservedThreadCountintegerOtomatik ölçekleme için ayrılmış, henüz etkin olmayan iş parçacığı sayısı.

ThreadDebugStates içindeki her girdi şunları içerir:

AlanTürAçıklama
Indexintegerİş parçacığının indisi.
Namestringİş parçacığının adı (ör. worker dosya yolu).
Statestringİş parçacığının iç durumu (ör. ready, shutting down).
IsWaitingbooleanİş parçacığının bir istek bekleyip beklemediği.
IsBusybooleanİş parçacığının şu anda bir isteği işleyip işlemediği.
WaitingSinceMillisecondsintegerİş parçacığının milisaniye cinsinden ne kadar süredir boşta olduğu. İş parçacığı meşgulse 0.
CurrentURIstringŞu anda işlenen URI. İş parçacığı boştaysa boş.
CurrentMethodstringGeçerli isteğin HTTP metodu (ör. GET, POST). İş parçacığı boştaysa boş.
RequestStartedAtintegerGeçerli isteğin başladığı Unix zaman damgası (milisaniye). İş parçacığı boştaysa 0.
RequestCountintegerBu iş parçacığının başladığından beri işlediği toplam istek sayısı.
MemoryUsageintegerİş parçacığının geçerli PHP bellek kullanımı, bayt cinsinden.
Bu sayfayı düzenleyin