
# Zaznamenávanie chýb

Pri požiadavke smerovanej do vybraného sandboxu bootstrap definuje `WP_DEBUG` ako `true`, `WP_DEBUG_LOG` ako `debug.log` sandboxu a `WP_DEBUG_DISPLAY` ako `false`, takže chyby sa zapisujú do samostatného súboru pre sandbox namiesto prehliadača.

Každá z nich sa definuje iba vtedy, ak ju už nedefinovalo `wp-config.php`, a riadok bootstrapu sa nachádza priamo nad riadkom `wp-settings.php`, za zvyškom `wp-config.php`. Štandardná inštalácia `wp-config.php` definuje `WP_DEBUG` ako `false`, takže pri takejto inštalácii sa požiadavky sandboxu nezapisujú do `debug.log` ([problém č. 4](https://github.com/inline0/rudel/issues/4)). Ak chcete mať samostatné protokoly pre sandboxy, odstráňte definície `WP_DEBUG`, `WP_DEBUG_LOG` a `WP_DEBUG_DISPLAY` z `wp-config.php`. WordPress potom ponechá ladenie vypnuté pre požiadavky hostiteľa a bootstrap zapne zaznamenávanie pre požiadavky sandboxu.

## Zobrazenie protokolov

```bash
wp rudel logs alpha-3be7
wp rudel logs alpha-3be7 --lines=200
wp rudel logs alpha-3be7 --follow
```

Predvolene sa zobrazí posledných 50 riadkov. `--follow` spustí `tail -f` v súbore.

## Vymazanie protokolov

```bash
wp rudel logs alpha-3be7 --clear
```

## Umiestnenie protokolu

Súbor protokolu sa nachádza v adresári sandboxu:

```text
wp-content/rudel-environments/{id}/debug.log
```

Tento adresár sa nachádza v `wp-content` a webové servery ho sprístupňujú ako ktorýkoľvek iný súbor v tomto umiestnení. Na každom hostiteľovi dostupnom ostatným blokujte webový prístup k súborom `*.log` a adresárom `snapshots` v rámci `rudel-environments` ([problém č. 9](https://github.com/inline0/rudel/issues/9)).

## Blokovanie e-mailov

Požiadavky zo sandboxu blokujú odosielanie e-mailov. Ak je definované `WP_DEBUG_LOG`, každá zablokovaná správa sa zaznamená spolu s príjemcom a predmetom prostredníctvom `error_log()`. Do protokolu `debug.log` sandboxu sa dostane iba vtedy, keď je aktívne zaznamenávanie ladenia, ako je opísané vyššie; inak sa zapíše do predvoleného protokolu chýb PHP.
