PL
PHPRAY / EXPLORE

Zacznij od konkretu.

Poznaj produkt. Sprawdź dane. Wybierz zakres.

APACHE-2.0Lokalny rdzeń bez kontaCloud opcjonalnie
Przejdź do instalacji
PHPRay / Dokumentacja techniczna

Zrozum przepływ.
Przejmij kontrolę.

Od pierwszego żądania po konfigurację całej floty. Pełna dokumentacja, konkretne parametry, jawne granice.

0.14 / REFERENCE15 rozdziałów · PL / EN
PHPRay DocsCLI
usage/cli

CLI

phpray to alias polecenia phpray-collector, instalowany przez install.sh oraz pakiety .deb/.rpm. Czyta ten sam plik JSONL, bufor pierścieniowy i bazę SQLite co usługa collectora, więc działa z dashboardem lub bez niego.

Stan

phpray status

Jeden ekran: każdy znaleziony plik binarny PHP i to, czy ładuje phpray.so, konfiguracja collectora, bufor pierścieniowy, plik JSONL i baza danych, czy API dashboardu odpowiada na 127.0.0.1:9191 (-addr, aby zmienić) oraz stan połączenia z Cloud (wyłączone / oczekuje / połączone / klucz odrzucony).

Gdy [input] shm_path jest wzorcem (jeden ring na pulę PHP-FPM, zob. konfiguracja collectora), wypisuje znalezione pliki ringów, a przy działającej usłudze każdy ring otwarty przez collector wraz z licznikami rekordów i przepełnień. Sekcja Dashboard / API pokazuje też stan POST /api/v1/ingest (przyjęte partie i ślady, pominięte rekordy, odrzucone żądania oraz to, czy endpoint wymaga tokenu Bearer, czy wpuszcza tylko klientów lokalnych).

Przykład referencyjny
Collector
  config /etc/phpray/collector.toml        ok
  ring buffers /run/phpray/ring-*          2 found
    /run/phpray/ring-1001                  ok
    /run/phpray/ring-1002                  ok
  ...
Dashboard / API
  http://127.0.0.1:9191/  ok   (HTTP 200, 48213 traces stored)
  ring buffers open in the collector: 2
    /run/phpray/ring-1001                  v5  31207 records, 0 dropped, 3% full
    /run/phpray/ring-1002                  v5  17006 records, 0 dropped, 1% full
  ingest http://127.0.0.1:9191/api/v1/ingest  ok   (120 batches, 4180 traces, 0 records dropped, 0 requests rejected; loopback clients only)

Widoki na żywo (JSONL, bez bazy danych)

phpray tail

Strumień śladów na żywo, jak tail -f z kolorami. -f <ścieżka> (domyślnie /tmp/phpray.jsonl), -d <domena>, aby filtrować jeden serwis.

phpray top

Automatycznie odświeżana lista najwolniejszych żądań, htop dla PHP. -n 20 wpisów, -r 2 sekundy odświeżania, -w 60 okno w sekundach, -d <domena>.

phpray stats

Statystyki zbiorcze z pliku JSONL: liczba żądań, percentyle opóźnień, udział DB/HTTP. -w 60 okno w minutach.

phpray trace

Szczegóły pojedynczego żądania z podziałem w formie kaskady (PHP, SQL, HTTP, pliki, Redis).

Przykład referencyjny
phpray trace -d shop.example.com -n 20            # last 20 requests of a site
phpray trace -d shop.example.com -level alert     # only alert-level traces
phpray trace -d shop.example.com -n1              # only requests with an N+1 pattern
phpray trace -d shop.example.com -json            # raw JSON lines for scripting

Widoki z bazy danych (SQLite)

phpray import

Import pliku JSONL do bazy SQLite: -f <jsonl> -s <db>.

phpray slow-queries

Najwolniejsze odciski zapytań SQL, zdeduplikowane i zagregowane: -s <db> -n 10.

phpray agg-query

Agregaty per minuta z bazy danych: -s <db> -w 60 [-d <domena>].

phpray report

Raport diagnostyczny dla jednego serwisu, markdown lub tekst, na stdout:

Przykład referencyjny
phpray report -domain shop.example.com -w 60 -format markdown > report.md

Z -share ustalenia zostają opublikowane jako strona, a polecenie wypisuje odnośnik, który można komuś wysłać:

Przykład referencyjny
phpray report -domain shop.example.com -w 60 -share
https://app.phpray.dev/r/dklns4bdbf74bdtetbxhbxtcey

Bez konta i bez karty: działa z kolektora na wolnej licencji. Serwer opuszczają dane ustaleń, nigdy gotowy dokument — stronę składa z nich nasz szablon. Nazwa strony jest wycinana z każdego pola tekstowego, także z dowodów, więc shop.example.com/checkout/ publikuje się jako /checkout/. Adres niesie 128 bitów losowości, wygasa po 30 dniach i nie trafia do wyszukiwarek.

Parametr -share-url kieruje publikację gdzie indziej, na przykład do własnej kopii konsoli.

Usługa

  • phpray serve -c /etc/phpray/collector.toml -addr 127.0.0.1:9191 — collector, REST API i dashboard w jednym procesie (to uruchamia unit systemd).
  • phpray daemon -c /etc/phpray/collector.toml — sam collector, bez API.
  • phpray token -secret <klucz> -sub <użytkownik> -role admin|user [-domains "a.com,b.com"] [-exp 720h] — wystawia token logowania do dashboardu/API.
  • phpray control list | set -docroot <katalog> [-prefix /p] [-rate 100] [-ttl 600s] | clear -docroot <katalog> | expire — tabela profilowania na żądanie odczytywana przez rozszerzenie (konsola Cloud zapisuje tę samą tabelę przez collector).
  • phpray update — sprawdza phpray.dev/dl/LATEST, pobiera wydanie dla tej architektury, weryfikuje je względem SHA256SUMS i podmienia plik w miejscu, zostawiając poprzedni obok. Rozszerzenie PHP aktualizuje się osobno, przez install.sh.
  • phpray version.
Źródło: docs-site/docs/usage/cli.md · PHPRay 0.14
Wersja polska jest tłumaczeniem angielskiego oryginału; parametry i przykłady kodu pozostają w oryginalnej składni.
NASTĘPNY KROK

Najpierw dowód. Potem decyzja.

Sprawdź lokalną diagnostykę, porównaj zakres narzędzi i dopiero wtedy wybierz Cloud.

Porównaj rozwiązania