Nginx using access.log.1 after using a logrotate script under ubuntu (from source)

Hi

I’ve built nginx from source on ubuntu in /usr/local/nginx according to
the
tutorial:
http://articles.slicehost.com/2009/3/4/ubuntu-intrepid-installing-nginx-from-source

and used the init.d script:
http://articles.slicehost.com/2009/3/4/ubuntu-intrepid-adding-an-nginx-init-script

read this about nginx log rotation:
http://www.ruby-forum.com/topic/134115

when forcing logrotate with: sudo logrotate -f /etc/logrotate.conf
nginx starts using access.log.1
but when using a signal manually nginx uses access.log: sudo kill -USR1
cat nginx.pid

If I’m using ‘nginx’ user in the logrotate script I’m getting an error
that
this use doesn’t exists so I have to use root.
My logrotate script under /etc/logrotate.d/nginx
/usr/local/nginx/logs/*.log {
weekly
missingok
rotate 52
compress
delaycompress
notifempty
create 640 nginx adm
sharedscripts
postrotate
[ ! -f /usr/local/nginx/logs/nginx.pid ] || kill -USR1
cat /usr/local/nginx/logs/nginx.pid
endscript
}

What am I doing wrong?
Thanks

Maybe you used a tooooooooooold version?
Try the current!

On Sun, Mar 7, 2010 at 10:13 AM, pablo platt [email protected]
wrote:

Hi

I’ve built nginx from source on ubuntu in /usr/local/nginx according to the
tutorial:
http://articles.slicehost.com/2009/3/4/ubuntu-intrepid-installing-nginx-from-source


Ren Xiaolei

Are you sure, that /usr/local/nginx/logs/nginx.pid has actual pid of
the master process?

2010/3/7 pablo platt [email protected]:

2010/3/7 Борис Долгов [email protected]

Are you sure, that /usr/local/nginx/logs/nginx.pid has actual pid of
the master process?

Yes according to the tutorial at
http://articles.slicehost.com/2009/3/4/ubuntu-intrepid-installing-nginx-from-source

Are you sure, that /usr/local/nginx/logs/nginx.pid has actual pid of
the master process?

Yes according to the tutorial at
http://articles.slicehost.com/2009/3/4/ubuntu-intrepid-installing-nginx-from-source

Have you verified it, e.g. by catting it?

but when using a signal manually nginx uses access.log: sudo kill -USR1 cat nginx.pid

Here you aren’t using the full path. Where have you executed this from?

Cheers,
Daniel


http://daniel.hahler.de/

You may want to try the current version from Jeff W.'s (development)
PPA:
https://launchpad.net/~jdub/+archive/devel

He has a stable PPA, too, but nginx 0.8.x is often used in production
already.

Cheers,
Daniel

On Sun, Mar 7, 2010 at 3:13 AM, pablo platt [email protected]
wrote:

http://www.ruby-forum.com/topic/134115
weekly
endscript
http://nginx.org/mailman/listinfo/nginx


http://daniel.hahler.de/

I’ll use the PPA but want to understand why my logrotate doesn’t work.
Is it possible to install the PPA and use it reload nginx without
loosing
existing connections?
Do I need to use ‘make uninstall’ on the previous nginx installation
first?

On Mon, Mar 8, 2010 at 3:33 PM, Daniel H. [email protected] wrote:

Are you sure, that /usr/local/nginx/logs/nginx.pid has actual pid of
the master process?

Yes according to the tutorial at

http://articles.slicehost.com/2009/3/4/ubuntu-intrepid-installing-nginx-from-source

Have you verified it, e.g. by catting it?

What do you mean by verifying by catting it?

but when using a signal manually nginx uses access.log: sudo kill -USR1
cat nginx.pid

Here you aren’t using the full path. Where have you executed this from?

I’ve executed it from the /usr/local/nginx/logs folder

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs