I'm playing with a sandbox version of postgresql83-server and it contains the following startup config:
############################################ set libdir ${prefix}/lib/postgresql83 set logdir ${prefix}/var/log/postgresql83 set dbdir ${prefix}/var/db/postgresql83/defaultdb set dbpid ${dbdir}/postmaster.pid set dbuser postgres set dbgrp postgres startupitem.create yes startupitem.name ${name} startupitem.logfile ${logdir}/postgres.log startupitem.logevents yes startupitem.init "PGCTL=${libdir}/bin/pg_ctl" startupitem.start \ "su ${dbuser} -c \"\${PGCTL} -D \${POSTGRESQL83DATA:=${dbdir}} start -w -l ${logdir}/postgres.log -o \\\"-i -l\\\"\"" startupitem.stop \ "su ${dbuser} -c \"\${PGCTL} -D \${POSTGRESQL83DATA:=${dbdir}} stop -s -m fast\"" startupitem.restart \ "su ${dbuser} -c \"\${PGCTL} -D \${POSTGRESQL83DATA:=${dbdir}} restart -w -s -m fast\"" startupitem.pidfile clean ${dbpid} ############################################ Is it possible to use startupitem.execute for postgresql83? The script wrapper simply contains the pg_ctl commands listed above, maybe daemondo could call pg_ctl directly? Maybe daemondo could be configured to replace pg_ctl and call the postmaster directly? The pid file (/opt/local/var/db/postgresql83/defaultdb/postmaster.pid) is only available to user postgres: -rw------- 1 500 postgres 67 Oct 13 20:12 /opt/local/var/db/postgresql83/defaultdb/postmaster.pid It contains (pid in bold): [ [EMAIL PROTECTED] ~ ]$ sudo cat /opt/local/var/db/postgresql83/defaultdb/postmaster.pid 88055 /opt/local/var/db/postgresql83/defaultdb 5432001 131072 Can daemondo read AND parse this file to get the pid and use it to monitor the server? This is the relevant entries on the system from `ps aux | grep post` (while running the server and pgAmin3 with one connection): 500 88060 0.3 0.0 84776 400 ?? Ss Mon08PM 0:15.39 postgres: stats collector process 500 86574 0.0 0.0 87992 4208 ?? Ss 2:05PM 0:00.13 postgres: postgres postgres 127.0.0.1(52101) idle 500 88059 0.0 0.0 86920 584 ?? Ss Mon08PM 0:07.85 postgres: autovacuum launcher process 500 88058 0.0 0.0 86856 436 ?? Ss Mon08PM 0:13.90 postgres: wal writer process 500 88057 0.0 0.0 86856 752 ?? Ss Mon08PM 0:18.96 postgres: writer process root 88044 0.0 0.0 75440 772 ?? Ss Mon08PM 0:00.01 /opt/local/bin/daemondo --label=postgresql83-server --start-cmd /opt/local/etc/LaunchDaemons/org.macports.postgresql83-server/postgresql83-server.wrapper start ; --stop-cmd /opt/local/etc/LaunchDaemons/org.macports.postgresql83-server/postgresql83-server.wrapper stop ; --restart-cmd /opt/local/etc/LaunchDaemons/org.macports.postgresql83-server/postgresql83-server.wrapper restart ; --verbosity=1 --pid=fileauto --pidfile /opt/local/var/db/postgresql83/defaultdb/postmaster.pid daemon 359 0.0 0.0 77476 308 ?? S Fri04PM 0:00.00 postgres: stats collector process daemon 357 0.0 0.0 78464 228 ?? S Fri04PM 0:00.00 postgres: stats buffer process daemon 356 0.0 0.0 78908 960 ?? S Fri04PM 0:00.99 /System/Library/CoreServices/RemoteManagement/rmdb.bundle/bin/postmaster -D /var/db/RemoteManagement/RMDB/rmdb.data 500 86580 0.0 0.0 87480 3700 ?? Ss 2:07PM 0:00.01 postgres: postgres test 127.0.0.1(52109) idle Note the pid file contains a reference to this process: 500 88055 0.0 0.0 86856 2384 s000 S Mon08PM 0:05.13 /opt/local/lib/postgresql83/bin/postgres -D /opt/local/var/db/postgresql83/defaultdb Also note that this process seems to spawn several helpers, incl: 500 88060 0.3 0.0 84776 400 ?? Ss Mon08PM 0:15.39 postgres: stats collector process 500 88059 0.0 0.0 86920 584 ?? Ss Mon08PM 0:07.85 postgres: autovacuum launcher process 500 88058 0.0 0.0 86856 436 ?? Ss Mon08PM 0:13.90 postgres: wal writer process 500 88057 0.0 0.0 86856 752 ?? Ss Mon08PM 0:18.96 postgres: writer process I could really appreciate some advice about how daemondo parses a pid file and whether to modify this startupitem section of the port. Also appreciate updated clarification of daemondo vs. launchd (an old email thread on this from late 2007 was helpful [daemondo defeats purpose of launchd?], maybe more so than the guide pages that resulted from that thread). Thanks, Darren
_______________________________________________ macports-users mailing list macports-users@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macports-users