关于DBMS_SCHEDULER job日志级别LOGGING_LEVEL

来源:互联网 发布:java如何编译运行 编辑:程序博客网 时间:2024/04/26 19:03


--job日志级别由两个因素决定,一个是job自己日志级别,别一个是使用的job cloass的日志级别,取两者中的最高值。--job创建时日志级别默认是DBMS_SCHEDULER.LOGGING_RUNS,--创建的job时,如果不指定job class,默认为DEFAULT_JOB_CLASS,而DEFAULT_JOB_CLASS默认logging level是DBMS_SCHEDULER.LOGGING_RUNS,--所以创建的job的logging level至少是LOGGING_RUNS。--如果不产生日志,必须禁止job自己日志级别,同时不能使用默认的默认为DEFAULT_JOB_CLASS.-- 重新建立无日志job classbegin  DBMS_SCHEDULER.create_job_class (    job_class_name          => 'no_logging_class',    resource_consumer_group => 'default_consumer_group',    logging_level           => DBMS_SCHEDULER.LOGGING_OFF);end;  -- Create job links to previous job class.  DBMS_SCHEDULER.create_job (    job_name        => 'test_log_job',    job_type        => 'PLSQL_BLOCK',    job_action      => 'BEGIN NULL; END;',    job_class       => 'no_logging_class',    enabled         => FALSE,    auto_drop       => FALSE,    comments        => 'Job used to job logs.');   --禁止job自身日志,修改日志级别LOGGING_LEVEL属性, begin dbms_scheduler.set_attribute('REFRESH_MV_RT_SEC_MKT','LOGGING_LEVEL',DBMS_SCHEDULER.LOGGING_OFF);end;--1)DBMS_SCHEDULER.LOGGING_OFF:关闭日志记录功能;--2)DBMS_SCHEDULER.LOGGING_RUNS:对任务的运行信息进行记录;--3)DBMS_SCHEDULER.LOGGING_FULL:记录任务所有相关信息,不仅有任务的运行情况,甚至连任务的创建、修改等也均将记入日志。--以sysdba查看SCHEDULER_JOBS生成的日志(名称全用大写)select * from all_scheduler_job_log where owner='JJAPPLHB' and (job_name='XXX' or job_name='AAA' or job_name='BBB')select * from all_scheduler_job_run_details where owner='JJAPPLHB' and (job_name='XXX' or job_name='AAA' or job_name='BBB')--以sysdba删除SCHEDULER_JOBS生成的日志(名称大写)--注意是当前用户下的job_name!!!delete from all_scheduler_job_log where owner='JJAPPLHB' and (job_name='XXX' or job_name='AAA' or job_name='BBB')delete from all_scheduler_job_run_details where owner='JJAPPLHB' and (job_name='XXX' or job_name='AAA' or job_name='BBB')


原创粉丝点击