Hello,

   Following several messages I read on this list, I have installed 
Apache::VMonitor (and mandatory 'other' packages) on my system, to look for an
annoying memory leak on my servers.
   Configuration is Apache 1.3.9, mod_perl 1.21, Apache::Scoreboard 0.09,
Apache::VMonitor 0.04, GTop 0.10, libgtop 1.0.6, glib 1.2.6. Maybe I forgot
some other module.
   That running on a Linux 2.2.5-15 (almost RedHat 6.0, but with some RPMs 
changed for newer versions).

   The httpd.conf is (I erased unrelated data, to make it short) :
------------ httpd.conf
ServerRoot      /usr/local/apache
Listen 8000
HostnameLookups off
User www
Group www
CustomLog       /home/webmaster/tests/access common
ErrorLog        /home/webmaster/tests/error
PidFile         /home/webmaster/tests/httpd.pid
ScoreBoardFile  /home/webmaster/tests/score
LockFile        /home/webmaster/tests/lock
PerlRequire     /home/webmaster/tests/start.pl

<Directory />
        Options None
        AllowOverride None
        order allow,deny
        deny from all
</Directory>

<IfDefine PERLDB>
    <Perl>
      use Apache::DB ();
      Apache::DB->init;
    </Perl>
  
    <Location />
      PerlFixupHandler Apache::DB
    </Location>
</IfDefine>

<Location /perl-status>
        SetHandler  perl-script
        PerlHandler Apache::Status
        order deny,allow
        deny from all
        allow from 127.0.0.1 192.168.1.
</Location>

<Location /sys-monitor>
         SetHandler perl-script
         PerlHandler Apache::VMonitor
         allow from 127.0.0.1
</Location>
----------- End of httpd.conf

   And the start.pl script is :

--------------- start.pl
#!/usr/local/bin/perl

# make sure we are in a sane environment.
$ENV{GATEWAY_INTERFACE} =~ /^CGI-Perl/ or die "GATEWAY_INTERFACE not Perl!";

use Apache::VMonitor();
$Apache::VMonitor::Config{BLINKING} = 1;
$Apache::VMonitor::Config{REFRESH}  = 0;
$Apache::VMonitor::Config{VERBOSE}  = 0;
$Apache::VMonitor::Config{SYSTEM}   = 1;
$Apache::VMonitor::Config{APACHE}   = 1;
$Apache::VMonitor::Config{PROCS}    = 1;
$Apache::VMonitor::Config{MOUNT}    = O;
$Apache::VMonitor::Config{FS_USAGE} = O;
$Apache::VMonitor::Config{NETLOAD}  = 0;

@Apache::VMonitor::NETDEVS    = qw(lo eth0);
$Apache::VMonitor::PROC_REGEX = join "\|", qw(httpd mysql);

1;
------------- end of start.pl

   All that pretty well cut-and-pasted from docs and the like.
   When I access /perl-status, everything is okay.
   But as for /sys-monitor, I get a Segmentation Violation. Under PerlDb, this
is what is printed :

[www@nihao installed]$ /usr/local/apache/bin/httpd -X -DPERLDB -f 
/usr/local/apache/conf/httpd.small
[notice] Apache::DB initialized in child 633

Loading DB routines from perl5db.pl version 1.0402
Emacs support available.

Enter h or `h h' for help.

Signal SEGV at /dev/null line 0
        eval {...} called at /dev/null line 0
Aborted (core dumped)

   This is printed immediately, meaning PerlDb is not called (while it 
breakpoints Ok, and everything seems right, if I use the /perl-status URL).
   Where did I go wrong ?
   Tia,
-- 
-+-+ Pierre-Yves BONNETAIN (aka Pyb)
     Rouge&Blanc - Fastest Wines in Europe.
     http://www.rouge-blanc.com

Reply via email to