
# Журналювання помилок

Для запиту до вибраної пісочниці завантажувальний код задає `WP_DEBUG` як `true`, `WP_DEBUG_LOG` як `debug.log` пісочниці, а `WP_DEBUG_DISPLAY` як `false`, тож помилки записуються у файл окремо для цієї пісочниці, а не в браузер.

Кожне з цих значень задається, лише якщо його ще не задала `wp-config.php`, а рядок завантажувального коду розташовано безпосередньо перед рядком `wp-settings.php`, після решти `wp-config.php`. Стандартна `wp-config.php` задає `WP_DEBUG` як `false`, тому в такій інсталяції запити до пісочниць не записуються в `debug.log` ([проблема #4](https://github.com/inline0/rudel/issues/4)). Щоб увімкнути там окремі журнали для пісочниць, видаліть визначення `WP_DEBUG`, `WP_DEBUG_LOG` і `WP_DEBUG_DISPLAY` з `wp-config.php`. Після цього WordPress залишає налагодження вимкненим для запитів до хоста, а завантажувальний код вмикає журналювання для запитів до пісочниць.

## Перегляд журналів

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

Типово показуються останні 50 рядків. `--follow` виконує `tail -f` над файлом.

## Очищення журналів

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

## Розташування журналів

Файл журналу розташований у каталозі пісочниці:

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

Цей каталог міститься в `wp-content`, і вебсервери надають доступ до нього, як і до будь-якого іншого файлу в цьому місці. Заблокуйте вебдоступ до файлів `*.log` і каталогів `snapshots` у `rudel-environments` на будь-якому хості, доступному іншим ([проблема #9](https://github.com/inline0/rudel/issues/9)).

## Блокування електронної пошти

Запити до пісочниць блокують вихідну електронну пошту. Якщо задано `WP_DEBUG_LOG`, кожне заблоковане повідомлення записується разом з адресою одержувача й темою через `error_log()`. Воно потрапляє до `debug.log` пісочниці лише за активного журналювання налагодження, як описано вище; інакше його записують у типовий журнал помилок PHP.
