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