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

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

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

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

Легкий скрипт авто-отчистки csstats.amxx.

, По крону, через web.
Статус пользователя oxoTHuk.
сообщение 16.10.2015, 12:22
Сообщение #1


Иконка группы

Стаж: 17 лет

Сообщений: 879
Благодарностей: 515
Полезность: 867


Предыстория: было как-то принято у нас на проекте, чистить статистику раз в месяц. Какое-то время чистили вручную, не ленились. Но с каждым разом, все реже и реже занимались этим.
В конце концов, не так давно сервер "умер" из-за 15-и мегабайтного файла статистики. Если и поднимался, то еле-еле. Сервер реанимировали конечно, но этот конфуз сподвиг меня к написанию скрипта отчистки по крону, т.к. давно хотел\искал, но руки не доходили\не находил.

Требования:
  • rcon пароль (желательно один на всех серверах, если их много)
  • наличие сервера в БД(AmxBans или своя табличка - не важно)
  • crontab

На данный момент в скрипте реализован самый минимум (20 строк кода), есть идеи, которыми буду дополнять. Но на данный момент выкладываю пока так.

Установка:
  • разархивировать на сайт
  • настроить connect.php
  • настроить cron

Мой пример крона:Код:
### Reset stats ###
## Beta House ##
0 0 1 * * /usr/bin/php /home/www/gobans.g-nation.ru/public_html/scripts/stats_reset.php

Соответственно каждое первое число следующего месяца, в 00:00 на сервер будет посылаться команда csstats_reset 1, и после смены карты, статистика будет пуста.
В планах:
  • реализовать список серверов из массива (без БД)
  • реализовать список команд (например, посылаем сброс статистикии сразу же меняем карту)


Зачем это нужно? Для меня это полезно, хоть и легко, но т.к. в паблике я такого не видел, решил выложить, может полезно будет не только мне.
Где-то что-то мог забыть, поэтому, если что-то не работает, пишите, будем смотреть\править.
Для того, чтобы просто послать очистку статистики без крона, просто запустите stats_reset.php в браузере.

Credits:
  • xPaw за его крутейший SourceQuery класс


Отредактировал: oxoTHuk., - 16.10.2015, 12:43
Прикрепленные файлы:
Прикрепленный файл  stats_reset.zip ( 10,06 килобайт ) Кол-во скачиваний: 28
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 5 раз
   Цитировать сообщение
Статус пользователя BornToBeFree
сообщение 16.10.2015, 12:50
Сообщение #2


Стаж: 12 лет

Сообщений: 741
Благодарностей: 287
Полезность: 602

Меценат Меценат

Было бы круто, чтобы по крону удалялись неактивные игроки, к примеру у которых меньше N фрагов


Скидка 5% при заказе сервера
Чтобы получить 5% скидку при заказе сервера на хостинге Serva4ok.ru
Необходимо ввести это кодовое слово gKUt-FENO-ZonE-aIaa
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя oxoTHuk.
сообщение 16.10.2015, 12:53
Сообщение #3


Иконка группы

Стаж: 17 лет

Сообщений: 879
Благодарностей: 515
Полезность: 867

BornToBeFree, эм..., если бы в БД было, не вопрос, два запроса хД. А файл парсить вообще не вариант.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя onotole
сообщение 16.10.2015, 13:52
Сообщение #4


Иконка группы

Стаж: 13 лет

Сообщений: 1572
Благодарностей: 1119
Полезность: 1550

Меценат Меценат

Цитата(oxoTHuk. @ 16.10.2015, 13:49) *
BornToBeFree, эм..., если бы в БД было, не вопрос, два запроса хД. А файл парсить вообще не вариант.

Да и парсить не получится, ибо это бинарный файл.
По поводу скрипта, подключаться к базе нет необходимости. Ведь итак вручную ркон прописывается. Так же и адрес прописать
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя oxoTHuk.
сообщение 16.10.2015, 14:02
Сообщение #5


Иконка группы

Стаж: 17 лет

Сообщений: 879
Благодарностей: 515
Полезность: 867

onotole, есть же вроде где-то что-то, что читает его и в веб пишет =))) Не смотрел еще реализацию.

По поводу ркона, это пока так. У меня в БД просто они пустые. На днях, как время будет, хочу сделать просто два варианта, либо чисто из БД брать данные, либо из массива. На данный момент пока "смешанный" вариант =)))
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: