On Wed, Dec 10, 2025 at 3:47 AM Gyan Sreejith <[email protected]> wrote:
>
> pg_createsubscriber currently outputs all messages (internal validation 
> messages, standby server start/stop logs, recovery progress output, and 
> output from utilities) directly to the console. As a result, users may find 
> debugging and handling errors difficult. It would be more convenient if 
> messages were separated and stored in different log files. There is already a 
> similar implementation in pg_upgrade.
>
> Proposed Solution:
>
> Based on issues mentioned previously, I would like to propose a new argument 
> -l <logdir> which can be specified for pg_createsubscriber. Using it would 
> create the following log files:
>
> logdir/pg_createsubscriber_server.log which captures all logs related to 
> starting and stopping the standby server.
>
> logdir/pg_createsubscriber_resetwal.log which captures the output of 
> pg_resetwal
>
> logdir/pg_createsubscriber_internal.log which captures internal diagnostic 
> output from pg_createsubscriber (validations, checks, etc.)
>

I think we don't need pg_createsubscriber_resetwal.log separately as
it just prints "Write-ahead log reset", it could as well be part of
pg_createsubscriber_server.log. Also, I noticed that even when -l
option is used, the additional LOG in verbose mode still goes to
console which is difficult to parse. I fell that should also be part
of .log files created by this patch.

Additionally, I think it is better to use a folder with time to store
as LOG files as used in pg_upgrade. This helps to distinguish log
files for different runs (say in case of failures).

I also thought to further split pg_createsubscriber_internal.log into
publisher and subscriber specific LOGs but not sure if that is worth,
so we can leave that for now.

-- 
With Regards,
Amit Kapila.


Reply via email to