# Устранение проблем на сервере
# Временный доступ для команды поддержки
- Залогиньтесь на сервер с Keitaro по SSH
- Выполните:
kctl support-team-access allow
Доступ активен в течении 5 дней. Запретить принудительно:
kctl support-team-access deny
Ошибка «kctl: command not found».
Выполните апгрейд конфигурации.
# FAQ
На сервере 502е ошибки.
Откройте Обслуживание — Состояние в Keitaro. Проверьте значение в строке CPU Stolen.
Показатель больше 0 — виртуальный сервер недополучает ресурсы CPU. Напишите хостеру VPS.
На сервере заполнен диск.
- Если осталось 10%-15%, попробуйте оптимизировать базу
- Если места нет, поможет исключительно увеличение диска или чистка всей статистики.
Я увеличил RAM, но Keitaro не видит обновления.
Выполните апгрейд серверной конфигурации.
Some internal error. See System log.
Проверьте Системный лог
Накапливаются команды в очереди.
Новые задачи добавляются быстрее, чем Keitaro обрабатывает текущие.
Если используете внешние сервисы, которые обновляют расходы - поставьте интервал между обновлениями побольше.
Ошибка RedisException. OOM command not allowed when used memory > maxmemory, много 500 ошибок трекера.
- Уменьшите период хранения уникальных токенов в Обслуживание → Настройки → Системные, затем Срок действия токена на лендинге. 
- Уменьшить срок уникальности в настройках кампаний: Настройки, затем Срок уникальности. 
- Сделайте апгрейд конфигурации 
Не удаётся сохранить обновлённую лицензию.
Проверьте наличие свободного места, используя консоль:
df -h
Формат вывода результата: Filesystem Size Used Avail Capacity iused ifree %iused Mounted on /dev/disk1 465Gi 407Gi 57Gi 88% 106779354 15058244 88% /
Предпоследняя колонка показывает % занятости места.
Got error 28 from storage engine.
На сервере закончилось место.
Redis is LOADING the dataset.
Решение удаляет необработанную статистику, но быстро устраняет проблему.
Запустите команду:
rm -rf /var/lib/redis/*
systemctl restart redis
2
База данных повреждена.
Повреждение происходит при ручной перезагрузке сервера или неполадках на диске. Попробуем восстановить целостность диска.
- В терминале выполните:
sudo touch /forcefsck
- Перезагрузите сервер:
reboot
- Запустите MariaDB
systemctl start mysql
Как очистить inodes на сервере?
Inodes — это файловые дескрипторы в Linux, которые отвечают за метаинформацию о стандартных файлах, директориях или других объектах файловой системы, кроме непосредственно данных и имени.
В некоторых случаях число файловых дескрипторов близится к нулю. В ОС недостаточно описаний для определения местонахождения файлов. В таком случае, файлы необходимо удалить или очистить. Для поиска выполните:
df -i
В результате получите структуру файловой системы со списком и количеством инодов, которые занимает та или иная папка. Соответственно, необходимо идти по пути папки, и при каждом вхождении проверять количество инодов командой df -i. В конечном итоге, найдете папку с файлами, которую необходимо удалить командой:
rm -rf deletedfolder/ 
Где deletedfolder/ — имя папки, которую необходимо удалить.
ВНИМАНИЕ Обязательно сверьтесь с папкой, которую собираетесь удалить: цель — удалить папку на сервере, переполненную файловыми дескрипторами, но не системные файлы сервера и ОС. Если не уверены в выполняемых действиях, напишите в тех.поддержку, поможем очистить inode. В противном случае, рискуете привести ОС сервера в неработоспособное состояние, восстановление которого не входит в нашу компетенцию. Будьте внимательны!
Сервер работает медленно.
Это могло произойти из-за недостаточного выделения CPU-ресурсов на виртуальный сервер. Запустите на сервере команду:
vmstat 1 5
Формат вывода ответа:
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
111  0      0 3438984  20280 603200    0    0    11    20   38   85 10  2 32  0 56
139  0      0 3435676  20280 603220    0    0     0     0  936  318 15  3  0  0 82
126  0      0 3434312  20280 603212    0    0     0     0  903  198 14  4  0  0 82
92  0      0 3450964  20280 603868    0    0     0     0  885  198 13  3  0  0 83
145  1      0 3452128  20280 604412    0    0   448     0  993  254 14  2  0  0 84
2
3
4
5
6
7
Обратите внимание на значения в последнем столбце st. Значение больше 0 — CPU-ресурсов выделено недостаточно.
В данном случае, рекомендуем обратиться в поддержку облачного провайдера.
Как проверить диск HDD или SSD?
Посмотрите названия дисков:
cat /proc/scsi/scsi
Ошибка "malformed worker response".
- Откройте SSH терминал.
- Выполните:
cd /var/www/keitaro/application
find . -type f -name "*.php" -exec sed -i 's/?>//g' {} +
2
# Оптимизация базы
Откройте раздел Обслуживание — Состояние в Keitaro. Если присутствует уведомление Clickhouse upgrade - напишите в поддержку для перехода на Clickhouse.
Eсли Обслуживание — Состояние выглядит аналогично скрину, то Clickhouse установлен, оптимизация не требуется

# Удаление всей статистики
kctl run cli-php system:delete_mysql_stats
Команда запросит подтверждение удаления всей статистики из MYSQL:
[WARNING] Important! The following will happen:
           - old versions tables removal,
           - clicks stats to the exact date removal (if specified in parameters),
           - optimization of the clicks in the stats,
           - cleaning all the current stats completely (if specified in parameters).
           These inquiries will block the database
           during the implementation and require additional free space on a disk.
2
3
4
5
6
7
8
Введите команду yes и нажмите ENTER.
Включите автоматическую чистку.
Чтобы не допускать переполнение диска, выставьте срок хранения статистики в настройках Keitaro.
← Статус Безопасность →
