On Dec 20, 2011, at 6:00 PM, David E. Wheeler wrote: >> Oh, OK. We use popen() to execute the task on *nix, and that only >> reads STDOUT, so you should handle redirection in your script. I did >> spend some time look at this a few years back as I recall, and didn't >> find a fix I was happy with. > > So it will pick up the output to STDOUT? That’s fine, I think I can tweak the > scripts to send STDERR to STDOUT.
Unfortunately, it does not seem to work. I have pgagent started like so: pgagent -s /var/log/pgagent_91.log hostaddr=127.0.0.1 dbname=postgres user=postgres /var/log/pgagent_91.log does exist, and has nothing in it at all. So I created this shell script: #!/bin/bash echo Hi there perl -e 'die "WTF!"' || exit $? 2>&1 I set up a job to run it. The results were: postgres=# select * from pgagent.pga_jobsteplog where jsljlgid = 46; -[ RECORD 1 ]------------------------------ jslid | 45 jsljlgid | 46 jsljstid | 13 jslstatus | f jslresult | -1 jslstart | 2012-01-02 10:59:32.606959-08 jslduration | 00:00:00.01009 jsloutput | Hi there | WTF! at -e line 1. | Which is great. However, the /var/log/pgagent_91.log file is still empty. Should I take that to mean that job output is not logged there, but only errors from pgagent itself? Thanks, David -- Sent via pgadmin-support mailing list (pgadmin-support@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgadmin-support