Weryfikacja i typowe problemy - Laravel
Na tej stronie Kontrolowane zdarzenie testowe
- Kontrolowane zdarzenie testowe
- Typowe problemy
- Nic nie dociera do panelu
- Wyjątki nie są raportowane, choć test przechodzi
- Brakuje transakcji
- Lista transakcji rozsypała się na tysiące pozycji
- Błędy z kolejki docierają, ale bez transakcji
- Worker kolejki nie widzi zmiany konfiguracji
- Ten sam błąd rozbija się na wiele wpisów
- Panel odpowiada 200, ale zdarzenia nie ma
- Nadal nie działa
Kontrolowane zdarzenie testowe
php artisan tinker --execute="\Dock\Ray\Laravel\Ray::message('Kontrolny komunikat DockRay');"
Komunikat powinien pojawić się w panelu w sekcji Błędy projektu wskazanego przez token. Sprawdź środowisko i czas: środowisko bierze się z RAY_ENVIRONMENT, a w jego braku z APP_ENV.
Żeby sprawdzić automatyczne przechwytywanie, wywołaj na środowisku testowym nieobsłużony wyjątek z tymczasowej trasy. Po udanym teście usuń tę trasę - kolejne wywołania podbijają licznik sztucznego błędu i zużywają miesięczny limit.
Typowe problemy
Nic nie dociera do panelu
Sprawdź kolejno: czy RAY_TOKEN i RAY_PRIVATE_KEY są ustawione i należą do tego samego projektu, czy nie zostało w pamięci stare config:cache (po zmianie .env uruchom php artisan config:clear), czy klucz nie został odwołany w panelu i czy serwer ma otwarte połączenia wychodzące HTTPS.
Wyjątki nie są raportowane, choć test przechodzi
Najczęściej brakuje wpięcia reportable(). Sprawdź też, czy wyjątek nie stoi na liście ray.ignore_exceptions albo we własnym dontReport Laravela - ValidationException i HttpException są pomijane domyślnie i tak ma być.
Brakuje transakcji
Dwie niezależne przyczyny: ray.traces_sample_rate równe 0 albo brak middleware TrackTransaction w grupie. Sam token i klucz nie włączają pomiaru ruchu.
Lista transakcji rozsypała się na tysiące pozycji
Transakcja bierze nazwę ze wzorca trasy, więc taki obraz znaczy, że trasa jest zadeklarowana bez parametru - na przykład rejestrowana w pętli po identyfikatorach albo obsługiwana jednym Route::any('{path}'). Napraw definicję trasy, a nie panel.
Błędy z kolejki docierają, ale bez transakcji
Tak ma być: kolejki i komendy Artisan działają poza stosem middleware HTTP, więc raportują błędy i nie tworzą transakcji.
Worker kolejki nie widzi zmiany konfiguracji
Hub jest singletonem na cały proces, a worker czyta konfigurację przy starcie. Po zmianie .env albo config/ray.php zrestartuj workery (php artisan queue:restart).
Ten sam błąd rozbija się na wiele wpisów
Panel grupuje po odcisku sha256(token projektu + typ + komunikat). Komunikat z wklejonym identyfikatorem rekordu rozbija jeden błąd na tysiąc wierszy. Przenieś zmienną część do kontekstu albo do tagów.
Panel odpowiada 200, ale zdarzenia nie ma
Odpowiedź 200 {"success": false} znaczy, że konto wyczerpało miesięczny limit błędów. Integracja nie traktuje tego jak awarii - i słusznie. Limit widzisz na pulpicie konta; do końca miesiąca liczy się z zapisanego zużycia, więc nie zresetuje go usunięcie błędów.
Nadal nie działa
Przejdź przez listę kontrolną braku danych w panelu, a jeśli to nie pomoże - napisz do nas. Podaj nazwę projektu, wersję integracji i przybliżoną godzinę testu: to skraca drogę do odpowiedzi.