diff options
author | Christopher Baines <mail@cbaines.net> | 2021-01-01 09:58:29 +0000 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2021-01-01 09:58:29 +0000 |
commit | 3ac3f226f32dac17500974ec0319fdeff42d22d4 (patch) | |
tree | c94c1ec84e14423471f91da7b845e82d52895862 | |
parent | 153151a865cfae5e7f8c8d98be78b238a6cc7a33 (diff) | |
download | guix-postgres-pg_ctl-logging.tar guix-postgres-pg_ctl-logging.tar.gz |
services: postgresql: Log from pg_ctl.postgres-pg_ctl-logging
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.
-rw-r--r-- | gnu/services/databases.scm | 5 |
1 files changed, 5 insertions, 0 deletions
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 |