Andaba instalando una plantilla XML para Cacti que tenía como fin monitorizar el consumo eléctrico de unas regletas APC, conocidas como PDU. Pues bien, al hacer debug en la plantilla de uno de los gráficos me encontraba este error:
ERROR: the RRD does not contain an RRA matching the chosen CF
RRDTool Command:
/usr/bin/rrdtool graph - \ --imgformat=PNG \ --start=-86400 \ --end=-300 \ --title="Pdu 3 - PDU Information" \ --base=1000 \ --height=120 \ --width=500 \ --alt-autoscale-max \ --lower-limit=0 \ --vertical-label="Amps" \ --slope-mode \ --font TITLE:10: \ --font AXIS:8: \ --font LEGEND:8: \ --font UNIT:8: \ DEF:a="/home/cacti/rra/pdu_3_apc_blah_load_854.rrd":apc_blah_load:AVERAGE \ DEF:b="/home/cacti/rra/pdu_3_apc_blah_load_854.rrd":apc_blah_load:MAX \ DEF:c="/home/cacti/rra/pdu_3_apc_warning_level_856.rrd":apc_warning_level:AVERAGE \ DEF:d="/home/cacti/rra/pdu_3_apc_warning_level_856.rrd":apc_warning_level:MAX \ DEF:e="/home/cacti/rra/pdu_3_apc_overload_level_857.rrd":apc_overload_level:AVERAGE \ DEF:f="/home/cacti/rra/pdu_3_apc_overload_level_857.rrd":apc_overload_level:MAX \ DEF:g="/home/cacti/rra/pdu_3_apc_overload_level_855.rrd":apc_overload_level:LAST \ DEF:h="/home/cacti/rra/pdu_3_apc_overload_level_855.rrd":apc_overload_level:MAX \ CDEF:cdefa=a,10,/ \ CDEF:cdefd=b,10,/ \ AREA:cdefa#00CF00FF:"Load\:" \ GPRINT:cdefa:LAST:" Current\:%8.2lf %s" \ GPRINT:cdefa:MIN:"Min\:%8.2lf %s" \ GPRINT:cdefd:MAX:"Max\:%8.2lf %s\n" \ LINE3:c#F5F800FF:"Warning Threshold\:" \ GPRINT:c:LAST:" ------->%8.0lf\n" \ LINE3:e#FF3932FF:"Overload Threshold\:" \ GPRINT:e:LAST:"------->%8.0lf\n" \ LINE3:g#4444FFFF:"Low Threshold\:" \ GPRINT:g:LAST:" ------->%8.0lf\n"
RRDTool Says:
ERROR: the RRD does not contain an RRA matching the chosen CF
CF es una función de consolidación, y lo que sucede es que ya sea por mi versión de RRD, u otro motivo que actualmente desconozco, saltaba el error en las CF LAST, la solución, pasa por acceder a la plantilla del gráfico en cuestión y cambiar los valores LAST por AVERAGE. Quizás sea necesario tras hacer esto borrar y crear de nuevo el gráfico.