Мониторинг производительности (Performance)
Модуль Performance собирает метрики операций Woo2iiko и алертит администратора.
Что мониторится
- Время выполнения операций (импорт, синхронизация, cron, webhook).
- Использование памяти (% от memory_limit).
- SQL-запросы (время и количество).
Дашборд-виджет
Виджет PerformanceWidget на дашборде:
- Графики метрик (memory, queries, request_time, operation_duration).
- Статусы (норма / превышение порога).

Пороги алертов
При превышении порогов — алерт в Telegram (каждые 5 минут, cron iiko_performance_check):
| Настройка | Ключ | По умолчанию |
|---|---|---|
| Медленная операция | iiko_performance_threshold_slow_operation | 5.0 (сек) |
| Использование памяти | iiko_performance_threshold_memory_usage | 80 (%) |
| Медленный запрос | iiko_performance_threshold_slow_query | 1000 (мс) |
| Много запросов | iiko_performance_threshold_high_query_count | 100 |
Включение
| Настройка | Ключ | По умолчанию |
|---|---|---|
| Мониторинг | iiko_performance_monitoring_enabled | yes |
| Telegram-алерты | iiko_performance_telegram_alerts | yes |
REST API
bash
GET /wp-json/woo2iiko/v1/performanceВозвращает метрики (требует manage_options).
AJAX
wp_ajax_iiko_clear_performance_data — очистка данных мониторинга (manage_options, nonce iiko_clear_performance).
Как это работает
DatabaseMonitorфорсируетSAVEQUERIESи собирает SQL наshutdown.- Метрики сохраняются в
wp_options(iiko_performance_events). - Алерты отправляются через
tg_notify().