Bug 5252 - rrdcgi не работает с рассчитанными на него скриптами
: rrdcgi не работает с рассчитанными на него скриптами
Status: CLOSED WONTFIX
: Sisyphus
(All bugs in Sisyphus/rrd-utils)
: unstable
: all Linux
: P2 normal
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2004-09-27 14:50 by
Modified: 2005-09-16 08:00 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2004-09-27 14:50:41
сабж ...  
Говорит, что не может открыть .rrd файл
------- Comment #1 From 2004-09-27 16:42:15 -------
Не подтверждаю. У меня rrd-1.0.49-alt1 на первом примере из man rrdcgi
отработал
так, как должно.

Изложите проблему более детально. Желательно с приведением скриптов, которые не
работают.
------- Comment #2 From 2004-09-28 10:32:33 -------
Вот такие rrd: 
/usr/bin/rrdtool create cpu.rrd \ 
    DS:user:GAUGE:360:0:100 \ 
    DS:nice:GAUGE:360:0:100 \ 
    DS:system:GAUGE:360:0:100 \ 
    DS:idle:GAUGE:360:0:100 \ 
    RRA:LAST:0.5:1:5000 RRA:LAST:0.5:6:7000 
 
 
 
/usr/bin/rrdtool create la.rrd \ 
    DS:la:GAUGE:360:0:150 \ 
    RRA:LAST:0.5:1:5000 RRA:LAST:0.5:6:7000 
 
 
 
/usr/bin/rrdtool create temp.rrd \ 
    DS:cpu:GAUGE:360:0:100 \ 
    DS:mboard:GAUGE:360:0:100 \ 
    RRA:LAST:0.5:1:5000 RRA:LAST:0.5:6:7000 
 
Вот такой скрипт : 
#!/usr/bin/rrdcgi 
<HTML> 
<HEAD> 
<TITLE>CPU, LA on Gorbook</TITLE> 
<META HTTP-EQUIV="Refresh" CONTENT="600"> 
<META HTTP-EQUIV="Pragma" CONTENT="no-cache"> 
<META HTTP-EQUIV="Cache-Control" content="no-cache"> 
</HEAD> 
 
<BODY> 
<CENTER> 
 
    <RRD::GOODFOR 300> 
 
 
    <FORM> 
        <INPUT NAME=DIA TYPE=RADIO VALUE="-s -2d" CHECKED> last 2 days 
        <INPUT NAME=DIA TYPE=RADIO VALUE="-s -14d"> last 2 weeks 
        <INPUT NAME=DIA TYPE=RADIO VALUE="-s -1m"> last month 
        <INPUT TYPE=SUBMIT> 
    </FORM> 
    <P> 
 
 
        <P> 
        <RRD::GRAPH temp.png  --title="Temperatures" -w 800 -h 180  <RRD::CV 
DIA> 
                 DEF:cpu=temp.rrd:cpu:LAST 
                 AREA:cpu#cc0000:"CPU" 
                 GPRINT:cpu:LAST:"%.1lf\j" 
 
                 DEF:mboard=temp.rrd:mboard:LAST 
                 LINE2:mboard#00e000:"MBoard" 
                 GPRINT:mboard:LAST:"%.1lf\j" 
 
                 DEF:hddt=hdd.rrd:temp:LAST 
                 LINE2:hddt#000eaa:"HDD Temp" 
                 GPRINT:hddt:LAST:"%.1lf\j" 
 
                 > 
File: index.cgi         Col 0              1688 bytes                                                                        
100% 
        </P> 
 
 
 
        <P> 
        <RRD::GRAPH cpu.png  --title="CPU" -w 800  <RRD::CV DIA> -u 100 
 
                 DEF:sys=cpu.rrd:system:LAST 
                 AREA:sys#aa0000:"Sys" 
                 GPRINT:sys:LAST:"%.2lf\j" 
 
                 DEF:user=cpu.rrd:user:LAST 
                 STACK:user#0000aa:"User" 
                 GPRINT:user:LAST:"%.2lf\j" 
 
                 DEF:nice=cpu.rrd:nice:LAST 
                 STACK:nice#00aa00:"Nice" 
                 GPRINT:nice:LAST:"%.2lf\j" 
 
                 > 
        </P> 
 
 
 
        <P> 
        <RRD::GRAPH la.png  --title="load average" -w 800 <RRD::CV DIA> -u 1 
                 DEF:la=la.rrd:la:LAST 
                 LINE3:la#00e000:"Load average" 
                 GPRINT:la:LAST:"%.2lf\j" 
                 > 
        </P> 
 
 
</BODY> 
</HTML> 
 
в результате имеем : 
 
[ERROR: can't parse '']  
 
 
[ERROR: can't parse '']  
 
 
[ERROR: can't parse '']  
 
предыдущая версия прекрасно работала... 
------- Comment #3 From 2004-09-28 12:28:01 -------
Это не баг - это фича:

- 2004/07/14 -- Arend-Jan Wijtzes <ajwytzes@wise-guys.nl>
  * fixed rrdcgi issues with evaluation tags inside arguments

rrdcgi используется как обработчик форм и, соответственно, все
требуемые параметры должны быть инициализированы до вызова обработчика.
------- Comment #4 From 2004-09-28 12:47:49 -------
Хотя больше похоже на багофичу, привнесенную попыткой зафиксить багу.
Буду посмотреть в апстриме.
------- Comment #5 From 2005-09-16 07:58:24 -------
Как и сказано в Comment #3 - параметры должны быть инициализированы до
использования.