Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

16 страниц V   1 2 ... 14 15 »

Server Stat System

, Своя статистика сервера
Статус пользователя redow
сообщение 16.11.2010, 14:57
Сообщение #1


Стаж: 13 лет

Сообщений: 90
Благодарностей: 57
Полезность: 487

Текущая версия статы: 1.5.final

Вот наконец доработал свою стату, решил выложить на общий суд. Сама статистика разрабатывалась для себя пару лет назад, но была брошена недоделаной, сейчас немного доработал и вышло то, что вышло.

А именно:
  • Мониторинг сервера
  • Банлист (не только список банов, но и проверка пользователя по базе при заходе на сервер - ip, nick, SteamID)
  • Статистика игроков (общее, по каждому оружию, по каждой карте)
  • Статистика карт
  • Статистика подключений к серверу в виде графика за неделю, месяц, 3 месяца
  • Топ игроков
  • Топ карт
  • Поиск игроков
  • Отображение админов сервера
  • Отображение кваров сервера
  • Мультиязычность (сразу есть рус, укр, англ)
  • Поддержка модулей (thx to нуб2)
  • "Саморемонт" высоконагруженых таблиц статистики - таблетка от "падений" бд.
  • Комманды управления плагином (остановка статистики, перезапуск, перезагрузка кваров статистики, принудительное обновление в базе)
  • Данные собираются с точностью до 99%!

Конечно, до психа далеко, но простая и без наворотов, проста в установке и использовании.

Система состоит из:
  • amxx плагина к серверу
  • чуть-чуть переделаный admincmd.amxx и его исходник (зачем это - чуть ниже)
  • cfg файла
  • web части

Зачем переделан admincmd.amxx?
А затем, что бы работали баны. Весь функционал файла сохранен, ничего не вырезано, и, собстенно, в оригинале изменено ровно 3 строчки, которые общую картину файла не меняют. Можете сами сравнить оригинал и исходник, который прилагается, - ничего левого и скрытого не добавлено. Особо недоверчивые могут даже сами скомпилировать прилагаемый исходник :biggrin:

Установка

Требования к web части:
apache 2+ (ModRewrite),
php 5.2+ (short_open_tag on),
mysql 5+

Иначе не гарантируется корректная работа скрипта.

1. Скопировать все файлы сервера в необходимые папки.
2. Настроить ServerStatSystem.cfg - комментарии к настройкам прилагаются
3. Подключить плагин к серверу (думаю, как это делается обьяснять не нужно:))
4. Скопировать web часть системы туда, где хотите ее видеть. Если это удаленный сервер (например, хостинг) - удаленный mysql должен поддерживать удаленные соединения с вашего ip или пользователя бд.
5. Если ваш http сервер не под виндой (*nix, например) - необходимо выставить права 0777 на папки inc/, inc/smarty/cache/ и inc/smarty/templates_c
6. Пройти по вашему http адресу (если домашний комп - localhost) и установка скрипта сама запустится.
7. Заполнить все необходимые поля и нажать соответствующую кнопочку.
8. Доступ в "админку", где вы можете отключить те, или иные плагины, по адресу: {путь_к_скрипту}/configs/. Логин и пароль те, которые ввели при установке. При желании, их изменить можно в файле конфигурации (inc/config.php).

Если ошибок нету - система нормально установлена и работает.
Если есть ошибки - по ним, думаю, все будет понятно.
Комманды в плагине

  • amx_stat_status - выводит текущий статус подключения пагина к mysql. в дальнейшем количество данных увеличим.
  • amx_stat_flush - принудительно обновляет все данные в базе
  • amx_stat_reconnect - переподключает плагин к базе, если подключения нету
  • amx_stat_disconnect - отключает плагин от базы и останавливает работу плагина
  • amx_stat_reconfig - перезагружает конфиг плагина

комманды работают как из консоли админа, так и из консоли сервера.
Частые "подводные" камни и некоторые замечания

  • Cразу после установки вылазит ошибка "500 Internal server error". Все просто - к apache не подключен mod_rewrite. Достаточно раскоментировать строку с его подключением в httpd.conf (LoadModule rewrite_module modules/mod_rewrite.so / .dll) и перезагрузить апач.
  • Скачет пинг игроков после подключения плагина статистики. Скорее всего, подглючивает mysql и необходимо подкрутить его настройки. Причин этому может быть несколько - он просто криво настроян, на нем работает довольно крупный портал, который не дает свободно работать с базой плагину или на нем работает небольшой, но очень кривой сайт :) Так же можно "подкрутить" нагрузку плагина отключением модулей в ServerStatSystem.cfg.
  • Начиная с релиза v1.5.rc3 осторожно нужно обращться с переменной stat_with_bots. крайне желательно после смены параметра перезагружать сервер, а не просто обновлять конфиг коммандой amx_stat_reconfig, т.к. в базу будут добавляться очень некорректные данные до перезагрузки сервера или до смены карты.
  • Для ботов не считаются коннекты, выстрелы и попадания.
  • Не добавляются баны. Проверьте подключен ли прилагаемый admincmd.amxx. Если на сервере используется amxbans - статистику неоходимо подключить ДО него в plugins.ini, тогда баны будут добавляться и в статистику и в amxbans. В версии 2.0 планируется догнать amxbans по функционалу, что позволит полностью от него отказаться.
  • Не работает rewrite при настройке статистики под nginx. С решением этой проблемы помог пользователь TTRTTR. Для решения проблемы необходимо описать такой редирект в конфиге nginx:
    Код
    rewrite index(.*) /index.php last;
    rewrite .+/([\d]+)\.html /index.php last;

Changelog

v1.5.final
  • Исправлен баг с "[SSS] Error with query `INSERT INTO `corrmap` SET `name`='', ..."
  • Исправлен баг с падением нагруженых таблиц при высоких нагруках на стату - добавлен "авторемонт"
  • Еще немного оптимизирована работа с mysql
  • Более читабельный вывод mysql ошибки в консоль
  • Расширеное отображение данных в amx_stat_status
  • sv_password не заносится в отображаемый список кваров
  • Переделан принцип вывода страниц в статистике игроков
  • Мелкие правки в шаблоне


v1.5.rc3
  • Добавлена улучшеная поддержка ботов - можно отключить/включить для них посчет статистики
  • Убрано добавление hltv клиентов в статистику
  • Добавлена возможность определения админов не только по нику (по ip и по steam_id), no-steam auth_id игнорируются
  • Убран иногда вылазивший баг с кешем графиков статистики коннектов
  • Мелкие правки в шаблоне


v1.5.rc2
Добавлен вывод ошибок на все запросы в базу данных (если таковые присутствуют)

v1.5
  • переписано половину кода плагина, что должно:
    уменьшить нагрузку на mysql и на сервер в целом;
    позволить более точно собирать данные
  • копирайт в плагине убран в чат и показывается 1 раз за подлючение игрока (включая смену карты)
  • добавлен вывод ошибки подключения к mysql
  • добавлены комманды в плагин
  • добавлена система модулей. теперь можно отключить ненужный модуль как в веб части, так и кваром в плагине (отключением плагинов также можно урегулировать нагрузку на мускуль/сервер)
  • добавлена админка для управления модулями веб части. в дальнейшем ее функционал будет расширяться.
  • в связи с модулями, переделан принцип шаблонизации (коснется только тех, кто делает шаблоны)
  • добавлена "вкусняшка" в статистику - "любимая жертва" и "злейший враг"
  • добавлен топ карт
  • убран баг с отсутствием картинок в дефолтном шаблоне
  • частота обновления кеша картинки коннектов уменьшена до часа
  • мелкие правки в шаблоне, языковых файлах


v1.1
  • убран баг с количеством отображения онлайн
  • убран баг с перелистыванием страниц игроков в стандартном шаблоне
  • добавлены параметры stat_save_cvars и stat_save_admins в конфиг, которые запрещают сохранять данные в базу
  • поправлено кеширование страниц
  • теперь css корректно подгружается НЕ из корня, главное - правильно подгружать (пример в дефолтном шаблоне)
  • убран лишний вывод с главной (если выводить нечего из админов или кваров)
  • по просьбам играющих сделал вывод сообщения в плагине 1 раз при заходе на сервер
  • мелкие незапоминающие правки в шаблоне и скрипте :)


v1.0: Первый релиз

Что будет дальше?

А дальше - 2.0. Планируется существенно расширить возможности и функционал статистики, т.к. базовая статистика работает более-менее стабильно.
Что планируется:
  • Полностью повторить функционал AmxBans, что позволит от него отказаться, используя плагин статистики.
  • Расширения статистики для модов, таких, как: GunGame, War3FT, Zombie Mod etc.
  • Расширенная статистика коннектов (ориентир - псих)
  • Улучшеная админка.
  • Добавить нормальных шаблонов, что бы было из чего выбрать.
  • Много-много мелких, но интересных идей.
  • Сделать небольшой сайтец :)

Из старого todo, возможно и его сделаю:
  • мб лучшие игроки за определенный период (thx to mafikmail)
  • лог чата (thx to mafikmail)
  • мб live tv (thx to нуб2)

Доп. инфо

Дополнительные языки
Дополнительный язык добавить очень просто - возьмите один из существующих в папке \inc\languages\, переведите его и положите измененный с соответствующим именем (например, ru.ini). Было бы неплохо выкладывать их в теме и я их буду добавлять в релиз.

Изображения к картам
Собрана неплохая коллекция изображений к картам. Но, естественно, не всех существующих карт. Что бы добавить изображение - достаточно положить ее в папку \images\maps\ с названием карты в нижнем регистре (!) и расширением только jpg (например, de_dust.jpg)! Желательно размер изображения 160х120 или его производные (легко делается из 1024x768 или 1280х1024). Выкладываем свои паки изображений здесь - будем добавлять в релизы.

Изображение к графику коннектов
Если вас чем-то не устраивает текущее изображение (а оно не устраивает и меня :biggrin: ) - его можно легко поменять. Замените файл \images\special\graphfon.jpg на свой, но изображение обязательно должно быть jpg с размерами 600x300, иначе не гарантируется корректная работа графика. После изменения не забываем удалить кеш из папки \inc\smarty\cache\. Так же выкладываем свои варианты в топике - понравившийся поставлю в релиз ;)

Шаблоны скрипта
Если чесно, мне было влом делать еще шаблоны. Кто знает что такое smarty (а использован именно он в качестве шаблонизатора) - не составит большого труда поделать свои шаблоны. Кто не знает - может разобраться, ничего сложного нету и манов в нете куча (офф сайт с документацией: http://www.smarty.net/documentation ). Естественно, выкладываем свои шаблоны в теме - буду добавлять в релизы.

Если вам необходимо поменять установочные парметры (например, подключение к базе или шаблон) после установки - они лежат в файле \inc\config.php

Баги
Если нашли какие-то баги - пишем здесь и будем их решать.

Скриншоты


Вроде бы все. Приятного пользования и следите за обновлениями!

ЗЫ: кто не знает что такое апач (apache), мускуль (mysql) или amxx - проходим мимо и не заморачиваемся. Или разбираемся сами как устанавливать web часть. Мусорить в теме запросами "что такое access denide for user root ... " не нужно!

ЗЫЫ: принимается аргументированная критика, предложения и замечания

Скачать: Прикрепленный файл  ServerStatSystem_v1.5.final.zip ( 7,62 мегабайт ) Кол-во скачиваний: 1347


Отредактировал: iLLuSioN, - 3.5.2011, 19:01
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя STILL47DEATH
сообщение 16.11.2010, 16:28
Сообщение #2


Стаж: 16 лет

Сообщений: 662
Благодарностей: 83
Полезность: 150

redow, а примеры работы веб части имеюстя?! где можно глянуть как всё это чудо выглядит?!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя balaban
сообщение 16.11.2010, 17:13
Сообщение #3


Стаж: 16 лет

Сообщений: 2131
Благодарностей: 1074
Полезность: 1160

MyArena.ru
Меценат Меценат

Скриншоты бы
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя STILL47DEATH
сообщение 16.11.2010, 18:19
Сообщение #4


Стаж: 16 лет

Сообщений: 662
Благодарностей: 83
Полезность: 150

Цитата(balaban @ 16.11.2010, 18:13) *
Скриншоты бы

ну это на крайняк, если живого примера нет...
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя redow
сообщение 16.11.2010, 18:33
Сообщение #5


Стаж: 13 лет

Сообщений: 90
Благодарностей: 57
Полезность: 487

Пардон, добавил архив со скринами каждой страницы. Живой пример не могу показать, т.к. система на локалхосте и паблик доступ не оч хочется открывать..
ЗЫ: кто узнал себя в списках - поздравляю - вы стали пушечным мясом для тестов статы :biggrin:

Отредактировал: redow, - 16.11.2010, 18:33
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя vkontakte
сообщение 16.11.2010, 18:54
Сообщение #6


Стаж: 14 лет

Сообщений: 2509
Благодарностей: 486
Полезность: < 0

пойду поставлю

не устанавливается, ошибки нету, просто опера пишет адресс недоступен

http://gcn.pp.ua/test/

Отредактировал: vkontakte, - 16.11.2010, 18:56
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя redow
сообщение 16.11.2010, 18:59
Сообщение #7


Стаж: 13 лет

Сообщений: 90
Благодарностей: 57
Полезность: 487

быть может, просто сама папка и не доступна по http?

UPD понял в чем ошибка, щас исправлю, сек

Отредактировал: redow, - 16.11.2010, 19:02
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vkontakte
сообщение 16.11.2010, 19:13
Сообщение #8


Стаж: 14 лет

Сообщений: 2509
Благодарностей: 486
Полезность: < 0

Цитата(redow @ 16.11.2010, 18:59) *
быть может, просто сама папка и не доступна по http?

UPD понял в чем ошибка, щас исправлю, сек


оно вобщето установило, таблицы создало в конфиге прописало данные но больше ничего не грузит
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя redow
сообщение 16.11.2010, 19:20
Сообщение #9


Стаж: 13 лет

Сообщений: 90
Благодарностей: 57
Полезность: 487

Поправил этот баг и нарисовался еще один:

Цитата
Баги
Если нашли какте-то баги - пишем здесь и будем их решать. В данный момент известно, что немного не правильно считаются убийства и выстрелы/попадания (отстают от реальных значений). Но мы это поправим в дальнейшем.

Обнаружен баг в web части - при установке скрипта не в корень не правильно подгружаются картинки их css файла, придется пока их руками редактировать (в стандартном шаблоне в файле \templates\default\style\_grid.css все ссылки "/templates/default/" менять на соответсвующие папке со скриптом). Пока постараюсь побыстрее поправить.


но с этим справиться проще)
архив перезалил.

если не хочется качать все - изменил только одну строчку в файле index.php и одну удалил:

Код
$params = explode("/",str_replace("?".$_SERVER['QUERY_STRING'],"",$_SERVER['REQUEST_URI']));

на

Код
$params = explode("/",preg_replace("~^".$homedir."~","",str_replace("?".$_SERVER['QUERY_STRING'],"",$_SERVER['REQUEST_URI'])));

и удалили сразу после них строчку

Код
array_shift($params);


Отредактировал: redow, - 16.11.2010, 19:33
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vkontakte
сообщение 16.11.2010, 19:32
Сообщение #10


Стаж: 14 лет

Сообщений: 2509
Благодарностей: 486
Полезность: < 0

Код
L 11/16/2010 - 19:31:25: [MySQL] Invalid database handle: 0
L 11/16/2010 - 19:31:25: [AMXX] Displaying debug trace (plugin "ServerStatSystem.amxx")
L 11/16/2010 - 19:31:25: [AMXX] Run time error 10: native error (native "SQL_PrepareQuery")
L 11/16/2010 - 19:31:25: [AMXX]    [0] ServerStatSystem.sma::getuserid (line 191)
L 11/16/2010 - 19:31:25: [AMXX]    [1] ServerStatSystem.sma::chekBan (line 554)
L 11/16/2010 - 19:31:25: [AMXX]    [2] ServerStatSystem.sma::client_connect (line 337)


не работает, http://gcn.pp.ua/test/ да там вобще ссылки ссылаются на несуществующие пути, нету у меня там папок bans players maps

Отредактировал: vkontakte, - 16.11.2010, 19:37
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя redow
сообщение 16.11.2010, 19:38
Сообщение #11


Стаж: 13 лет

Сообщений: 90
Благодарностей: 57
Полезность: 487

данные для коннекта к мускулу правильные дал в cfg файле? из ошибки
Цитата
Invalid database handle: 0

видно, что не подключен к базе, отсюда все тянется.

Цитата
не работает, http://gcn.pp.ua/test/ пытается перейти на .html страницы, а в сервере ток .php

удалил строчку
Цитата
array_shift($params);

в index.php?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vkontakte
сообщение 16.11.2010, 19:40
Сообщение #12


Стаж: 14 лет

Сообщений: 2509
Благодарностей: 486
Полезность: < 0

Цитата(redow @ 16.11.2010, 19:38) *
данные для коннекта к мускулу правильные дал в cfg файле? из ошибки

видно, что не подключен к базе, отсюда все тянется.


удалил строчку

в index.php?


Цитата
http://gcn.pp.ua/test/ да там вобще ссылки ссылаются на несуществующие пути, нету у меня там папок bans players maps


Прикрепленное изображение

Отредактировал: vkontakte, - 16.11.2010, 19:41
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя redow
сообщение 16.11.2010, 19:43
Сообщение #13


Стаж: 13 лет

Сообщений: 90
Благодарностей: 57
Полезность: 487

этих папок и не должно быть, они "виртуальные" и обрабатываются соответствующими модулями системы.

тогда давай сделаем так:
в index.php сразу после "$params = explode("/",preg_replace" ... вставь строчку

Код
print_r($params);


а я гляну в чем беда
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vkontakte
сообщение 16.11.2010, 19:46
Сообщение #14


Стаж: 14 лет

Сообщений: 2509
Благодарностей: 486
Полезность: < 0

Цитата(redow @ 16.11.2010, 19:43) *
этих папок и не должно быть, они "виртуальные" и обрабатываются соответствующими модулями системы.

тогда давай сделаем так:
в index.php сразу после "$params = explode("/",preg_replace" ... вставь строчку

Код
print_r($params);


а я гляну в чем беда


так? Прикрепленное изображение
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя redow
сообщение 16.11.2010, 19:48
Сообщение #15


Стаж: 13 лет

Сообщений: 90
Благодарностей: 57
Полезность: 487

да, все верно.
только не понятно, почему не работает )) должно бы.. покумекаю, пока не убирай, хай так будет
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя redow
сообщение 16.11.2010, 20:10
Сообщение #16


Стаж: 13 лет

Сообщений: 90
Благодарностей: 57
Полезность: 487

vkontakte,
написал в личку ..
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vkontakte
сообщение 16.11.2010, 21:47
Сообщение #17


Стаж: 14 лет

Сообщений: 2509
Благодарностей: 486
Полезность: < 0

http://gcn.pp.ua/test/?setLang=ru

Цитата
Игроки 34 / 32
круто))

Отредактировал: vkontakte, - 16.11.2010, 21:47
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Tr1sT
сообщение 16.11.2010, 21:56
Сообщение #18
Стаж: 14 лет
Город: localhost

Сообщений: 1299
Благодарностей: 683
Полезность: 1021

Пока багов очень много нашли. Идея очень интересная, если люди будут отписываться о ошибках, то проект очень хорошо возможно поднять.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя vkontakte
сообщение 16.11.2010, 22:04
Сообщение #19


Стаж: 14 лет

Сообщений: 2509
Благодарностей: 486
Полезность: < 0

Цитата(Tr1sT @ 16.11.2010, 21:56) *
Пока багов очень много нашли. Идея очень интересная, если люди будут отписываться о ошибках, то проект очень хорошо возможно поднять.


так опиши баги, темболее если это касается бехопасности

Отредактировал: vkontakte, - 16.11.2010, 22:05
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Tr1sT
сообщение 16.11.2010, 22:09
Сообщение #20
Стаж: 14 лет
Город: localhost

Сообщений: 1299
Благодарностей: 683
Полезность: 1021

vkontakte мне кажется что пока здесь будет и так много багов. Так как проект новый, первый реализ. Баги воосновном web части. Насчёт амхх мало что знаю так как исходника не видел.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
16 страниц V   1 2 ... 14 15 »
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: