Redirect RAISE NOTICE and errors to separate log file

From: Nikhil Ingale <niks(dot)bgm(at)gmail(dot)com>
To: pgsql-admin(at)lists(dot)postgresql(dot)org
Subject: Redirect RAISE NOTICE and errors to separate log file
Date: 2023-02-17 15:59:14
Message-ID: CALXkTpy-Nswrd1sNuKcJ-ZoUgvH24My-Ar=jXHAve=Ab-CWnCA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

Hi All,
I have below given procedure where I have to redirect the messages and
errors to separate log files.

CREATE OR REPLACE PROCEDURE()
language plpgsql
AS $$
Declare
insrtStr character varying(5000);
BEGIN
insrtStr := 'INSERT into test(a,b,c) SELECT * FROM demo';
RAISE NOTICE 'insrtStr';
EXECUTE insrtStr;
EXCEPTION WHEN OTHERS THEN
v_sqlerrm := sqlerrm;

v_sqlstate := sqlstate;

RAISE NOTICE 'exception: % % ', v_sqlstate , v_sqlerrm ;

END;
$$;

psql -U postgres -d proddb -f test.sql --log-file=test.log

Reason for printing the insrtStr is to keep track of table inserts.

Above is just an example procedure. Procedure that I have written merges
the data from server tables.
RAISE NOTICE logs and exceptions are printed on the console. But I want to
separate out the logs.

Please provide your valuable feedback.

Thanks & Regards,
Nik

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message David G. Johnston 2023-02-17 16:27:41 Re: Redirect RAISE NOTICE and errors to separate log file
Previous Message MichaelDBA 2023-02-17 13:00:48 Re: Upgrading postgres quickly, without downtime.