all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / Atom feed
* [bug#45588] [PATCH] services: postgresql: Log from pg_ctl.
@ 2021-01-01 10:10 Christopher Baines
  2021-01-06  9:22 ` Mathieu Othacehe
  0 siblings, 1 reply; 3+ messages in thread
From: Christopher Baines @ 2021-01-01 10:10 UTC (permalink / raw)
  To: 45588

pg_ctl will output errors when starting PostgreSQL, for example about errors
in the configuration file. Without getting pg_ctl to log to a file, I'm not
sure how to find those errors.

* gnu/services/databases.scm (postgresql-activation): Create
/var/log/postgresql.
(postgresql-shepherd-service): Pass --log=/var/log/postgresql/pg_ctl to
pg_ctl.
---
 gnu/services/databases.scm | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/gnu/services/databases.scm b/gnu/services/databases.scm
index d2dc5f0da8..479a3c56f7 100644
--- a/gnu/services/databases.scm
+++ b/gnu/services/databases.scm
@@ -205,6 +205,10 @@ host	all	all	::1/128 	md5"))
            (mkdir-p #$data-directory)
            (chown #$data-directory (passwd:uid user) (passwd:gid user))
 
+           ;; Create log directory
+           (mkdir-p "/var/log/postgresql")
+           (chown "/var/log/postgresql" (passwd:uid user) (passwd:gid user))
+
            ;; Drop privileges and init state directory in a new
            ;; process.  Wait for it to finish before proceeding.
            (match (primitive-fork)
@@ -247,6 +251,7 @@ host	all	all	::1/128 	md5"))
                        (setgid (passwd:gid user))
                        (setuid (passwd:uid user))
                        (execl pg_ctl pg_ctl "-D" #$data-directory "-o" options
+                              "--log=/var/log/postgresql/pg_ctl"
                               mode)))))))
             (pid-file (in-vicinity data-directory "postmaster.pid"))
             (action (lambda args
-- 
2.29.2





^ permalink raw reply	[flat|nested] 3+ messages in thread

* [bug#45588] [PATCH] services: postgresql: Log from pg_ctl.
  2021-01-01 10:10 [bug#45588] [PATCH] services: postgresql: Log from pg_ctl Christopher Baines
@ 2021-01-06  9:22 ` Mathieu Othacehe
  2021-01-14 13:51   ` Mathieu Othacehe
  0 siblings, 1 reply; 3+ messages in thread
From: Mathieu Othacehe @ 2021-01-06  9:22 UTC (permalink / raw)
  To: Christopher Baines; +Cc: 45588


Hello Chris,

> pg_ctl will output errors when starting PostgreSQL, for example about errors
> in the configuration file. Without getting pg_ctl to log to a file, I'm not
> sure how to find those errors.

On Ubuntu, I noticed that pg_ctl logs are located in
'/var/log/postgresql/postgresql-12-main.log'.

Turns out it's using a Debian wrapper called pg_ctlcluster around pg_ctl
that is setting up logging between other things.

You could maybe call the log file 'pg_ctl.log', otherwise seems fine.

Thanks,

Mathieu




^ permalink raw reply	[flat|nested] 3+ messages in thread

* [bug#45588] [PATCH] services: postgresql: Log from pg_ctl.
  2021-01-06  9:22 ` Mathieu Othacehe
@ 2021-01-14 13:51   ` Mathieu Othacehe
  0 siblings, 0 replies; 3+ messages in thread
From: Mathieu Othacehe @ 2021-01-14 13:51 UTC (permalink / raw)
  To: Christopher Baines; +Cc: 45588


Hello Chris,

> You could maybe call the log file 'pg_ctl.log', otherwise seems fine.

I added what you proposed to a patch refactoring PostgreSQL service
here: https://issues.guix.gnu.org/45860.

Thanks,

Mathieu




^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-01-14 13:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-01 10:10 [bug#45588] [PATCH] services: postgresql: Log from pg_ctl Christopher Baines
2021-01-06  9:22 ` Mathieu Othacehe
2021-01-14 13:51   ` Mathieu Othacehe

all messages for Guix-related lists mirrored at yhetil.org

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://yhetil.org/guix

Example config snippet for mirrors.


AGPL code for this site: git clone http://ou63pmih66umazou.onion/public-inbox.git