MURAT KOÇ wrote: > Version is PostgreSQL 9.0.4 on x86_64-unknown-linux-gnu, compiled by GCC gcc > (GCC) 4.1.2 20080704 (Red > Hat 4.1.2-51), 64-bit. > > We set logging parameters as below for DDL & DML Logging: > logging_collector = on > log_statement = mod > log_line_prefix = '%t--%d--%u--%h--%a--%i--%e'
> Logging works successfully while we run direct DML commands like "insert, > update, delete". > > But, when I call a function that does DML, logging doesn't work and server > log file has no information > about calling function. > > I call function like this: SELECT p_dummy_insert(); > > ###This is sample insert function### > CREATE OR REPLACE FUNCTION p_dummy_insert () > RETURNS void AS > $BODY$ > BEGIN > INSERT INTO employee values ('dummy', 'test'); > END$BODY$ > LANGUAGE plpgsql VOLATILE > COST 100; > > "Not logging of function calls" is expected behavior or a bug? We have no > information on server logs > about who called function or when was it called or what did called function > do? The function call itself is logged, but SQL statements inside the function are not. The function call does not show up in your log because it is in a SELECT statement. Set log_statement = 'all' to log the function call. Yours, Laurenz Albe -- Sent via pgsql-general mailing list (pgsql-general@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general