1

RRD グラフの 2 つのデータ ソースに基づいて % を見つける方法を見つけようとしています。以下は、グラフの作成に使用されるコードです (Cacti によって生成されます)。

/usr/bin/rrdtool graph - \
--imgformat=PNG \
--start=1256445701 \
--end=1256532101 \
--title="Message Size" \
--base=1000 \
--height=120 \
--width=500 \
--alt-autoscale-max \
--lower-limit=0 \
COMMENT:"From 2009/10/25 14\:41\:41 To 2009/10/26 14\:41\:41\c" \
COMMENT:"  \n" \
--vertical-label="" \
--slope-mode \
--font TITLE:10: \
--font AXIS:8: \
--font LEGEND:8: \
--font UNIT:8: \
DEF:a="/srv/www/vhosts/cacti/cacti-0.8.7d/rra/5393.rrd":dsAttachmentSize:AVERAGE \
DEF:b="/srv/www/vhosts/cacti/cacti-0.8.7d/rra/5393.rrd":dsSIAttachmentSize:AVERAGE \
CDEF:cdefa=a,1000000,* \
CDEF:cdefe=b,1000000,* \
AREA:cdefa#0000aaFF:"Attach Size"  \
GPRINT:cdefa:LAST:"   Current\:%8.2lf %s"  \
GPRINT:cdefa:AVERAGE:"Average\:%8.2lf %s"  \
GPRINT:cdefa:MAX:"Maximum\:%8.2lf %s\n"  \
AREA:cdefe#FF0000FF:"Attach SI Size"  \
GPRINT:cdefe:LAST:"Current\:%8.2lf %s"  \
GPRINT:cdefe:AVERAGE:"Average\:%8.2lf %s"  \
GPRINT:cdefe:MAX:"Maximum\:%8.2lf %s\n" 

次の (A - B) / A * 100 を求めて、グラフの下部に表示したいと思います。

この質問は、サーバー関連よりもプログラミング関連の方が多いと思います(ただし、修正する準備はできています)。RRDに関する適切なドキュメントを誰かが教えてくれれば、自分でこれを理解できるか、誰かが私に良いスタートを切ることができれば、それは大いに役立ちます感謝。

乾杯。

4

1 に答える 1

1

これは最終的に比較的簡単なものでした。次のような CDEF 関数を作成するだけです。

a,b,-,a,/,100,*

そして、その CDEF 関数をデータソースのないグラフ アイテムに割り当てます。

于 2009-11-02T05:36:23.960 に答える