Re: How to redirect output from PostgreSQL pg_recvlogical to a file or a pipe?

Поиск
Список
Период
Сортировка
От Adrian Klaver
Тема Re: How to redirect output from PostgreSQL pg_recvlogical to a file or a pipe?
Дата
Msg-id daf7934f-18f5-48fe-a7e1-924c8697dc6c@aklaver.com
обсуждение исходный текст
Ответ на How to redirect output from PostgreSQL pg_recvlogical to a file or a pipe?  (David Ventimiglia <davidaventimiglia@hasura.io>)
Список pgsql-general
On 1/12/24 11:34, David Ventimiglia wrote:
> Hello! How do I redirect logical decoding output from the PostgreSQL CLI 
> tool |pg_recvlogical| either to a file or to another command via a pipe? 
> I ask because when I try the obvious, no output is recorded or sent:
> 
> |pg_recvlogical -d postgres --slot test --start -f - >> sample.jsonl |
> 
> Lest there be any confusion, I already created the slot in an earlier 
> step. Moreover, I can verify that if I omit the output redirection |>> 
> sample| then it does work, insofar as it emits the expected change 
> events when I perform DML in another terminal window. When I include the 
> redirection (or alternatively, set up a pipeline), then nothing happens.

You left out the important part of the SO question:

pg_recvlogical -d postgres --slot test --create-slot -P wal2json

I can get:

pg_recvlogical -d postgres --slot test --start -f - >> sample.jsonl

to work when I do:

pg_recvlogical -d postgres --slot test --create-slot

wal2json seems to be the issue.

> 
> Note that I am aware of the option to pass a filename to the -f switch 
> to write to a file.  That works, but it's not what I'm after because it 
> doesn't help update my mental model of how this is supposed to work.  
> Based on my current (flawed) mental model built up from command line 
> experience with other tools, this /should/ work.  I should be able to 
> send the output to stdout and then redirect it to a file.  It surprises 
> me that I cannot.
> 
> Anyway, thanks!
> 
> Best,
> 
> David
> 

-- 
Adrian Klaver
adrian.klaver@aklaver.com




В списке pgsql-general по дате отправления:

Предыдущее
От: David Ventimiglia
Дата:
Сообщение: How to redirect output from PostgreSQL pg_recvlogical to a file or a pipe?
Следующее
От: Francisco Olarte
Дата:
Сообщение: Re: How to redirect output from PostgreSQL pg_recvlogical to a file or a pipe?