Raport błędów pozwala na przeglądanie najnowszych błędów i ostrzeżeń systemu Luau zarówno dla serwera, jak i klienta. Monitoruj swój raport błędów przed i po aktualizacji gry, aby wczesniej zidentyfikować potencjalne problemy.
Przeglądaj swój raport błędów
Aby przeglądać raport błędów swojej gry:
- Przejdź do swojej strony Tworzenia w Panelu twórcy i wybierz swoją grę.
- W sekcji Monitorowanie wybierz Raport błędów.
Możesz przeglądać analizy dla doświadczeń indywidualnych lub należących do grupy. Aby zobaczyć to drugie, musisz mieć uprawnienia grupowe do analizy.
Monitorowanie błędów i ostrzeżeń
Możesz zastosować następujące filtry i przełączniki do swojego raportu błędów:
- Zakres dat — Filtruj według ostatniej godziny, ostatniego dnia, ostatnich 7 dni lub ostatnich 30 dni.
- Miejsce — Filtruj według miejsca.
- Pokaż wersję — Dodaje adnotacje wersji miejsca do wykresu błędów i ostrzeżeń.
- Powaga — Filtruj, aby pokazać błędy, ostrzeżenia lub oba.
- Platforma — Filtruj, aby pokazać błędy klienta z konkretnych urządzeń.
- OS — Filtruj, aby pokazać błędy klienta z konkretnych systemów operacyjnych.
- Nowe błędy od — Filtruj, aby pokazać tylko nowe błędy i ostrzeżenia od określonej wersji.
Pod filtrami i przełącznikami, wykres wyświetla liczbę błędów i ostrzeżeń dla serwera, klienta oraz ogółem. Wykorzystaj ten wykres do szukania wzrostu błędów i ostrzeżeń w czasie. Jeśli zauważysz duży skok w błędach i ostrzeżeniach, skorzystaj z tabeli raportu błędów, aby rozwiązać problemy.

Rozwiązywanie błędów i ostrzeżeń
Tabela Błędy i ostrzeżenia ma następujące kolumny:
| Kolumna | Opis |
|---|---|
| Liczba | Liczba błędów lub ostrzeżeń. |
| Powaga | Etykieta błędu lub ostrzeżenia. |
| Typ | Etykieta serwera lub klienta. |
| Wiadomość | Wiadomość błędu lub ostrzeżenia. |
| Pierwszy widziany | Czas wystąpienia wiadomości. |
| Pierwsza wersja | Dostępna tylko wtedy, gdy wybrane jest miejsce. Pokazuje pierwszą wersję, w której zarejestrowano wiadomość. |

Wyświetlanie stosu wywołań dla błędu lub ostrzeżenia
Jeśli widzisz rozwijalną listę przy błędzie lub ostrzeżeniu, kliknij, aby ją rozwinąć i zobaczyć odpowiadający stos wywołań. Stos wywołań to lista wywołań, które Twoja gra wykonywała, gdy wyjątek został zgłoszony. Może to pomóc w ustaleniu, co poszło nie tak.
Reguły niestandardowe
Reguły niestandardowe pozwalają zdefiniować wzorce regex lub dokładne ciągi tekstowe, aby automatycznie ignorować lub grupować błędy i ostrzeżenia. Pomaga to w zarządzaniu stosunkiem sygnału do szumów Twoich raportów błędów. Możesz tworzyć do 100 reguł na doświadczenie. Reguły są oceniane od góry do dołu w kolejności priorytetu. Po dopasowaniu błędu do reguły dalsze przetwarzanie zatrzymuje się.
Akcje reguły
Każda reguła ma jedną z dwóch akcji:
| Akcja | Zachowanie |
|---|---|
| Ignoruj | Ukrywa dopasowane błędy z wykresu i tabeli. Użyj dla trwałego szumu, takiego jak nieuniknione błędy dźwięku silnika lub przestarzałe komunikaty. |
| Grupuj | Konsoliduje wszystkie dopasowane błędy pod jedną nazwą grupy (np. "Problemy z siecią", "Spam audio"). Nazwa grupy pojawia się jako jeden wiersz w tabeli. |
Tworzenie reguły
Są dwa sposoby tworzenia reguły:
Z tabeli błędów (inline):
- Kliknij menu kontekstowe (trzy kropki) w dowolnym wierszu błędu.
- Wybierz Ignoruj.

Z zakładki reguł:
- Przejdź do zakładki Reguły na stronie Raporty błędów.
- Kliknij Utwórz regułę.
- Wprowadź wzór (dokładny ciąg lub regex).
- Wybierz akcję: Ignoruj lub Grupuj → [Nazwa grupy].
- Zapisz regułę.

Pola tworzenia reguły
| Pole | Opis |
|---|---|
| Wzór | Dokładny ciąg znaków lub wyrażenie regularne, które ma być dopasowane do wiadomości błędów. |
| Akcja | Wybierz Ignoruj (ukryć błąd) lub Grupuj → wprowadź nazwę grupy. |

Reguły są oceniane od góry do dołu w zależności od porządku priorytetów w zakładce Reguły. Po dopasowaniu błędu do reguły, akcja tej reguły jest wykonywana, a dalsze reguły nie są oceniane dla tego błędu. Zapobiega to konfliktom, takim jak grupowanie błędu przez jedną regułę, a następnie ignorowanie go przez kolejną regułę.
Reguły wpływają tylko na błędy zarejestrowane po ich zapisaniu. Adnotacja pojawia się na wykresie, gdy reguły są modyfikowane.
Podstawy wyrażeń regularnych
Wyrażenie regularne (regex) to wzór dopasowujący tekst:
| Składnia | Znaczenie | Przykład |
|---|---|---|
| . | Dowolny pojedynczy znak | H.t pasuje do "Kapelusz", "Uderzenie", "Gorący" |
| * | Zero lub więcej poprzedzającego znaku | go*d pasuje do "gd", "bóg", "dobry" |
| + | Jeden lub więcej poprzedzającego znaku | go+d pasuje do "bóg", "dobry", ale nie do "gd" |
| .* | Dowolna sekwencja znaków (symbol wieloznaczny) | Failed.*load pasuje do "Nie udało się załadować" i "Nie udało się załadować xyz" |
| \d | Dowolna cyfra (0-9) | v\d+ pasuje do "v1", "v123", "v4488" |
| \w | Dowolny znak słowny (litery, cyfry, podkreślenie) | \w+ pasuje do "Gracz123", "moja_zmienna" |
| ^ | Początek ciągu | ^HTTP pasuje do błędów zaczynających się od "HTTP" |
| \/ | Escapowany ukośnik | rbxassetid:\/\/ pasuje do "rbxassetid://" |
| \[ i \] | Escapowane nawiasy kwadratowe (dopasowanie dosłowne) | \[Knit\] pasuje do "[Knit]" |
| (a|b) | Dopasuj "a" lub "b" | (Błąd|Ostrzeżenie):.* pasuje do "Błąd: ..." i "Ostrzeżenie: ..." |
Szybkie wskazówki:
- Zacznij od dokładnego dopasowania (pełny ciąg błędu), jeśli chcesz uchwycić jeden określony błąd.
- Użyj wyrażenia regularnego, gdy chcesz uchwycić rodzinę podobnych błędów (np. wszystkie niepowodzenia ładowania dźwięku, niezależnie od identyfikatora zasobu).
- Przetestuj swój wzór na kilku rzeczywistych ciągach błędów przed zapisaniem, aby upewnić się, że uchwyci to, co oczekujesz.
System wymusza dwie zasady na Twoich wzorach regex:
- Nie możesz umieścić powtórki (+ lub *) wewnątrz grupy powtarzanej. Na przykład, (a+)* lub (\w+)+ są odrzucane.
- Musi zaczynać się od zakotwiczony tekstu: Wzory nie mogą zaczynać się od symboli wieloznacznych, takich jak .* lub .+. Twój wzór musi zaczynać się od konkretnego znaku lub kotwicy (np. ^ lub dosłowny ciąg).
Przykłady reguł do organizowania raportów błędów
Zamiast widzieć dziesiątki osobnych wierszy błędów, skonsoliduj pokrewne błędy pod jedną nazwą grupy:
| Zastosowanie | Przykład błędów | Wzór | Akcja |
|---|---|---|---|
| Wszystkie błędy sieciowe | HttpError: ConnectFail, HttpError: Timedout | HttpError:.* | Grupuj → "Problemy z siecią" |
| Ostrzeżenia DataStore | DataStore request was added to queue, DataStoreService: ... | DataStore | Grupuj → "Ostrzeżenia DataStore" |
| Błędy GUI graczy | Players.Player1.PlayerGui.Shop:12: attempt to index nil | Players\.\w+\.PlayerGui | Grupuj → "Błędy PlayerGui" |
| Niestandardowy interfejs UI | [UIManager] Button render failed, [UIManager] Layout overflow | \[UIManager\].* | Grupuj → "System UI" |
Limity śledzenia błędów
System śledzi do 500 unikalnych błędów i 500 unikalnych ostrzeżeń według liczby oraz top 100 nowych błędów na wersję. Te liczby resetują się co 6 godzin. Aby zmaksymalizować użyteczne śledzenie błędów w tych limitach:
- Usuń unikalne identyfikatory z wiadomości błędów, takie jak identyfikatory użytkowników, współrzędne lub znaczniki czasu. Błędy takie jak Gracz 12345 nie udało się załadować i Gracz 67890 nie udało się załadować liczone są jako dwa oddzielne wpisy. Jeśli zalogujesz je jako Gracz nie udało się załadować, konsolidują się w jeden wpis z wyższą liczbą.
- Używaj reguł niestandardowych, aby grupować pokrewne błędy, które różnią się tylko wartościami dynamicznymi.
Rozwiązywanie błędów i ostrzeżeń
Podczas badania błędów z strony Raporty błędów, zastosuj następujące podejścia:
- Sprawdź stosy wywołań — Rozwiń wiersze błędów, aby zobaczyć ścieżkę wywołań i zidentyfikować dokładny skrypt oraz numer linii, w której wystąpił błąd.
- Sprawdź ostatnie aktualizacje — Monitoruj nowe błędy od ostatniej aktualizacji.
- Użyj wbudowanych narzędzi:
- Konsola dewelopera (F9 w grze): Przeglądaj błędy na żywo i testuj poprawki.
- Profiler skryptów: Zidentyfikuj błędy związane z wydajnością spowodowane kosztownymi operacjami.
- Okno wyjścia w Studio — Wykrywaj błędy podczas rozwoju przed publikacją.
- Użyj analiz — Sprawdź, czy błąd jest specyficzny dla danej platformy (Desktop, Mobile, Console) lub OS (Windows, macOS, iOS, Android).
- Zbieraj opinie społeczności — Jeśli masz Discorda dla społeczności lub post na DevForum, sprawdź, czy gracze zgłaszają ten problem i które urządzenia lub regiony są dotknięte.