Коллектор переводов
Захватывает поиск переводов во время выполнения запроса — разрешённые переводы, отсутствующие ключи, использование локалей и категории.

Собираемые данные
| Поле | Описание |
|---|---|
category | Категория/домен перевода |
locale | Целевая локаль |
message | Ключ перевода |
translation | Разрешённый перевод (или null, если отсутствует) |
missing | Был ли перевод не найден |
fallbackLocale | Использованная резервная локаль (если есть) |
Схема данных
{
"translations": [
{
"category": "messages",
"locale": "en",
"message": "welcome.title",
"translation": "Welcome to App",
"missing": false,
"fallbackLocale": null
},
{
"category": "messages",
"locale": "fr",
"message": "missing.key",
"translation": null,
"missing": true,
"fallbackLocale": "en"
}
],
"missingCount": 1,
"totalCount": 2,
"locales": ["en", "fr"],
"categories": ["messages"]
}Сводка (отображается в списке отладочных записей):
{
"translator": {
"total": 2,
"missing": 1
}
}Контракт
use AppDevPanel\Kernel\Collector\TranslatorCollector;
use AppDevPanel\Kernel\Collector\TranslationRecord;
$collector->logTranslation(new TranslationRecord(
category: 'messages',
locale: 'en',
message: 'welcome.title',
translation: 'Welcome to App',
missing: false,
));INFO
TranslatorCollectorAppDevPanel\Kernel\Collector\TranslatorCollectorCaptures translation lookups during request execution. реализует SummaryCollectorInterfaceAppDevPanel\Kernel\Collector\SummaryCollectorInterfaceSummary data collector responsibility is to collect summary data for a collector. Summary is used to display a list of previous requests and select one to display full info. Its data set is specific to the list and is reduced compared to full data collected in {@see CollectorInterface}.. Не имеет зависимостей от других коллекторов.
Как это работает
Коллектор получает данные от TranslatorProxy, который перехватывает вызовы к сервису переводов. Каждый вызов trans() / translate() записывается вместе с результатом.
Подробные примеры интеграции для каждого фреймворка см. на странице Переводчик.
Панель отладки
- Список переводов — все запросы с ключом, разрешённым значением и локалью
- Обнаружение отсутствующих — отсутствующие переводы выделены красным
- Разбивка по локалям — переводы сгруппированы по локали
- Фильтрация по категории — фильтр по домену/категории перевода