6

Apache 1.3 から Apache 2.063 に移行しようとしていますが、 Apache::VMonitor の動作に問題があります。

古いApacheでセットアップしたのと同じように、次のようなセットアップを試みました。

<Perl>
  use Apache::VMonitor();
  $Apache::VMonitor::Config{BLINKING} = 1;
  $Apache::VMonitor::Config{refresh}  = 0;
  $Apache::VMonitor::Config{verbose}  = 1;
  $Apache::VMonitor::Config{system}   = 1;
  $Apache::VMonitor::Config{apache}   = 1;
  $Apache::VMonitor::Config{procs}    = 1;
  $Apache::VMonitor::Config{mount}    = 1;
  $Apache::VMonitor::Config{fs_usage} = 1;
  $Apache::VMonitor::Config{apache_sort_by}  = 'vsize';
  $Apache::VMonitor::PROC_REGEX = join "\|", qw(.*)
</Perl>

<Location /vmonitor>
  SetHandler perl-script
  PerlHandler Apache::VMonitor
  Order deny,allow
  Deny from all
  Allow from 127.0.0.1
  Allow from X.X.X.X ## really a valid IP
</Location>

サーバーを起動しようとすると、次のエラーが発生します。

ap_scoreboard_image が存在しません ...

Apache::VMonitor のドキュメントで次のようなメモを見つけました。

注意 Apache バージョン 2.0.53 以降 (2.0.54、2.0.55、および 2.0.58 で検証済み) の場合、Apache::VMonitor をセクションおよび/または PostConfigRequire ファイルにロードすると、Apache がスコアボード オブジェクト。

問題は、それ以降のバージョンの Apache でいつスコアボード オブジェクトを初期化できるかが示されていないことです。「use」ステートメントを省略しようとしたところ、次のエラーが発生しました。

パニック: グローバル破壊中の del_backref。

*エラーコード 255

これを機能させる方法を知っている人はいますか?私は Apache::VMonitor の使用に固執していません。誰かが Apache のスコアボードからデータを解析して表示する別の方法を提案できるなら、私は提案を受け入れます。

4

1 に答える 1

5

私は V2.07 を CPAN にプッシュしました。これにより、問題が修正されます (また、GTop が提供する情報が必要ない場合、または Windows で実行している場合は、GTop への依存関係が削除されます)。

以前のリリース (V2.06) を使用すると、スクリプト/アプリケーションで初期化できるはずです。私の記憶が正しければ、子スレッド/プロセスが作成されるまでスコアボードはありません。

ソースは、必要に応じて github ( http://github.com/mjharwood/Apache--VMonitor-2.0 ) にあります。

于 2012-05-28T15:51:27.680 に答える