[Mongrel] Log problem on stop/restart
Dwayne Purper
dwayne at futmedia.com
Mon Dec 4 11:35:24 EST 2006
I'm using the mongrel_cluster recipes for Capistrano as laid out by
codahale.com and the new ed. of the Agile Development book, but I'm
having problems on restart and stop:
I can start:
[root current]# mongrel_rails cluster::start
Starting 3 Mongrel servers...
And I can see 3 processes running:
[root current]# ps aux | grep mongrel
mongrel 1947 0.0 8.2 24684 10776 ? S Dec01 0:00 /usr/
local/bin/ruby /usr/local/bin/mongrel_rails start -d -e production -p
8000 -a 127.0.0.1 -P log/mongrel.8000.pid -c /var/www/apps/central --
user mongrel --group mongrel --prefix /central
mongrel 1950 0.0 12.4 24716 16336 ? S Dec01 0:00 /usr/
local/bin/ruby /usr/local/bin/mongrel_rails start -d -e production -p
8001 -a 127.0.0.1 -P log/mongrel.8001.pid -c /var/www/apps/central --
user mongrel --group mongrel --prefix /central
mongrel 1953 0.0 12.0 24696 15768 ? S Dec01 0:00 /usr/
local/bin/ruby /usr/local/bin/mongrel_rails start -d -e production -p
8002 -a 127.0.0.1 -P log/mongrel.8002.pid -c /var/www/apps/central --
user mongrel --group mongrel --prefix /central
root 6687 0.0 0.5 3912 688 pts/1 R+ 05:21 0:00 grep
mongrel
But when I check the page, I get a 404:
[root current]# curl -I http://127.0.0.1:8000
HTTP/1.1 404 Not Found
Connection: close
Server: Mongrel 0.3.18
When I stop (or restart), I get .pid does not exist messages:
[root current]# mongrel_rails cluster::stop
Stopping 3 Mongrel servers...
!!! PID file log/mongrel.8000.pid does not exist. Not running?
mongrel::stop reported an error. Use mongrel_rails mongrel::stop -h
to get help.
mongrel_rails stop -P log/mongrel.8000.pid -c /var/www/apps/central/
current
!!! PID file log/mongrel.8001.pid does not exist. Not running?
mongrel::stop reported an error. Use mongrel_rails mongrel::stop -h
to get help.
mongrel_rails stop -P log/mongrel.8001.pid -c /var/www/apps/central/
current
!!! PID file log/mongrel.8002.pid does not exist. Not running?
mongrel::stop reported an error. Use mongrel_rails mongrel::stop -h
to get help.
mongrel_rails stop -P log/mongrel.8002.pid -c /var/www/apps/central/
current
So is it a permissions issue?
Permissions for current directory have log owned by dwayne:dwayne ... :
[root current]# ls -l
total 60
drwxr-xr-x 7 dwayne dwayne 4096 Dec 5 05:06 app
drwxr-xr-x 3 dwayne dwayne 4096 Dec 5 05:06 components
drwxr-xr-x 4 dwayne dwayne 4096 Dec 5 05:06 config
drwxr-xr-x 4 dwayne dwayne 4096 Dec 5 05:06 db
drwxr-xr-x 3 dwayne dwayne 4096 Dec 5 05:06 doc
drwxr-xr-x 4 dwayne dwayne 4096 Dec 5 05:06 lib
lrwxrwxrwx 1 dwayne dwayne 32 Dec 5 05:06 log -> /var/www/apps/
central/shared/log
drwxr-xr-x 6 dwayne dwayne 4096 Dec 5 05:06 public
-rw-r--r-- 1 dwayne dwayne 307 Dec 5 05:06 Rakefile
-rw-r--r-- 1 dwayne dwayne 7264 Dec 5 05:06 README
drwxr-xr-x 5 dwayne dwayne 4096 Dec 5 05:06 script
drwxr-xr-x 8 dwayne dwayne 4096 Dec 5 05:06 test
drwxr-xr-x 6 dwayne dwayne 4096 Dec 5 05:06 tmp
-rw-r--r-- 1 dwayne dwayne 1930 Dec 5 05:06 TODO
drwxr-xr-x 4 dwayne dwayne 4096 Dec 5 05:06 vendor
But that's a symlink to shared directory created by Capistrano. I
changed the shared log directory in /var/www/apps/central/shared/log
to group mongrel, but that doesn't seem to help:
[root current]# ls -l /var/www/apps/central/shared
total 12
drwxrwxrwx 2 dwayne mongrel 4096 Dec 5 03:08 log
drwxrwxrwx 2 dwayne dwayne 4096 Dec 4 16:01 pids
drwxrwxr-x 2 dwayne dwayne 4096 Dec 4 16:01 system
I changed existing mongrel.log to group mongrel also:
[root current]# ls -l /var/www/apps/central/shared/log
total 76
-rw-r--r-- 1 root root 73 Dec 4 16:24 development.log
-rw-rw-rw- 1 dwayne mongrel 67050 Dec 5 05:20 mongrel.log
It seems like mongrel_cluster should have what it needs to create the
pid files. What am I missing?
Thanks for any help. I know others have had this .pid issue, but from
what I've read, it usually involves not starting the cluster from the
proper directory or with proper permissions.
--
Dwayne
More information about the Mongrel-users
mailing list