On Fri, 4 Apr 2003, Ed L. wrote: > On Friday April 4 2003 11:58, Tom Lane wrote: > > "scott.marlowe" <[EMAIL PROTECTED]> writes: > > > rotatelogs is in my path and all, it just never sees it. > > > > You mean the command fails? Or just that it doesn't capture output? > > > > > "$po_path" ${1+"$@"} </dev/null | $PGPATH/rotatelogs $logfile $DURATION > > > 2>&1 & > > > > Most if not all of the postmaster's log output goes to stderr, so you'd > > need > > > > "$po_path" ${1+"$@"} </dev/null 2>&1 | $PGPATH/rotatelogs ... > > > > to have any hope of useful results. > > Hmmm. I would have agreed 2>&1 was needed, too, but this command seems to > routinely capture all output, including ERRORs: > > nohup pg_ctl start | nohup rotatelogs server_log.%a 86400
OK, So I tried putting the 2>&1 before the | and all. No matter what I try, every from the | on is ignored. ps doesn't show it, and neither does pg_ctl status. Both show a command line of /usr/local/pgsql/bin/postmaster as the only input to start the server. Now, the thing is, I've tried this with hardcoded values, like: "$po_path" ${1+"$@"} </dev/null 2>&1 /usr/local/pgsql/bin/rotatelogs /mnt/d1/data/logs/pglog 86400 where I know the logs directory exists. It works if I do: pg_ctl start | rotatelogs $PGDATA/pglog 86400 2>1& and puts the log files there. I've copied rotatelogs into the /usr/local/pgsql/bin directory as well. So, I'm thinking this is my weakness in shell scripting that's getting me here, and that the shell is eating the |, not passing it out with the postmaster to be used when it starts. ---------------------------(end of broadcast)--------------------------- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly