-2

10秒ごとにログを印刷する別のアプリケーションがあります。ログ ファイルから RRD ファイルを作成する必要があります。ログ ファイルを読み取り、グラフなしで RRD のみを作成するには、いくつかの Perl コードが必要です。

CPAN で利用可能な Perl モジュール、つまりRRD::Simpleと RRD::Simple::Examples も調べましたが、まだ助けが必要です。

4

2 に答える 2

3

RRD::Simpleから始めます。ドキュメントにいくつかのサンプルコードがあります。グラフを作成する必要はないので、例のそのセクションはスキップしてください。

一部の例では、データの 1 つのサンプルを読み取り、update関数を 1 回呼び出してから終了します。これらのスクリプトは、リアルタイムでデータを収集するために定期的に実行することを意図しています。おそらくあなたのニーズにより適切な例はApacheAccessLogActivity.pl です。これは Apache ログ ファイルを読み取り、正規表現を使用して各行を解析し、読み取った内容を把握するために少し分析を行いupdate、すべてループ内でを呼び出します。 . この例では、オブジェクト指向バージョンではなくスタンドアロン関数を使用していることに注意してください。

そのモジュールのドキュメントをすでに読んでおり、その使用方法についてさらに情報が必要な場合、または試してみて使用できない欠点があることがわかった場合は、必要なものをより具体的に記入してください。する。

RRDTool::OOも有望に見えます。

于 2009-12-29T09:52:21.557 に答える
0

RRDTool::OO をお勧めします。perldoc からの抜粋:

$rrd->create( ... ) 新しいラウンド ロビン データベース (RRD) を作成します。RRD は、1 つ以上のデータ ソースと 1 つ以上のアーカイブで構成されます。

           $rrd->create(
                step        => 60,
                data_source => { name      => "mydatasource",
                                 type      => "GAUGE" },
                archive     => { rows      => 5 });
于 2010-01-15T07:45:48.303 に答える