On Mon, 29 Dec 2025 at 16:40, vignesh C <[email protected]> wrote: > > On Wed, 24 Dec 2025 at 04:52, Gyan Sreejith <[email protected]> wrote: > > > > Thank you for the feedback everybody. As I read through this email chain, I > > found differing opinions on how logging should be implemented. This > > ambiguity leaves me unsure as to which solution(s) to pursue. As of right > > now, I have attached the git-format patch like Hayato Kuroda recommended > > (but it does not have any new changes). I am willing to implement whatever > > solution when we reach a consensus. > > Few comments: > 1) The file permissions are 664 for pg_createsubscriber_internal.log, > pg_createsubscriber_resetwal.log but 600 for > pg_createsubscriber_server.log. The permissions should be the same for > all the files. > ... > if (opt->log_dir != NULL) > out_file = psprintf("%s/pg_createsubscriber_resetwal.log", opt->log_dir); > else > out_file = DEVNULL; > > cmd_str = psprintf("\"%s\" -D \"%s\" > \"%s\"", pg_resetwal_path, > subscriber_dir, out_file); > > pg_log_debug("pg_resetwal command is: %s", cmd_str); > ... > > ... > if (opt->log_dir != NULL) > { > appendPQExpBuffer(pg_ctl_cmd, " -l %s/pg_createsubscriber_server.log", > opt->log_dir); > } > > pg_log_debug("pg_ctl command is: %s", pg_ctl_cmd->data); > rc = system(pg_ctl_cmd->data); > ...
For this, you can align the file handling and umask behavior with the logic used in syslogger.c (logfile_open). Doing so will ensure that the resulting log files are created with consistent permissions across all cases. Additionally you can include "The umask is set to 077, so access to the log file is disallowed to other users by default" in the documentation of the pg_createsubscriber log option similar to how it is mentioned in [1]. [1] - https://www.postgresql.org/docs/current/app-pg-ctl.html Regards, Vignesh
