python学習-pythonとrrdtoolの結合モジュール


rrdtool(round robin database)ツールは環状データベースのストレージフォーマットであり、round robinは定量的データおよび現在の要素ポインタを処理する技術である.rrdtoolは主にオブジェクトの変化状況を追跡し、これらの変化の動向図を生成するために使用され、例えば業務のアクセス流量、システム性能、ディスク利用率などのトレンド図、多くの流行監視プラットフォームはrrdtoolに使用され、Cacti、Ganglia、Monitorixなどが有名である.詳細は公式サイトを参照してくださいhttp://oss.oetiker.ch/rrdtool/.rrdtoolは複雑なツールであり、多くのパラメータ概念に関連し、本節では主にPythonのrrdtoolモジュールを通じてrrdtoolのいくつかの一般的な方法をパッケージ化し、create、fetch、graph、info、updateなどの方法を含む.本節ではrrdtoolの基本的な知識について説明せず、Python rrdtoolモジュールの一般的な方法の使用紹介に重点を置く.
rrdtoolモジュールのインストール方法は以下の通りです. 
easy_install python-rrdtool    #pip      
pip install python-rrdtool    #easy_install       
#  rrdtool         ,CentOS      yum      
# yum install rrdtool-python

rrdtoolモジュールの一般的な方法の説明
次に、create(rrdの作成)、update(rrdの更新)、graph(図面描画)、fetch(rrdのクエリー)など、rrdtoolモジュールでよく使用されるいくつかの方法について説明します.
1.Createメソッド
create filename[--start|-b start time][--step|-s step][DS:ds-name:DST:heartbeat:min:max][RRA:CF:xff:steps:rows]メソッドを作成し、rrdと接尾辞されたrrdtoolデータベースを作成します.パラメータの説明は以下の通りです.
filename   rrdtool      ,     .rrd;
--start  rrdtool          ,   timestamp   ;
--step  rrdtool            ,   5  ;
DS       ,            ;
DST         ,rrdtool  COUNTER(    )、DERIVE(        )、ABSOLUTE(            0,      )、GUAGE(        RRA)、COMPUTE(       ,  DS         )5 ,            ,    COUNTER;
RRA          ,       RRA     ,             , CF         ,     :[RRA:CF:xff:steps:rows];
CF      ,  AVERAGE(   )、MAX(   )、MIN(   )、LAST(   )4   。

2.updateメソッド
update filename[--template|-t ds-name[:ds-name]...]N|timestamp:value[:value...][timestamp:value[:value...]メソッドは、rrdtoolデータベースに新しい値を格納します.updatevはupdateと似ています.挿入するたびにステータスコードが返され、解が成功したかどうかを示します(updatevは0で成功し、–1は失敗を示します).パラメータの説明は次のとおりです.
filename          rrd   ;
-t ds-name[:ds-name]       DS  ;
N|Timestamp          ,N       ;
value[:value...]      ,  DS    。

3.graphメソッド
graph filename [-s|--start seconds] [-e|--end seconds] [-x|--x-grid x-axis grid and label] [-y|--y-grid y-axis grid and label] [--alt-y-grid] [--alt-y-mrtg] [--alt-autoscale] [--alt-autoscale-max] [--units-exponent] value [-v|--vertical-label text] [-w|--width pixels] [-h|--height pixels] [-i|--interlaced] [-f|--imginfo formatstring] [-a|--imgformat GIF|PNG|GD] [-B|--background value] [-O|--overlay value] [-U|--unit value] [-z|--lazy] [-o|--logarithmic] [-u|--upper-limit value] [-l|--lower-limit value] [-g|--no-legend] [-r|--rigid] [--step value] [-b|--base value] [-c|--color COLORTAG#rrggbb] [-t|--title title] [DEF:vname=rrd:ds-name:CF] [CDEF:vname=rpn-expression] [P P P P P P P RINT:vname:CF:format][GPRINT:vname:CF:format][COMMENT:text][HRULE:value#rrggbb[:legend][VRULE:time#rrggbb[:legend]][LINE{ 1|2|3}:vname[#rrggbb[:legend]]][AREA:vname[#rrggbb[:legend]]][STACK:vname[#rrggbb[:legend]]]メソッドにより、指定されたdtrroolデータベースデータベースデータベースデータベースデータベースデータベースデータベースのddtrroolデータベースに基づいて、指定されたdtrroolデータベースキーパラメータの説明は次のとおりです.
filename          ,   PNG  ;
--start      ;
--end      ;
--x-grid  X      、     ;
--y-grid  Y      、     ;
--vertical-label  Y      ;
--width pixels      (  );
--height pixels      (  );
--imgformat      (GIF|PNG|GD);
--background        ,  #rrggbb   ;
--upper-limit  Y      ;
--lower-limit  Y      ;
--no-legend         ;
--rigid    upper-limit lower-limit   ;
--title       ;
DEF:vname=rrd:ds-name:CF          ;
CDEF:vname=rpn-expression     ;
GPRINT:vname:CF:format          、   、    ;
COMMENT:text             ;
HRULE:value#rrggbb            ;
VRULE:time#rrggbb            ;
LINE{1|2|3}:vname           ,{1|2|3}       ;
AREA:vname            。

4.fetch方法
fetch filename CF[--resolution|-r resolution][--start|-s start][--end|-e end]メソッドは、指定されたrrdtoolデータベースに基づいてクエリーを行い、キーパラメータの説明は以下の通りです.
filename      rrd   ;
CF  AVERAGE、MAX、MIN、LAST,        RRA      ,     ;
--start --end              ,       timestamp    ,     。
          :date +%s