打印函数执行时间
- 方法
CREATE OR REPLACE FUNCTION func_proxy_show_time(func_name varchar)
RETURNS INTEGER
AS
$BODY$
DECLARE
str varchar;
BEGIN
raise notice '------------------------------------------------------begin:timestamp=%, func=%',clock_timestamp(), func_name;
execute format('select %s();',func_name);
raise notice '------------------------------------------------------end:timestamp=%, func=%',clock_timestamp(), func_name;
RETURN 0;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;
CREATE OR REPLACE FUNCTION func_test()
RETURNS INTEGER
AS
$BODY$
DECLARE
BEGIN
RETURN 0;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;
select * from func_proxy_show_time('func_test');
- 测试
select * from func_proxy_show_time('func_test');
NOTICE: ------------------------------------------------------begin:timestamp=2020-05-12 19:53:23.394334+08, func=func_test
NOTICE: ------------------------------------------------------end:timestamp=2020-05-12 19:53:23.394398+08, func=func_test
func_proxy_show_time
----------------------
0
(1 row)