![](https://secure.gravatar.com/avatar/11b54b3dd25b712395dab9818c67596f.jpg?s=120&d=mm&r=g)
Oh, that explains it. We ignore virtual interfaces, because it makes that graph near worthless.
You can set :
$config['os'][<OS TYPE>]['ports_unignore_descr'] = TRUE;
In the config to disable ignoring ports by their descriptions for a single OS. The OS type is probably "solaris". You can see the exact string in the device's "data" page on the right hand icon on its navbar.
Thanks,
Adam.
From: observium observium-bounces@observium.org On Behalf Of McGregor, Kevin via observium Sent: 22 October 2020 16:41 To: Observium observium@observium.org Cc: McGregor, Kevin KMcGregor@winnipeg.ca Subject: Re: [Observium] Error drawing graph (can not parse an empty rpn expression)
Yes - the only IPv4 interfaces. There is also a IPv6 lo defined. See image below. FYI it's an Oracle VM (guest logical domain) running Solaris 11.4.25.75.3 on an Oracle S7-2 SPARC machine. The other guest VM running the same version has the same problem. The other two devices running the exact same Solaris version are primary/control (not guest) VMs. Other devices running Solaris 11.4.11.4.0 and 11.4.17.3.0 do not exhibit this behavior.
Kevin McGregor
INV - Innovation, Transformation & Technology Dept.
City of Winnipeg
(204)782-7310
From: observium <observium-bounces@observium.org mailto:observium-bounces@observium.org > On Behalf Of Tom Laermans via observium Sent: October 22, 2020 10:22 To: observium@observium.org mailto:observium@observium.org Cc: Tom Laermans <tom.laermans@powersource.cx mailto:tom.laermans@powersource.cx > Subject: Re: [Observium] Error drawing graph (can not parse an empty rpn expression)
** EXTERNAL EMAIL: USE CAUTION **
Kevin,
Are vlan312 and lo the only 2 interfaces on the device?
Tom
On 2020-10-21 21:36, McGregor, Kevin via observium wrote:
There was a long list of the (probably) expected SELECT statements, and this:
$graphtypeincludes/graphs/graph.inc.php:47array(
0=>device_bitstype=>device1=>devicesubtype=>bits2=>bits)
SELECT * FROM `ports` WHERE `device_id` = '21' AND `deleted` != '1' ORDER BY (ifInOctets_rate + ifOutOctets_rate) DESC
[Port (id=62, ifIndex=2) ignored by ifDescr=vlan312]
[Port (id=61, ifIndex=1) ignored by ifType=softwareLoopback]
RRD CMD[%ygraph /tmp/3QGGle3IXtZrnQcf.png -g -Y --alt-autoscale --rigid --start 1603222113 --end 1603308513 --width 1152 --height 300 -c BACK#EEEEEE00 -c SHADEA#EEEEEE00 -c SHADEB#EEEEEE00 -c FONT#000000 -c CANVAS#FFFFFF00 -c GRID#a5a5a5 -c MGRID#FF9999 -c FRAME#5e5e5e -c ARROW#5e5e5e -R normal --font LEGEND:8:'DroidSansMono,DejaVuSansMono' --font AXIS:7:'DroidSansMono,DejaVuSansMono' --font-render-mode normal -E CDEF:inB= CDEF:outB= CDEF:octets=inB,outB,+ CDEF:doutB=outB,-1,* CDEF:inbits=inB,8,* CDEF:outbits=outB,8,* CDEF:bits=inbits,outbits,+ CDEF:doutbits=doutB,8,* VDEF:95thin=inbits,95,PERCENT VDEF:95thout=outbits,95,PERCENT CDEF:pout_tmp=doutbits,-1,* VDEF:dpout_tmp=pout_tmp,95,PERCENT CDEF:dpout_tmp2=doutbits,doutbits,-,dpout_tmp,-1,*,+ VDEF:d95thout=dpout_tmp2,FIRST VDEF:totin=inB,TOTAL VDEF:avein=inbits,AVERAGE VDEF:totout=outB,TOTAL VDEF:aveout=outbits,AVERAGE VDEF:tot=octets,TOTAL COMMENT:' \l' HRULE:999999999999999#FFFFFF:'Total Rx' GPRINT:inbits:LAST:%6.2lf%s GPRINT:inbits:AVERAGE:%6.2lf%s GPRINT:inbits:MIN:%6.2lf%s GPRINT:inbits:MAX:%6.2lf%s GPRINT:totin:%6.2lf%sB COMMENT:'\l' HRULE:999999999999999#FFFFFF:' Tx' GPRINT:outbits:LAST:%6.2lf%s GPRINT:outbits:AVERAGE:%6.2lf%s GPRINT:outbits:MIN:%6.2lf%s GPRINT:outbits:MAX:%6.2lf%s GPRINT:totout:%6.2lf%sB COMMENT:'\l' HRULE:999999999999999#FFFFFF:' Agg' GPRINT:bits:LAST:%6.2lf%s GPRINT:bits:AVERAGE:%6.2lf%s GPRINT:bits:MIN:%6.2lf%s GPRINT:bits:MAX:%6.2lf%s GPRINT:tot:%6.2lf%sB COMMENT:'\l' HRULE:0#999999%n]
RRD RUNTIME[0.0112s] RRD STDOUT[ERROR: can not parse an empty rpn expression] RRD_STATUS[FALSE]
Nothing else stood out for me. I can include all of the SELECT statements if that would be helpful.
Kevin McGregor
From: observium mailto:observium-bounces@observium.org observium-bounces@observium.org On Behalf Of Adam Armstrong via observium Sent: October 21, 2020 13:07 To: observium@observium.org mailto:observium@observium.org Cc: Adam Armstrong mailto:adama@observium.org adama@observium.org Subject: Re: [Observium] Error drawing graph (can not parse an empty rpn expression)
** EXTERNAL EMAIL: USE CAUTION **
Hmm.
You can open the graph URL in a separate tab and add &debug=1 at the end to perhaps get some more information.
The device_bits format builds a list of ports and then passes it to the type generic_multi_separated which doesn't check if the rrd exists.
The list of rrds used is generated in the device_bits type, so it's difficult to guess what's going on here.
Adam.
From: McGregor, Kevin <KMcGregor@winnipeg.ca mailto:KMcGregor@winnipeg.ca
Sent: 21 October 2020 14:02 To: Adam Armstrong <adama@observium.org mailto:adama@observium.org >; 'Observium' <observium@observium.org mailto:observium@observium.org > Subject: RE: [Observium] Error drawing graph (can not parse an empty rpn expression)
The .rrd files exist in the same directory as all of the other rrds for that host, and they have the same permissions as all of the others, and they are updated (as evidenced by the rrd file timestamp) every five minutes.
Is there a way to verify the rrd files in some way? Or just blow these two away and recreate them?
Kevin McGregor
From: Adam Armstrong <adama@observium.org mailto:adama@observium.org > Sent: October 20, 2020 14:02 To: 'Observium' <observium@observium.org mailto:observium@observium.org > Subject: Re: [Observium] Error drawing graph (can not parse an empty rpn expression)
This rrd definition doesn't actually use any rrds, which suggests the rrds don't exist.
Adam.
From: observium <observium-bounces@observium.org mailto:observium-bounces@observium.org > On Behalf Of McGregor, Kevin via observium Sent: 20 October 2020 19:55 To: observium@observium.org mailto:observium@observium.org Cc: McGregor, Kevin <KMcGregor@winnipeg.ca mailto:KMcGregor@winnipeg.ca > Subject: [Observium] Error drawing graph (can not parse an empty rpn expression)
I just upgraded from 19.8 to 20.9 CE. In both I've been having the same problem: Everything works as expected, except two devices (of 19) produce a big pink box instead of a chart for the "Ports" widget on the Overview page for the devices. The chart is titled "Error Drawing Graph". Other similar devices (same OS version, etc.) all show a normal-looking chart in the same place. The devices are "SunOS <hostname> 5.11 11.4.25.75.3 sun4v". Most other devices of the same version work, just not two of them.
When I click on the chart, I get the Ports page and a bigger version of the same chart. Selecting "RRD Command" produces this below the pink box:
Description
Device total traffic in bits/sec.
Performance & Output
RRDTool Output: ERROR: can not parse an empty rpn expression
RRDtool Runtime: 0.011s | Total time: 0.012s
RRDTool Command
/usr/bin/rrdtool graph /tmp/DZSTkOrAZmZQeckq.png -g -Y --alt-autoscale --rigid --start 1603133061 --end 1603219461 --width 1152 --height 300 -c BACK#EEEEEE00 -c SHADEA#EEEEEE00 -c SHADEB#EEEEEE00 -c FONT#000000 -c CANVAS#FFFFFF00 -c GRID#a5a5a5 -c MGRID#FF9999 -c FRAME#5e5e5e -c ARROW#5e5e5e -R normal --font LEGEND:8:'DroidSansMono,DejaVuSansMono' --font AXIS:7:'DroidSansMono,DejaVuSansMono' --font-render-mode normal -E CDEF:inB= CDEF:outB= CDEF:octets=inB,outB,+ CDEF:doutB=outB,-1,* CDEF:inbits=inB,8,* CDEF:outbits=outB,8,* CDEF:bits=inbits,outbits,+ CDEF:doutbits=doutB,8,* VDEF:95thin=inbits,95,PERCENT VDEF:95thout=outbits,95,PERCENT CDEF:pout_tmp=doutbits,-1,* VDEF:dpout_tmp=pout_tmp,95,PERCENT CDEF:dpout_tmp2=doutbits,doutbits,-,dpout_tmp,-1,*,+ VDEF:d95thout=dpout_tmp2,FIRST VDEF:totin=inB,TOTAL VDEF:avein=inbits,AVERAGE VDEF:totout=outB,TOTAL VDEF:aveout=outbits,AVERAGE VDEF:tot=octets,TOTAL COMMENT:' \l' HRULE:999999999999999#FFFFFF:'Total Rx' GPRINT:inbits:LAST:%6.2lf%s GPRINT:inbits:AVERAGE:%6.2lf%s GPRINT:inbits:MIN:%6.2lf%s GPRINT:inbits:MAX:%6.2lf%s GPRINT:totin:%6.2lf%sB COMMENT:'\l' HRULE:999999999999999#FFFFFF:' Tx' GPRINT:outbits:LAST:%6.2lf%s GPRINT:outbits:AVERAGE:%6.2lf%s GPRINT:outbits:MIN:%6.2lf%s GPRINT:outbits:MAX:%6.2lf%s GPRINT:totout:%6.2lf%sB COMMENT:'\l' HRULE:999999999999999#FFFFFF:' Agg' GPRINT:bits:LAST:%6.2lf%s GPRINT:bits:AVERAGE:%6.2lf%s GPRINT:bits:MIN:%6.2lf%s GPRINT:bits:MAX:%6.2lf%s GPRINT:tot:%6.2lf%sB COMMENT:'\l' HRULE:0#999999
RRDTool Files Used
/opt/observium/rrd/<hostname>/port-2.rrd
/opt/observium/rrd/<hostname>/port-1.rrd
Would someone please give me a place to start looking for the problem?
Thanks!
_______________________________________________ observium mailing list observium@observium.org mailto:observium@observium.org http://postman.memetic.org/cgi-bin/mailman/listinfo/observium