Hey all!
I'm actually not sure if this is a VMonitor issue or a Scoreboard issue, but
here's my situation.
I compiled and installed Scoreboard, GTop, and VMonitor. I load VMonitor in
my startup.pl file as shown below:
(... Or to jump to the point, the reason for my post is my VMonitor output
for Apache only shows partial information for the parent process and no
information for my running children... See config info and output below:)
use lib qw( /home/jasonb/src/webzeus /home/jasonb/local/lib/perl/5.6.1 );
use Apache::Scoreboard ();
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} = 1;
$Apache::VMonitor::Config{FS_USAGE} = 1;
$Apache::VMonitor::Config{SORT_BY} = 'size';
$Apache::VMonitor::PROC_REGEX = join "\|", qw(mysql apache);
I'm running Debian GNU/Linux Woody with Sid's Apache:
[Mon Oct 8 19:30:12 2001] [notice] Apache/1.3.20 (Unix) Debian/GNU
mod_perl/1.25 configured -- resuming normal operations
My VMonitor config in httpd.conf is as follows:
<Location /monitor>
SetHandler perl-script
PerlHandler Apache::VMonitor
</Location>
<Location /scoreboard>
SetHandler perl-script
PerlHandler Apache::Scoreboard::send
order deny,allow
deny from all
#same config you have for mod_status
allow from 127.0.0.1
allow from 192.168.0.0/255.255.255.0
</Location>
(loading /scoreboard returns three spaces to my browser and nothing else.)
When I load /monitor it only returns the parent (par) Apache process and it
doesn't show any child processes at all. I've a dozen running, though.
## PID M Elapsed LastReq Srvd Size Share VSize Rss Client
Request (first 64 chars)
par: 18987 . 8.3M 8.2M 10.1M 8.3M
Total: 8724K ( 8.3M) size, 8724K ( 8.3M) approx real size (-shared)
## PID UID Size Share VSize Rss TTY St Command
1 18987 root 8.3M 8.2M 10M 8.3M S apache
2 18988 www-data 8.5M 7.8M 10M 8.5M R apache
3 18989 www-data 8.4M 8.2M 10M 8.4M S apache
4 18990 www-data 8.4M 8.2M 10M 8.4M S apache
..... other httpds ....
I hunted through the VMonitor.pm code, just to see if I could figure out
what's going on...
for (my $i=-1; $i<Apache::Constants::HARD_SERVER_LIMIT; $i++) {
# handle the parent case
my $pid = ($i==-1) ? getppid() : $image->parent($i)->pid;
last unless $pid;
my $proc_mem = $gtop->proc_mem($pid);
my $size = $proc_mem->size($pid);
I commented out the "last unless $pid" and printed out $i. It went through
256 increments, but the output above remained the same. It seems like my
Apache::Scoreboard isn't setup properly.
If anyone has any thoughts, I'd appreciate the help. VMonitor is a sweet
module I'd let to get working fully.
Thanks!
-Jason