"Manzke, Udo" <udo.man...@gkvi.de> wrote: > Result is an Error: “RPN Stack Underflow”. Do anyone know what’s wrong?
DEF:rtMills=/icmp.rrd:icmp:AVERAGE \ CDEF:rt=rtMills,1000,/ \ CDEF:unknownpos=rt,UN,INF,UNKN,IF,/ \ OK, lets break that down. rt -> puts rt on the stack UN -> take rt off the stack and leaves true or false depending on whether it's unknown or not INF, UNKN -> puts INF and UNKN values on the stack. Stack now holds [true|false],INF,UNKN IF -> takes 3 items off the stack, sees the true or false left by the UN operator, and selects either INF or UNKN which it puts on the stack. Stack now holds [INF|UNKN] - if rt was unknown then the stack holds INF, else it holds UNKN. I assume you actually wanted rt here so your line needs to have "INF,rt,IF" / -> takes two items off the stack. Oh dear, there was only one item there -> stack underflow. So either remove the "/" or add something to divide by. Perhaps you intended to combine the two lines, in which case you'd have had "rtMills,UN,INF,rtMills,IF,1000,/" or "rtMills,UN,INF,rtMills,1000,/,IF" - the two are equivalent as long as INF divided by 1000 is still INF (which I'd expect it to be). I don't think INF is likely to be what you want, (according to the docs) it draws a line along the top of the graph which (depending on the data) may or may not be readily distinguishable from steady data - it wouldn't be how I'd want to draw it anyway. Personally I'd just accept the gaps in the graph which (IMO) is more meaningful - for ping, no response is indistinguishable from "response outside the timeout window". _______________________________________________ rrd-users mailing list rrd-users@lists.oetiker.ch https://lists.oetiker.ch/cgi-bin/listinfo/rrd-users