PHPRay
Proces PHPRINIT / RSHUTDOWN · mysqli / PDO · cURL
phpray.so rejestruje zdarzenia żądania, SQL, HTTP, plików i błędów. Observer API obsługuje oddzielną, próbkowaną warstwę profili.
phpray-collectorGo binary · systemd
Czyta strumień, zapisuje SQLite, stosuje retencję i lokalne alerty. Domyślnie: 30 dni historii i limit bazy 4 GB.
SQLiteŚlady · SQL · agregaty 1 min
Trwała lokalna historia. Okno retencji i limit rozmiaru działają niezależnie; najstarsze rekordy są usuwane po osiągnięciu któregokolwiek limitu.
REST API/api/v1/*
Lokalny interfejs collectora dla dashboardu i CLI. Nie jest tym samym API co protokół Cloud /v1/aggregates i /v1/traces.
Lokalny dashboard127.0.0.1:9191 · JWT
Widok serwisów, śladów i komponentów. Domyślnie loopback; kontrola dostępu przez JWT. Lokalny rdzeń nie wymaga konta Cloud.
Domyślnie odłączony. Dane pozostają lokalnie, dopóki nie skonfigurujesz połączenia.
Diagram architektury — przełącznik nie zmienia konfiguracji serwera.Rozwiń dowolny węzeł, aby poznać jego zakres. Pełny protokół danych →
PHPRay zapewnia ciągłe śledzenie żądań PHP. Każde żądanie otrzymuje lekki rekord czasu wykonania, zapytań SQL, wychodzących wywołań HTTP, błędów PHP i wzorców N+1. Warstwę tę zaprojektowano do pracy na produkcji; zakres dotychczasowych pomiarów opisuje sekcja Narzut.
Oprócz podsumowania każdego żądania PHPRay tworzy próbkowane profile wtyczek i komponentów. Widzisz, która wtyczka, motyw lub funkcja zużywa czas, bez profilowania wszystkich żądań.
PHPRay działa wewnątrz PHP: rozszerzenie współpracuje z niewielkim lokalnym collectorem i dashboardem. Nie wymaga agenta działającego jako root, sidecara ani JVM do zbierania danych. Obsługuje hosting współdzielony (CageFS / lsphp), VPS i kontenery; samo zainstalowanie rozszerzenia wymaga uprawnień administratora lub pomocy operatora.
Rdzeń jest bezpłatny: rozszerzenie, collector i lokalny dashboard mają otwartą licencję. Opcjonalna konsola PHPRay Cloud dodaje widoki wielu serwerów, plany i alerty. Płatne plany zaczynają się od 19 USD miesięcznie; dostępny jest także limitowany plan Cloud Free.
Narzut
Warstwa always-on obsługuje zdarzenia żądania: początek i koniec, SQL, wychodzące HTTP, operacje plikowe oraz błędy PHP. Nie obserwuje pojedynczych wywołań funkcji. Profilowanie funkcji korzysta z observer API PHP i dotyczy domyślnie 3% żądań. Pozostałe 97% nie otrzymuje próbek na poziomie funkcji.
W wewnętrznym benchmarku (sklep WooCommerce, 22 wtyczki, PHP 8.3, OPcache) narzut warstwy always-on mieścił się w szumie pomiarowym bazowego PHP. Profilowanie każdego żądania zwiększało czas w sposób mierzalny, lecz mniej niż klasyczny hook execute_ex. Testy wykonano na laptopie, więc nie są certyfikowanym wynikiem produktu. Autorzy zapowiadają publikację metodologii, surowych danych i wyników z dedykowanego, nieobciążonego hosta. Do tego czasu precyzyjne wartości narzutu PHPRay należy traktować jako niezweryfikowane.
docs-site/docs/index.md · PHPRay 0.14Wersja polska jest tłumaczeniem angielskiego oryginału; parametry i przykłady kodu pozostają w oryginalnej składni.