2016-03-09 79 views
0

我的一位客戶希望更好地瞭解光學SFP發送和接收的dBm值。每5分鐘我輪詢這些值並更新RRD文件中的值。 RRD的圖我用RRD文件作爲其源創建以下列方式產生:在RRDtool圖上爲X軸添加餘量

/usr/bin/rrdtool graph /var/www/customer/tmp/ZtIKQOJZFf.png --alt-autoscale 
--rigid --start now-3600 --end now --width 800 --height 350 
-c BACK#EEEEEE00 -c SHADEA#EEEEEE00 -c SHADEB#EEEEEE00 -c FONT#000000 
-c GRID#a5a5a5 -c MGRID#FF9999 -c FRAME#5e5e5e -c ARROW#5e5e5e -R normal 
--font LEGEND:8:'DejaVuSansMono' --font AXIS:7:'DejaVuSansMono' --font-render-mode normal 
-E COMMENT:'Bits/s Last Avg Max \n' 
DEF:sfptxpower=/var/www/customer/rrd/sfpdbm.rrd:SFPTXPOWER:AVERAGE 
DEF:sfprxpower=/var/www/customer/rrd/sfpdbm.rrd:SFPRXPOWER:AVERAGE 
DEF:sfptxpower_max=/var/www/customer/rrd/sfpdbm.rrd:SFPTXPOWER:MAX 
DEF:sfprxpower_max=/var/www/customer/rrd/sfpdbm.rrd:SFPRXPOWER:MAX 
LINE1.25:sfptxpower#000099:'tx ' GPRINT:sfptxpower:LAST:%6.2lf%s\g 
GPRINT:sfptxpower:AVERAGE:%6.2lf%s\g GPRINT:sfptxpower_max:MAX:%6.2lf%s\g 
COMMENT:'\n' LINE1.25:sfprxpower#B80000:'rx ' 
GPRINT:sfprxpower:LAST:%6.2lf%s\g GPRINT:sfprxpower:AVERAGE:%6.2lf%s\g 
GPRINT:sfprxpower_max:MAX:%6.2lf%s\g COMMENT:'\n' 

其中提請它是多麼應該是一個曲線圖。然而,出來它的圖形是不是很可讀的Tx和Rx值構成的圖形的邊界: enter image description here

我的問題爲此是:是否有可能添加某種保證金(如百分比(%)?)添加到X軸上,以便在圖形上可以輕鬆看到兩條線?

回答

1

RRDTool圖有四種不同的縮放模式,您可以通過以下選項進行選擇:autoscale(默認),alt-autoscale,specified-expandedable和specified-rigid。

自動縮放 - 使用默認algorythm縮放圖表以適合數據。您可以使用--autoscale選項(或通過忽略其他縮放選項)來選擇此選項。這將嘗試使Y軸範圍受到常見範圍的限制 - 在您的情況下,可能爲0到-5。有時它運作良好,有時它沒有。

Alt-Autoscale - 這就像自動縮放,但緊貼實際數據的最大和最小值。你選擇--alt-autoscale這是你正在使用的。

指定,可擴展 - 這可讓您爲Y軸指定最大/最小值,但如果數據超出此範圍,它們將展開。您通過指定--upper-limit和/或--lower-limit而不是--rigid來選擇此選項。在你的情況下,如果你給出的上限爲-2,下限爲-4,它看起來不錯,如果你的數據是-5,圖形範圍將會擴大。

指定的,剛性的 - 這就像上面那樣,但是限制在您指定它們的地方是固定的。如果數據超出此範圍,則不顯示該行。您在給出上限或下限時使用--rigid來指定此值。

請注意,對於指定的類型,您只能指定範圍的一端,以便在一端獲得指定的類型,並繼續對另一端使用自動縮放類型。

由此,我建議你刪除--rigid--alt-autoscale選項,而是指定--upper-limit -2--lower-limit -4更整齊地顯示您的數據。如果他們離開這個範圍,那麼您將繼續獲得當前的圖表 - 無論這個圖表是否有效取決於數據的性質以及它們通常會有多少變化。

+0

這工作得很好。但有一個後續問題。我的上限和下限值是動態計算的。我的最後2個值是例如 - 上限-2.8 - 下限-3.7。該圖現在顯示了-2.5的上限和-4.0的下限。這是爲什麼發生? – Beeelze

+0

我正在試驗這些縮放模式,我發現組合「--alt-autoscale -lower-limit x - upper-limit y」是最可以接受的。如果數據持續變化很大,我將不得不在未來稍微調整一下上限和下限。 – Beeelze

+0

RRDTool會嘗試調整您的上限和下限以適應「圓」數字,因此-2.8調整爲「-2.5」,而「-3.7」調整爲「-4.0」。如果這是一個問題,那麼即使數據超出範圍,您也可以使用「alt-autoscale」來調整限制或「嚴格」限制限制。 –

相關問題