Danny Milosavljevic <dan...@scratchpost.org> skribis: > $ sudo herd status postgres > Status of postgres: > It is started. > Running value is 18438. > It is enabled. > Provides (postgres). > Requires (user-processes loopback). > Conflicts with (). > Will be respawned. > > So it claimed that everything was just peachy. > > $ sudo herd stop postgres > $ sudo herd start postgres > > ... which reported nothing out of the ordinary either. > > $ ps -ef |grep postgres > [xxxx] <defunct>
Sounds like postgresql died and shepherd did not notice? Or maybe it keeps trying to respawn it? What did /var/log/shepherd.log say? > $ sudo -u postgres postgres --config-file=/etc/postgresql.conf -D > /var/lib/postgresql/data > FATAL: database files are incompatible with server > DETAIL: The data directory was initialized by PostgreSQL version 9.3, which > is not compatible with this version 9.5.1. > $ > > Aha! It says so right there in the standard output (or error?). Where did > that message go in the shepherd case? > > $ cd /var/log > $ grep -r incompatible . > $ Currently the Shepherd does not do log stdout/stderr of its child processes, which sucks somewhat. However, daemons can usually be told to write to syslog, which is more appropriate than writing things to stdout/stderr anyway. What’s the right command-line/configuration option to have postgresql use syslog? Thanks, Ludo’.