如何从多个 rrd 文件中绘制多条趋势线?

如何从多个 rrd 文件中绘制多条趋势线?

我有 3 个单独的 rrd 文件,每个文件都有 CPU 平均数据。我可以单独绘制每个文件,没有任何问题。CPU 平均线和趋势线(使用 LSLSLOPE)

我被要求将这三者合并成一张图。所以我拿了我的 DEF、CEF 和 VDEF,并用 a、b 和 c 制作了它们。我一定是做错了什么,因为我得到了以下错误

     ./graph3avg.sh: line 42: VDEF:avg_a=a,AVERAGE: command not found
    ./graph3avg.sh: line 59: LINE2:avg_a#f0610f:App CPU Avg:dashes=5: command not found

我不确定这是否是使用 rrdtool 的命令排序的事情,或者我是否做了一些根本错误的事情。

谢谢你的时间!

以下是 shell 脚本中的 rrd 命令

    graphname="Server $1 trending"
  rrdtool graph $ofile \
  --imgformat=PNG \
--alt-autoscale-max \
  --start=$starttime \
  --end=$endtime \
  --title="$graphname" \
  --font TITLE:12: \
  --units-exponent=2 \
  --color CANVAS#ececec \
  --vertical-label="CPU %" \
  --height=400 \
  --width=1000 \
   DEF:a="$ifile":cpu:AVERAGE:step=3600 \
   DEF:b="$ifile2":cpu:AVERAGE:step=3600 \
   DEF:c="$ifile3":cpu:AVERAGE:step=3600 \
   VDEF:avg_a=a,AVERAGE \
   VDEF:avg_b=b,AVERAGE \
   VDEF:avg_c=c,AVERAGE \
   VDEF:slope_a=a,LSLSLOPE \
   VDEF:slope_b=b,LSLSLOPE \
   VDEF:slope_c=c,LSLSLOPE \
   VDEF:cons_a=a,LSLINT \
   VDEF:cons_b=b,LSLINT \
   VDEF:cons_c=c,LSLINT \
   CDEF:lsl2_a=a,POP,slope_a,COUNT,*,cons_a,+ \
   CDEF:lsl2_b=b,POP,slope_b,COUNT,*,cons_b,+ \
   CDEF:lsl2_c=c,POP,slope_c,COUNT,*,cons_c,+ \
   LINE2:avg_a#f0610f:"App CPU Avg":dashes=5 \
   LINE3:lsl2_a#bd8a6c:"App CPU Trend\n" \
   LINE2:avg_b#0ff061:"Web CPU Avg":dashes=5 \
   LINE3:lsl2_b#48a068:"Web CPU Trend\n" \
   LINE2:avg_c#1fbcd8:"DB CPU Avg":dashes=5 \
   LINE3:lsl2_c#619da7:"App CPU Trend\n" \
   COMMENT:"\s" \
   COMMENT:"Start Date $startdate " \
   COMMENT:"End Date $enddate " \
   COMMENT:"\n" \
   COMMENT:"\n" \
   COMMENT:"Graph created on $today"

相关内容