通过登录触发器跟踪会话产生trace文件

CREATE OR REPLACE TRIGGER trace_test_user AFTER LOGON ON DATABASE
BEGIN
  IF USER LIKE '%跟踪的用户名%' ESCAPE '\' THEN
    EXECUTE IMMEDIATE 'ALTER SESSION SET timed_statistics=true';
    EXECUTE IMMEDIATE 'ALTER SESSION SET max_dump_file_size=unlimited';
    EXECUTE IMMEDIATE 'ALTER SESSION SET EVENTS ''10046 trace name context forever, level 8'' ';
    EXECUTE IMMEDIATE 'ALTER SESSION SET tracefile_identifier= ''WZY'' ';
  END IF;
END;


创建后,只要登录指定的用户,就会在oracle跟踪目录中,产生一个WZY后缀的跟踪文件,通过分析这个文件查找问题,这种方式可以诊断应用服务器连接池登录或者登录过程中产生的SQL性能问题,当然要记得最后把该触发器禁用或者删除

你可能感兴趣的:(通过登录触发器跟踪会话产生trace文件)