On 05/31/2018 11:20 AM, Ian Bell wrote:
> I am having considerable difficulty logging information in PL-pgSQL
> functions by using the ‘RAISE’ statement. I am asking for
> comments/suggestions on what I am doing wrong.
>
>
> I’ve tried flushing/rotating the log files by executing *‘select
> pg_rotate_logfile()’* in PSQL but my messages never appear in the log
> files. I’ve tried calling my PL-pgSQL functions in PSQL, PgAdmin4,
> OmniDB and ADO.NET but again my messages never appear in the log file.
>
> On very rare occasions, I see my messages the log file if I restart the
> PostgreSql server however restarting the server generally does not flush
> my messages to the log files.
>
Do they show up in a client? For example psql:
test_(aklaver)> create or replace function TestWithBasicTypeArguments( i
int, n numeric, t text)
returns integer
as $$
begin
raise log 'Test.TestWithArguments: i = %, n = %, t = %', i, n, t;
return 0;
end;
CREATE FUNCTION
test_(aklaver)> set client_min_messages = 'debug1';
test_(aklaver)> select testwithbasictypearguments(1, 2.5, 'test');
LOG: Test.TestWithArguments: i = 1, n = 2.5, t = test
testwithbasictypearguments
----------------------------
0
(1 row)
--
Adrian Klaver
adrian.klaver@aklaver.com