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

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

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

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

RRD Tool

Статус пользователя 330863
сообщение 28.2.2011, 18:46
Сообщение #1


Стаж: 16 лет

Сообщений: 4358
Благодарностей: 1079
Полезность: 497

Может кто знаком с RRD Tool и видел плагин который берёт статистику онлайна с сервака и делает график ? pardon.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя 330863
сообщение 1.3.2011, 17:45
Сообщение #2


Стаж: 16 лет

Сообщений: 4358
Благодарностей: 1079
Полезность: 497

Добавлю что чутьчуть перепутал ,плагин нужен для Munin ,а для мунина RRD Tool графики делает
Шас нашёл для srcds(CS:S) плагин с фпс игроками итд тут: http://css.setti.info/downloads/munin-srcds-plugin/

Помогите найти для кс1.6 :) умоляю
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя 330863
сообщение 2.3.2011, 9:00
Сообщение #3


Стаж: 16 лет

Сообщений: 4358
Благодарностей: 1079
Полезность: 497

вот пример нашёл: http://fragarena.pl/munin/fragarena.pl-CS/..._hlds_i686.html
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Serj
сообщение 2.3.2011, 16:22
Сообщение #4


Стаж: 15 лет

Сообщений: 855
Благодарностей: 266
Полезность: 198

Здесь смотрел?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя 330863
сообщение 2.3.2011, 17:54
Сообщение #5


Стаж: 16 лет

Сообщений: 4358
Благодарностей: 1079
Полезность: 497

serejka,
мне нужен не сам мунин а только плагин который берёт статистику с серверов ,ну как пример фпс ,нагрузку проца от hlds ,число игроков (это уже нашёл но не такое уж идеальное :) )
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qwerty1234567890
сообщение 7.3.2011, 20:15
Сообщение #6
Стаж: 16 лет

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

Типа такого? http://bbs.unet.ws/serv/
Если в кактусе разбираешься - ничо сложного.

csplayers1.php
для вывода текущего кол-ва игроков на сервере
Код
<?php
if(!function_exists('getmicrot ime'))
{
function getmicrotime()
{
list($usec, $sec) = explode(" ", microtime());
return ((float)$usec + (float)$sec);
}
}
function serverInfo($ip, $port)
{
$ip = gethostbyname($ip);
$timeStart = getmicrotime();
$fp = fsockopen('udp://'.$ip, $port);
stream_set_timeout($fp, 2);
if($fp)
{
fwrite($fp,"\xFF\xFF\xFF\xFFTSource Engine Query\0\r");
$temp = fread($fp, 4);
$status = socket_get_status($fp);
if($status['unread_bytes']>0)
{
$temp = fread($fp, $status['unread_bytes']);
$server['ping'] = (int)((getmicrotime() - $timeStart)*1000);
$array = array();
$pos = 0;
while($pos !== false)
{
$pos2 = strpos($temp, "\0", $pos+1);
$array[] = substr($temp, $pos+1, $pos2-$pos)."\n";
$pos = $pos2;
}
$server['status'] = 'on';
if( strpos($array[0], $ip) !== 0)
{
$server['players'] = ord($array[5][0]);
$server['maxplayers'] = ord($array[5][1]);
$server['name'] = trim(substr($array[0], 1));
$server['map'] = trim($array[1]);
$server['game'] = trim($array[2]);
}
else
{
$server['players'] = ord($array[5][0]);
$server['maxplayers'] = ord($array[5][1]);
$server['name'] = trim($array[1]);
$server['map'] = trim($array[2]);
$server['game'] = trim($array[3]);
}
$command = pack("V", -1) . 'W';
fwrite($fp, $command, strlen($command));
$temp = fread($fp, 1500);
$temp = substr($temp, 5);
$lo = (ord($temp[1]) << 8) | ord($temp[0]);
$hi = (ord($temp[3]) << 8) | ord($temp[2]);
$data = "\xFF\xFF\xFF\xFF\x55".pack("V", ($hi << 16) | $lo);
fwrite($fp, $data);
$temp = fread($fp, 5);
$status = socket_get_status($fp);
if($status['unread_bytes']>0)
{
$temp = fread($fp, $status['unread_bytes']);
$array = array();
$temp = substr($temp, 1);
for($i=1;$i<=$server['players'];$i++)
{
$temp = substr($temp, 1);
$pos = strpos($temp, "\0");
$name = substr($temp, 0, $pos);
$temp = substr($temp, $pos+1);
$lo = (ord($temp[1]) << 8) | ord($temp[0]);
$hi = (ord($temp[2]) << 8) | ord($temp[3]);
$temp = substr($temp, 4);
$kills = ($hi << 16) | $lo;
$f = @unpack("f1float", $temp);
$temp = substr($temp, 4);
$time = (int)$f['float'];
if(trim($name))
$server['stats'][] = array("name" => $name, "kills" => $kills,
"time" => gmdate("H:i:s", $time));
}
}
}
else
$server['status'] = 'off';
}
return $server['players'];
}

$info1 = serverInfo('IP_сервера','27015');
echo $info1;
echo ".00
";
?>


srv_info.sma
Для вывода в файл среднего, максимального и минимального FPS сервера каждые 5 мин.
Плагин написан xakintosh, доработан мной.
Код
/* This plugin is made by xakintosh with Amxmodx Studio 1.4.3 (final) */
// Thanks to @He3aBucuM
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

new hud_rgb, hud_x, hud_y, hud_effects,maxplayers,hudsync;
new Float:globalfps2 = 0.0;
new Float:globalfps3 = 0.0;
new Float:globalfpsmin = 10001.0;
new Float:globalfpsmax = 0.0;
new counter=0;

public plugin_init() {
     register_plugin("Server Side Info","1.6","xakintosh")
     hud_rgb = register_cvar( "srv_hud_rgb", "0 255 0" )
     hud_x = register_cvar( "srv_hud_x", "0.11" )
     hud_y = register_cvar( "srv_hud_y", "0.00" )
     hud_effects = register_cvar( "srv_hud_effects", "0" )
     hudsync = CreateHudSyncObj()
     maxplayers = get_maxplayers()
     set_task(1.0, "Fwd_StartFrame", 1, "", 0, "b")
     set_task(300.0, "Fwd_OutInfoFile", 1, "", 0, "b")
     register_forward(FM_StartFrame, "Fwd_StartFrame")
}
public Fwd_StartFrame(id) {
            new timestring[31]
            get_time("%H:%M:%S",timestring,8)
     static Float:GameTime, Float:FramesPer = 0.0
     static Float:Fps
     GameTime = get_gametime()
     if(FramesPer >= GameTime)
          Fps += 1.0;
     else {
          FramesPer = FramesPer + 1.0;
          if (globalfpsmin > Fps) { globalfpsmin = Fps; }
          if (globalfpsmax < Fps) { globalfpsmax = Fps; }
          counter = counter + 1;
          globalfps2 = (globalfps2+Fps);
          if(counter==300){
                         globalfps3 = ( globalfps2/counter );
                         counter = 0;
                         globalfps2 = 0.0;
          }
          for( new id = 1; id <= maxplayers; id++ ) {
               new red, green, blue
               get_hud_color(red, green, blue)
        new timeleft = get_timeleft()
        set_hudmessage(red,green,blue,get_pcvar_float(hud_x),get_pcvar_float(hud_y),get_pcvar_num(hud_effects),6.0,1.0)
               ShowSyncHudMsg(id,hudsync,"FPS: %.1f^nКарта: %d:%02d^nВремя: %s",Fps,timeleft / 60, timeleft % 60,timestring)
          }
          Fps = 0.0
     }
}
get_hud_color(&r, &g, &b) {
     new color[20]
     static red[5], green[5], blue[5]
     get_pcvar_string(hud_rgb, color, charsmax(color))
     parse(color, red, charsmax(red), green, charsmax(green), blue, charsmax(blue))
     r = str_to_num(red)
     g = str_to_num(green)
     b = str_to_num(blue)
}

public Fwd_OutInfoFile(id) {
     new i
     new szData[100]
     i = fopen("/stat.txt","w");
     if(i!=0){
          format(szData,sizeof(szData)-1, "%.1f %.1f %.1f",globalfps3,globalfpsmin,globalfpsmax);
          fputs(i,szData);
          fclose(i);
          globalfpsmin = 10001.0;
          globalfpsmax = 0.0;
     }
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя 330863
сообщение 7.3.2011, 20:52
Сообщение #7


Стаж: 16 лет

Сообщений: 4358
Благодарностей: 1079
Полезность: 497

qwerty1234567890,
http://setmaster.info/munin/myhostname/myh..._226_27015.html пример ,но это другой плагин мунин ,а мне нужен тот который показывает графики фпс :)

Цитата
Если в кактусе разбираешься - ничо сложного.

впервые слишу про такую стату sad.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qwerty1234567890
сообщение 7.3.2011, 21:07
Сообщение #8
Стаж: 16 лет

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

Угощайся! http://www.cacti.net/

Цитата
Cacti — open-source веб-приложение, система позволяет строить графики при помощи RRDtool. Cacti собирает статистические данные за определённые временные интервалы и позволяет отобразить их в графическом виде. Преимущественно используются стандартные шаблоны для отображения статистики по загрузке процессора, выделению оперативной памяти, количеству запущенных процессов, использованию входящего/исходящего трафика.


Оч удобная штука, для превращения статистики в графики как раз использует RRD Tool. Управляется по http.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя viktor6
сообщение 21.7.2011, 19:08
Сообщение #9


Стаж: 19 лет

Сообщений: 192
Благодарностей: 31
Полезность: 138

330863,
Если найдеш для munin поделись

Вот что я нашел только в английском не силен
http://www.tutos-gameserver.fr/mybb/thread-217.html

Отредактировал: viktor6, - 21.7.2011, 19:22
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя 330863
сообщение 21.7.2011, 21:52
Сообщение #10


Стаж: 16 лет

Сообщений: 4358
Благодарностей: 1079
Полезность: 497

viktor6,
про это я знаю но это неподойдёт для CS1.6
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя viktor6
сообщение 23.7.2011, 7:30
Сообщение #11


Стаж: 19 лет

Сообщений: 192
Благодарностей: 31
Полезность: 138

Жаль что нельзя его переделать
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя viktor6
сообщение 25.7.2011, 18:36
Сообщение #12


Стаж: 19 лет

Сообщений: 192
Благодарностей: 31
Полезность: 138

Цитата(330863 @ 21.7.2011, 22:52) *
viktor6,
про это я знаю но это неподойдёт для CS1.6

А говорят должен работать
http://css.setti.info/forum/topic/3870-mun...dpost__p__45859
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя 330863
сообщение 25.7.2011, 20:30
Сообщение #13


Стаж: 16 лет

Сообщений: 4358
Благодарностей: 1079
Полезность: 497

viktor6,
я попробую у себя протестить, какбы протоколы hl2 похожи)

хм, скрипт работает с srcds по tcp протоколу, hlds этого непоймёт, придётся переписать модуль pardon.gif

Отредактировал: 330863, - 25.7.2011, 21:10
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя viktor6
сообщение 27.7.2011, 20:24
Сообщение #14


Стаж: 19 лет

Сообщений: 192
Благодарностей: 31
Полезность: 138

Цитата(330863 @ 25.7.2011, 21:30) *
viktor6,
я попробую у себя протестить, какбы протоколы hl2 похожи)

хм, скрипт работает с srcds по tcp протоколу, hlds этого непоймёт, придётся переписать модуль pardon.gif

http://css.setti.info/forum/topic/3870-mun...6192#entry46192
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: