Pregunta

No sé cómo explicar mi problema .... pero Tengo dos archivos RRD:

a.rrd
b.rrd

Estoy tratando de resumir los dos archivos y apilarlos en el gráfico. como:

my $bla = RRDs::graph "-",

    "--title","Test",
    "--imgformat=PNG",
    "--width=680",
    "--height=200",

    "DEF:Default0_=a.rrd:default:AVERAGE",
    "DEF:Real0_=a.rrd:real:AVERAGE",

    "DEF:Default1_=b.rrd:default:AVERAGE",
    "DEF:Real1_=b.rrd:real:AVERAGE",


    "CDEF:Default=Default0_,Default1_,+",        
    "CDEF:Real=Real0_,Real1_,+",


    'AREA:Default#00CF00:Default Test',
    'GPRINT:Default:MIN:Min\: %10.0lf%s',
    'GPRINT:Default:MAX:Max\: %10.0lf%s',
    'GPRINT:Default:AVERAGE:Average\: %10.0lf%s',
    'GPRINT:Default:LAST:Current\: %10.0lf%s \l',

    'STACK:Real#006699:Real Test',
    'LINE2:Real#000000',
    'GPRINT:Real:MIN:Min\: %10.0lf%s',
    'GPRINT:Real:MAX:Max\: %10.0lf%s',
    'GPRINT:Real:AVERAGE:Average\: %10.0lf%s',
    'GPRINT:Real:LAST:Current\: %10.0lf%s \l',

Y mi resultado es:

alt text http://www.freeimagehosting.net/uploads/8d99a4a675.jpg

problema:. Que no imprime los valores de a.rrd archivo, se muestra el gráfico sólo de la posición del archivo b.rrd

instide de algo como esto (sólo la primera parte estará con ceros):

alt text http://www.freeimagehosting.net/uploads/e036f93797.jpg

Obviamente, esto es debido a que el segundo gráfico no tiene marca de tiempo Unix cuando el primer gráfico hace.

Entonces, ¿cómo puedo llenar con ceros? o cambiar mi conf gráfica?

¿Fue útil?

Solución

Aquí está la solución a su problema :) http://oss.oetiker.ch/rrdtool/tut/cdeftutorial.en. html Echar un vistazo a la utilización de SI, TIEMPO, etc. GT y funciones. Puede probar esto: CDEF: real = TIEMPO, sometimestamp, GT, Real0_, Real0_, ONU, 0, Real0_, SI, SI, TIEMPO, sometimestamp, GT, Real1_, Real1_, ONU, 0, Real1_, SI, SI, + Esto significa: si (TIME ()> sometimestamp)     retorno Real0_ else if (Real0_ == ONU (este es el valor NaN en ficheros RRD))     devolver 0 más    retorno Real0_ Hacer lo mismo para el Real1_ y hacer la suma de los dos resultados. Esperanza ayudé:)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top