RRD красивый граффик :)

Проблемы с установкой, настройкой и работой системных и сетевых программ.

Модераторы: GRooVE, alexco

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
sens7
рядовой
Сообщения: 14
Зарегистрирован: 2009-01-14 14:31:48
Контактная информация:

RRD красивый граффик :)

Непрочитанное сообщение sens7 » 2009-03-13 16:40:32

Привет
наверно много кто строил граффики *) с помощью RRD

захотел посторить красивый граффик, что б цвет менялся как тут с низу вверх
но несмог найти как :st:
Изображение
подскажите если кто сталкивался

буду крайне признателен :drinks:
подпись

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: RRD красивый граффик :)

Непрочитанное сообщение hizel » 2009-03-13 16:48:39

делается вручную, очень неудобно

Код: Выделить всё

       "CDEF:shading10=ping_time,0.90,*" "AREA:shading10#E10000" \
        "CDEF:shading15=ping_time,0.85,*" "AREA:shading15#D20000" \
        "CDEF:shading20=ping_time,0.80,*" "AREA:shading20#C30000" \
        "CDEF:shading25=ping_time,0.75,*" "AREA:shading25#B40000" \
        "CDEF:shading30=ping_time,0.70,*" "AREA:shading30#A50000" \
        "CDEF:shading35=ping_time,0.65,*" "AREA:shading35#960000" \
        "CDEF:shading40=ping_time,0.60,*" "AREA:shading40#870000" \
        "CDEF:shading45=ping_time,0.55,*" "AREA:shading45#780000" \
        "CDEF:shading50=ping_time,0.50,*" "AREA:shading50#690000" \
        "CDEF:shading55=ping_time,0.45,*" "AREA:shading55#5A0000" \
        "CDEF:shading60=ping_time,0.40,*" "AREA:shading60#4B0000" \
        "CDEF:shading65=ping_time,0.35,*" "AREA:shading65#3C0000" \
        "CDEF:shading70=ping_time,0.30,*" "AREA:shading70#2D0000" \
        "CDEF:shading75=ping_time,0.25,*" "AREA:shading75#180000" \
        "CDEF:shading80=ping_time,0.20,*" "AREA:shading80#0F0000" \
        "CDEF:shading85=ping_time,0.15,*" "AREA:shading85#000000" 
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Аватара пользователя
sens7
рядовой
Сообщения: 14
Зарегистрирован: 2009-01-14 14:31:48
Контактная информация:

Re: RRD красивый граффик :)

Непрочитанное сообщение sens7 » 2009-03-13 17:18:24

БОЛЬШОЕ СПАСИБО! :drinks: :drinks: :drinks:
догадывался что придеться так делать :( но думал что есть другой способ
подпись

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: RRD красивый граффик :)

Непрочитанное сообщение hizel » 2009-03-13 17:28:14

ну Тоби в рассылке чотко сказал, хотите градиенты, C в лапы и вперед на танки : )
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: RRD красивый граффик :)

Непрочитанное сообщение terminus » 2009-03-16 10:44:02

http://pchart.sourceforge.net/index.php

Может эта штука подойдет?
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

MAK
ст. сержант
Сообщения: 344
Зарегистрирован: 2008-09-17 2:23:21

Re: RRD красивый граффик :)

Непрочитанное сообщение MAK » 2009-03-16 11:25:13

terminus писал(а):http://pchart.sourceforge.net/index.php

Может эта штука подойдет?
если голых баб туда нарисует, на фоне градиента, то да! ))

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: RRD красивый граффик :)

Непрочитанное сообщение terminus » 2009-03-16 12:04:31

На счет "бап" и градиента я не вкурсе - просто видел, что оно красивые графики умеет рисовать. Авось подойдет...
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

Аватара пользователя
sens
проходил мимо
Сообщения: 6
Зарегистрирован: 2008-08-22 18:10:25

Re: RRD красивый граффик :)

Непрочитанное сообщение sens » 2009-03-16 15:48:23

я уже cделал, как hizel написал
получилось симпатично
Изображение
Дарт Вейдер ;)

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35262
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: RRD красивый граффик :)

Непрочитанное сообщение Alex Keda » 2009-03-16 19:24:55

sens писал(а):я уже cделал, как hizel написал
получилось симпатично
Изображение
покажи как именно.
Убей их всех! Бог потом рассортирует...

Аватара пользователя
sens7
рядовой
Сообщения: 14
Зарегистрирован: 2009-01-14 14:31:48
Контактная информация:

Re: RRD красивый граффик :)

Непрочитанное сообщение sens7 » 2009-03-16 19:37:26

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

Код: Выделить всё

if(!function_exists('getmicrotime'))
{
        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']);
                        $array = array(); 
                        $pos = 0; 
                        while($pos !== false) 
                        { 
                                $pos2 = strpos($temp, "\0", $pos+1); 
                                $array[] = substr($temp, $pos+1, $pos2-$pos)."\n"; 
                                $pos = $pos2; 
                        }
                        if( strpos($array[0], $ip) !== 0) 
                        { 
                                $server['players'] = ord($array[5][0]); 
#                               $server['maxplayers'] = ord($array[5][1]); 

                        } 
                        else 
                        { 
                                $server['players'] = ord($array[5][0]); 
#                               $server['maxplayers'] = ord($array[5][1]); 
                        }

                        }

                else
                        $server['status'] = 'off';
        }
        return $server;
}
echo "213.169.74.201";
print_r(serverInfo("213.169.74.201", 27015));
echo "213.169.74.202";
print_r(serverInfo("213.169.74.202", 27015));
echo "213.169.74.203";
print_r(serverInfo("213.169.74.203", 27015));
echo "213.169.74.204";
print_r(serverInfo("213.169.74.204", 27015));
?>
создал базу

Код: Выделить всё

#!/bin/sh

rrdtool create /usr/steam/grafiki/players.rrd \
        --step 60 \
        --start N \
        DS:cs201:GAUGE:120:U:U \
        DS:cs202:GAUGE:120:U:U \
        DS:cs203:GAUGE:120:U:U \
        DS:cs204:GAUGE:120:U:U \
        RRA:LAST:0.5:1:864 \
        RRA:LAST:0.5:5:864 \
        RRA:LAST:0.5:60:864 \
        RRA:LAST:0.5:720:864 \
        RRA:LAST:0.5:2880:864
потом поставил это дело в крон раз в минту

Код: Выделить всё

#!/bin/sh


cs201=`/usr/local/php5/bin/php players.php | grep -A 3 213.169.74.201 | grep player | awk '{print $3}'`
cs202=`/usr/local/php5/bin/php players.php | grep -A 3 213.169.74.202 | grep player | awk '{print $3}'`
cs203=`/usr/local/php5/bin/php players.php | grep -A 3 213.169.74.203 | grep player | awk '{print $3}'`
cs204=`/usr/local/php5/bin/php players.php | grep -A 3 213.169.74.204 | grep player | awk '{print $3}'`

echo $cs201
echo $cs202
echo $cs203
echo $cs204

DB=/usr/steam/grafiki/players.rrd

/usr/local/bin/rrdtool update $DB \
N:$cs201:$cs202:$cs203:$cs204
а сам график строиться так

Код: Выделить всё

#!/bin/sh
ip="$1"
name="$2"
img="$3.png"
DS="$3"

#ip="213.169.74.202"
#name="cs1.maxmedia.org.ua cs1.6 CLASSIC"
#img="cs_202.png"
#DS="cs202"

WWWPREFIX=/home/www/img.maxmedia.org.ua/graph
RRDPREFIX=/usr/steam/grafiki
################################################################
/usr/local/bin/rrdtool graph $WWWPREFIX/$img \
    --width 471 --height 70 --imgformat PNG \
    --imginfo "<IMG SRC="%s" WIDTH="%lu" HEIGHT="%lu" ALT=$ip $name>" \
    --step 60 \
    --interlaced \
    --x-grid HOUR:24:HOUR:24:HOUR:1:0:%H \
    --y-grid 4:1 \
    --units-length 2 \
    --slope-mode \
    --start -1d \
    --no-gridfit \
    --end now \
    --alt-autoscale \
    --font-render-mode light \
    --pango-markup \
    --title "$ip $name"  --rigid  --color BACK#FFFFFF  --color FRAME#FFFFFF \
    --color SHADEA#fff  --color SHADEB#fff \
    --color FONT#735e4b --color ARROW#fff\
    --vertical-label players                                   \
    DEF:cs=$RRDPREFIX/players.rrd:$DS:LAST    \
    VDEF:avg_cs=cs,AVERAGE                          \
    AREA:cs#375082 \
    CDEF:cs10=cs,0.90,* AREA:cs10#375082 \
    CDEF:cs15=cs,0.85,* AREA:cs15#3e5686 \
    CDEF:cs20=cs,0.80,* AREA:cs20#485e8d \
    CDEF:cs25=cs,0.75,* AREA:cs25#526894 \
    CDEF:cs30=cs,0.70,* AREA:cs30#60739c \
    CDEF:cs35=cs,0.65,* AREA:cs35#6d80a4 \
    CDEF:cs40=cs,0.60,* AREA:cs40#7c8dad \
    CDEF:cs45=cs,0.55,* AREA:cs45#8b9ab6 \
    CDEF:cs50=cs,0.50,* AREA:cs50#9ba7c0 \
    CDEF:cs55=cs,0.45,* AREA:cs55#aab5ca \
    CDEF:cs60=cs,0.40,* AREA:cs60#bac2d4 \
    CDEF:cs65=cs,0.35,* AREA:cs65#b9c2d4 \
    CDEF:cs70=cs,0.30,* AREA:cs70#c8d0dd \
    CDEF:cs75=cs,0.25,* AREA:cs75#d6dce6 \
    CDEF:cs80=cs,0.20,* AREA:cs80#e3e7ed \
    GPRINT:avg_cs:"average online %2.lf"                      \
    GPRINT:cs:"LAST:current online %2.lf"
может что-то не совсем рационально =)
а чуть не забыл графики строю таким скриптиком

Код: Выделить всё

#!/bin/sh
cd /usr/steam/grafiki; 

/bin/sh ./get_players.sh
#########################
#risuem grafiki
/bin/sh ./make_graph.sh 213.169.74.201 "cs2.maxmedia.org.ua cs-sorce" cs201
/bin/sh ./make_graph.sh 213.169.74.202 "cs1.maxmedia.org.ua cs1.6 CLASSIC" cs202;
/bin/sh ./make_graph.sh 213.169.74.203 "cs3.maxmedia.org.ua cs1.6 JUMP server" cs203
/bin/sh ./make_graph.sh 213.169.74.204 "cs4.maxmedia.org.ua cs1.6 clan wars" cs204

detx
сержант
Сообщения: 245
Зарегистрирован: 2009-02-24 11:12:57
Откуда: Нижний Новгород

Re: RRD красивый граффик :)

Непрочитанное сообщение detx » 2009-03-19 14:08:25

Как бы такую штуку к cacti прикрутить

Аватара пользователя
LizardOfOzz
сержант
Сообщения: 165
Зарегистрирован: 2009-01-06 13:15:20
Откуда: Станция Восток
Контактная информация:

Re: RRD красивый граффик :)

Непрочитанное сообщение LizardOfOzz » 2009-03-29 19:19:54

detx писал(а):Как бы такую штуку к cacti прикрутить
В кактусе точно также, по сути. Вручную делаем 20 цветов + 20 функций вроде такой: cdef=CURRENT_DATA_SOURCE,0.5,*
Потом делаем 20 арий нужных цветов и функций, расставляем их в правильном порядке и получаем градиент.

:crazy:

Код: Выделить всё

/usr/local/bin/rrdtool graph - \
--imgformat=PNG \
--start=-86400 \
--end=-60 \
--title="clay - Traffic - 192.168.0.31 (wpi0)" \
--rigid \
--base=1000 \
--height=120 \
--width=500 \
--alt-autoscale \
--vertical-label="bytes per second" \
--slope-mode \
--font TITLE:12: \
--font AXIS:8: \
--font LEGEND:10: \
--font UNIT:8: \
DEF:a="/usr/local/share/cacti/rra/clay_traffic_in_67.rrd":traffic_out:LAST \
DEF:b="/usr/local/share/cacti/rra/clay_traffic_in_67.rrd":traffic_out:MIN \
DEF:c="/usr/local/share/cacti/rra/clay_traffic_in_67.rrd":traffic_out:MAX \
DEF:d="/usr/local/share/cacti/rra/clay_traffic_in_67.rrd":traffic_in:LAST \
DEF:e="/usr/local/share/cacti/rra/clay_traffic_in_67.rrd":traffic_in:MIN \
DEF:f="/usr/local/share/cacti/rra/clay_traffic_in_67.rrd":traffic_in:MAX \
CDEF:cdefa=a,-1,* \
CDEF:cdefb=a,-1,*,0.9,* \
CDEF:cdefc=a,-1,*,0.8,* \
CDEF:cdefd=a,-1,*,0.7,* \
CDEF:cdefe=a,-1,*,0.6,* \
CDEF:cdeff=a,-1,*,0.5,* \
CDEF:cdefg=a,-1,*,0.4,* \
CDEF:cdefh=a,-1,*,0.3,* \
CDEF:cdefi=a,-1,*,0.2,* \
CDEF:cdefj=a,-1,*,0.1,* \
CDEF:cdefbe=d,0.9,* \
CDEF:cdefbf=d,0.8,* \
CDEF:cdefbg=d,0.7,* \
CDEF:cdefbh=d,0.6,* \
CDEF:cdefbi=d,0.5,* \
CDEF:cdefbj=d,0.4,* \
CDEF:cdefca=d,0.3,* \
CDEF:cdefcb=d,0.2,* \
CDEF:cdefcc=d,0.1,* \
AREA:cdefa#375082FF:"Out"  \
AREA:cdefb#3e5686FF:""  \
AREA:cdefc#485e8dFF:""  \
AREA:cdefd#526894FF:""  \
AREA:cdefe#60739cFF:""  \
AREA:cdeff#6d80a4FF:""  \
AREA:cdefg#7c8dadFF:""  \
AREA:cdefh#8b9ab6FF:""  \
AREA:cdefi#9ba7c0FF:""  \
AREA:cdefj#aab5caFF:""  \
GPRINT:a:LAST:"   Current\:%8.2lf %s"  \
GPRINT:c:AVERAGE:"Average\:%8.2lf %s"  \
GPRINT:c:MAX:"Maximum\:%8.2lf %s\n"  \
AREA:d#ff1010FF:"Inp"  \
AREA:cdefbe#ff191aFF:""  \
AREA:cdefbf#ff3030FF:""  \
AREA:cdefbg#ff4040FF:""  \
AREA:cdefbh#ff5050FF:""  \
AREA:cdefbi#ff6060FF:""  \
AREA:cdefbj#ff7070FF:""  \
AREA:cdefca#ff8080FF:""  \
AREA:cdefcb#ff9090FF:""  \
AREA:cdefcc#ffa0a0FF:""  \
GPRINT:d:LAST:"   Current\:%8.2lf %s"  \
GPRINT:f:AVERAGE:"Average\:%8.2lf %s"  \
GPRINT:f:MAX:"Maximum\:%8.2lf %s\n" 
RRDTool Says:
OK

MAK
ст. сержант
Сообщения: 344
Зарегистрирован: 2008-09-17 2:23:21

Re: RRD красивый граффик :)

Непрочитанное сообщение MAK » 2009-03-30 13:53:07

а где сиськи? ))

Аватара пользователя
Pez!
старшина
Сообщения: 436
Зарегистрирован: 2008-01-13 20:02:24
Откуда: москва матушка

Re: RRD красивый граффик :)

Непрочитанное сообщение Pez! » 2009-03-30 13:58:42

Спасибо за объяснение, надеюсь мне скоро это пригодится = )
Всёравно все умрут, какая разница....и только серваки с фряхой будут работать ещё некоторое время после.

detx
сержант
Сообщения: 245
Зарегистрирован: 2009-02-24 11:12:57
Откуда: Нижний Новгород

Re: RRD красивый граффик :)

Непрочитанное сообщение detx » 2009-03-30 15:40:54

Спасибо в обяз на днях попробую