Не работает плагин

Не работает плагин? Нет логов? Сложно разобраться в логах? Падает сервер? Сервер виснет? Плагин глючит?
В этой статье подробно расписано, что нужно делать.


Не работает плагин

Шаг 1) Для примера возьмем плагин StatsX RBS. C начала нужно посмотреть, запустился ли плагин. Для этого в консоль сервера(в панеле хостинга) нужно ввести команду: amxx plugins
Сервер выдаст примерно следующее:
amxx plugins
Как видим, статус плагина "stopped", это значит что он не запущен. Вместо "stopped" может быть написано: "paused", "unknown" или "bad load", это так же означает, что плагин не работает.
Работающий плагин имеет статус: "running" или "debug"

Шаг 2) Почему же плагин не запустился? В логах 99% будет ответ! Заходим в папку amxmodx/logs/
Там может быть много файлов и старых логов, которые в данный момент нам не нужны. Удалите все старое(или сохраните себе на комп, если вдруг они вам нужны), сделайте рестарт сервера(достаточно смены карты). После этого появятся новые логи, они то там и нужны.
Не забудьте в фтп клиенте обновить папку. Нажать на клавишу F5.
Скорее всего Вы увидите два файла: L20180101.log и error_20180107.log(цифры могут отличаться)
Сразу откроем error_ лог. Видим:
error_20180107.log
Вот и проблема. Забыли загрузить файл стилей от плагина на сервер, или загрузили не туда. Скачиваем архив с плагином из личного кабинета и загружаем необходимые файлы

Шаг 3) Удаляем опять логи, делаем рестарт и смотрим новые логи. Видим снова error_ лог... Открываем:
error_20180107.log next
Тут тоже все ясно, плагин говорит что отключил аналогичный плагин статистики. Заходим в plugins.ini и отключаем то что просит плагин.
Опять удалим логи и сделаем рестарт. Новых error_ логов нет, пишет amxx plugins
Ошибок нет
Все, видим "running", значит плагин работает. Можно зайти на сервер и проверить.

Все ошибки подробно расписаны в Основной документации по плагинам!


Нет логов! Плагин не работает!

Нету логов, а плагин все равно пишет статус "unknown" или другие описанные выше?

1 Вариант Повторюсь, в 99% логи будут! Если нет файла error_20180107.log, то откроем лог L20180101.log, в нем тоже могут писаться ошибки!
L20180101.log
Вот она и ошибка. Многие в этот файл не заглядывают, а зря. Ошибка говорит о том, что плагин юзает функции модуля, которого нет на сервере.
В данном случае был удален модуль csx_amxx_i386.so. Тут могут быть и другие ошибки, смотрите их в Основной документации по плагинам

2 Вариант Логов нету? Точно? Уверены? Не верим! Проверьте лучше!
Вы точно нажимали в FileZilla(фтп клиент) клавишу F5, чтобы обновить папку логов?
Вы загружаете новый файл логов? Смотрите скрин:
File Zilla
Делали рестарт? Сделайте на всякий случай жесткий рестарт(выключить и включить сервер)

3 Вариант Ну нету логов!!! Вы попали в этот 1%, логов действительно нет!
Проверьте файл amxmodx/configs/core.ini
Выключены логи
Стоит значение "0", это значит AMXX не ведет логи! Срочно нужно исправить. Поставьте: amxx_logging 1
Сделайте рестарт, и теперь увидите логи.

4 Вариант Единственный последний вариант, почему плагин не работает и не пишет логов, и его статус не "running":
Открываем файл amxmodx/configs/pausecfg.ini
Плагин на паузе
Кто то поставил плагин на паузу и снял с нее. Если это были не Вы, то могли сделать другие админы. Не нужно им давать доступ к меню плагина pausecfg.amxx(стандартный плагин amxx)
Поставить на паузу этот плагин мог какой ни будь другой плагин, нужно проверять. В общем чтобы снять плагин с паузы, достаточно удалить эту строку из файла.
К стати если плагин стоит на паузе, то в amxx plugins его статус будет "paused", но не всегда виной тому может быть pausecfg.amxx, нужно сначала смотреть логи
paused



Логи есть, но слишком много и ничего не понятно

Перестали работать сразу несколько плагинов. В логах много ошибок на непонятном английском языке. Что же делать?
Вывод amxx plugins:
много stopped
Ошибка в файле error_20180107.log:
много ошибок

Мы видим много ошибок от разных плагинов, но всему виной плагин CsStats MySQL, который судя по ошибке, не смог подключиться к базе данных.
В переводе с английского, ошибка говорит, что у юзера amxmodx@123.123.123.123 нет доступа к базе данных. Нет доступа может по причинам:
1) Не верный пароль, чаще всего так и происходит.
2) Не верные данные. Айпи, имя базы, или имя юзера. Все эти данные брать нужно у хостинга.
3) Нет удаленного доступа к базе данных. Если у Вас ISP Manager, то должна стоять галочка:
ISP Manager
4) Нет доступа...Об этом может знать только хостер, но скорее всего проблема в причинах выше.

Почему же другие плагины перестали работать спросите Вы?
Так как много наших плагинов синхронизируются, и юзают у друг друга функции, они зависят друг от друга.
Если их включать по отдельности, то они будут работать нормально, но давайте рассмотрим данный случай:
Отключился плагин CsStats MySQL так как потерял связь с базой
Плагин Army Ranks Ultimate юзает функцию плагина CsStats MySQL для получения статистики игрока, вот эту: "csstats_get_user_stats". Но плагин ксстатс отключился и арми ранкс не может использовать его функцию, поэтому выдает ошибку и тоже вырубается
Дальше плагин AR Pogony использует "ar_get_user_level", который говорит плагину звание игрока и он в свою очередь ставит нужные погоны. Так как арми ранкс упал, и этот плагин тоже остановился и выдал ошибку
Бывают и другие логи, но решать проблему нужно по тому же принципу. Исправить сначала одну ошибку, а потом смотреть другие и тоже исправлять, пока не будут чистые логи.



Падает сервер!

Как узнать причину падения сервера? Вопрос достаточно сложный, ведь сервер не указывает нам конкретно причину, но обычно падения происходят из-за плагинов или модулей

Вариант 1) Консоль сервера. При падении сервер в любом случае напишет в консоль какую ни будь причину. В большинстве случаев от нее мало пользы, но не проверить нельзя.
Ошибка при падении
Как видим, сервер упал, потому что нет необходимой модели. В наших плагинах на этот случай есть проверки, и сервер не упадет, а просто остановится плагин. Но тут можно увидеть и другую важную информацию для диагностики.

Вариант 2) Если информации в консоли нет, или от нее мало пользы, то придется отключать плагины.
Отключим абсолютно все amxx плагины, сделаем рестарт и проверим работу сервера. Если сервер так же падает, то проблема в модулях metamod'а, отключать нужно их и так же смотреть работу.
Если все работает хорошо, то включим 1-ую половину любых плагинов, и посмотрим работу. Если после рестарта сервер не падает, значит проблема кроется во 2-ой половине плагинов.
Включаем половину 2-ой половины плагинов и смотрим работу. Думаю принцип ясен, так делаем до тех пор, пока не найдем плагин, из-за которого падает сервер. Так же делать и с модулями, если падает из-за них.

Вариант 3) Если падает сервер из-за нашего плагина(Вы убедились в этом проверив 2-ым Вариантом), то не всегда проблема может быть в нем.
В интернете куча плагинов, которые могут друг с другом конфликтовать. Возможно какой то другой плагин тому виной. Отключите ВСЕ плагины кроме нашего, из-за которого проблема. Скорее всего сервер будет работать без проблем. Чтобы вычислить из-за чего конфликт, включайте плагины по 2-му Варианту и найдете виновника.

Вариант 4)
ВОПРОС: Вижу в логах amxmodx/logs/ ошибки от плагина, наверное поэтому и падает сервер.
ОТВЕТ: Вряд ли. Если сервер падает, то скорее всего amxx не успеет написать лог. Вы можете это легко проверить, сравните время падения в файле debug.log(находится в корне сервера, или можно найти в панеле хостинга) и время ошибки в amxx логах Время падения
Время ошибки
Как видим время разное, значит ошибка делу не поможет

Вариант 5) Может сервер виснет? Прочтите следующую главу.



Не запускается сервер!

Вариант 1) Скорее всего сервер не виснет, а падает. Про падение сервера прочтите заголовок выше.

Вариант 2) Не запускаться сервер может, если долго пытается соединиться с MySQL. Возьмем для примера плагин AMXBans RBS.
Откройте консоль сервера и посмотрите что там пишет. Подождите минимум 60 секунд после старта, если сервер одуплится, то в консоли побегут новые строчки и скорее всего Вы получите ошибку в логах, что нет соединения с БД

Вариант 3) Может быть виновата проверка лицензии. Такое бывает, если хостинг блокирует наши зеркала в связи с ддосом или еще по каким то причинам.
Чтобы в этом убедиться, включите debug в файле amxmodx/data/fg_settings.ini
FG Debug
Зайдите в консоль сервера и посмотрите на каком пункте зависает
Консоль сервера
Если после последней строчки ничего не идет, то скорей всего виновата привязка. Отключите все наши плагины чтобы в этом окончательно убедиться. И если подтвердилось, то напишите нам в поддержку и в поддержку хостинга. Маловероятно что проблемы у нас, но вместе мы ее решим.

Вариант 4) Нужно узнать какой из плагинов виноват в этом, для этого нужно воспользоваться методом отключения плагинов, как описано в предыдущей главе в Варианте 2.



Глюки плагина

Если плагин глючит, криво что то отображает, выдает бонус не тому игроку и прочее.

Вариант 1) Убедитесь что у Вас стоят последние версии наших плагинов. Введите в консоль сервера(что в панеле хостинга) команду: amxx plugins
Версии плагинов
Версии наших плагинов расшифровываются так: ГОД.МЕСЯЦ.ДЕНЬ. Удобно, всегда можно определить, когда вышло обновление.
Узнать номер последней версии плагинов можно в личном кабинете.
Всегда используйте свежие версии плагинов, так как в них исправляется много ошибок.

Вариант 2) Не верная настройка. Убедитесь в том, что Вы правильно настроили плагин. В конфигах наших плагинов есть подробнейшее описание к каждой настройке. Достаточно часто люди просто не читают, а проблема решается изменением какого ни будь квара.

Вариант 3) Конфликт с каким то другим плагином. Как вычислить этот конфликтующий плагин, смотрите в 3-ем варианте главы Падение сервера.

Вариант 4) Возможно в плагине баг. Ничто не идеально, но мы стремимся к этому. Опишите его подробно на страничке Баги и предложения.