Oracle细碎笔记之存储过程日志记录
Oracle零碎笔记之存储过程日志记录
在编写存储过程时,一般情况直接调试,或者使用dbms_output.putline等来输出日志信息,便于诊断错误等。
但在有些时候,上面的方法就不行了。比如某些作为回调而编写的存储过程。
这时,可以采用oracle提供的utl_file接口,来将调试信息等写入文件,便于后期查看。
基本操作:
首先创建Oracle目录utl,指定目录位置,也即日志存放目录:
CREATE DIRECTORY utl AS '/home/dev/app/dev/util';
|
授权:
GRANT EXECUTE ON utl_file TO strmadmin;
|
测试:
declare
f_output utl_file.file_type;
begin
f_output := utl_file.fopen('UTL','log.txt','a',1024);
utl_file.put_line(f_output, 'hello world.');
utl_file.fclose(f_output);
end;
|
执行完成以后,到/home/dev/app/dev/util目录查看日志文件,即可看到存储过程中输出的日志信息。