关于DBMS_SCHEDULER job日志级别LOGGING_LEVEL

本文介绍如何在Oracle数据库中通过调整job class的日志级别及job自身的日志设置来控制Scheduler Jobs产生的日志量。包括创建无日志job class、设置job的logging level属性以及查看和删除Scheduler Jobs日志的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[sql]  view plain copy
  1. --job日志级别由两个因素决定,一个是job自己日志级别,别一个是使用的job cloass的日志级别,取两者中的最高值。  
  2. --job创建时日志级别默认是DBMS_SCHEDULER.LOGGING_RUNS,  
  3. --创建的job时,如果不指定job class,默认为DEFAULT_JOB_CLASS,而DEFAULT_JOB_CLASS默认logging level是DBMS_SCHEDULER.LOGGING_RUNS,  
  4. --所以创建的job的logging level至少是LOGGING_RUNS。  
  5. --如果不产生日志,必须禁止job自己日志级别,同时不能使用默认的默认为DEFAULT_JOB_CLASS.  
  6.   
  7. -- 重新建立无日志job class  
  8. begin  
  9.   DBMS_SCHEDULER.create_job_class (  
  10.     job_class_name          => 'no_logging_class',  
  11.     resource_consumer_group => 'default_consumer_group',  
  12.     logging_level           => DBMS_SCHEDULER.LOGGING_OFF);  
  13. end;  
  14.   
  15.   -- Create job links to previous job class.  
  16.   DBMS_SCHEDULER.create_job (  
  17.     job_name        => 'test_log_job',  
  18.     job_type        => 'PLSQL_BLOCK',  
  19.     job_action      => 'BEGIN NULL; END;',  
  20.     job_class       => 'no_logging_class',  
  21.     enabled         => FALSE,  
  22.     auto_drop       => FALSE,  
  23.     comments        => 'Job used to job logs.');     
  24.   
  25. --禁止job自身日志,修改日志级别LOGGING_LEVEL属性,   
  26. begin  
  27.  dbms_scheduler.set_attribute('REFRESH_MV_RT_SEC_MKT','LOGGING_LEVEL',DBMS_SCHEDULER.LOGGING_OFF);  
  28. end;  
  29. --1)DBMS_SCHEDULER.LOGGING_OFF:关闭日志记录功能;  
  30. --2)DBMS_SCHEDULER.LOGGING_RUNS:对任务的运行信息进行记录;  
  31. --3)DBMS_SCHEDULER.LOGGING_FULL:记录任务所有相关信息,不仅有任务的运行情况,甚至连任务的创建、修改等也均将记入日志。  
  32.   
  33.   
  34. --以sysdba查看SCHEDULER_JOBS生成的日志(名称全用大写)  
  35. select * from all_scheduler_job_log where owner='JJAPPLHB' and (job_name='XXX' or job_name='AAA' or job_name='BBB')  
  36. select * from all_scheduler_job_run_details where owner='JJAPPLHB' and (job_name='XXX' or job_name='AAA' or job_name='BBB')  
  37.   
  38. --以sysdba删除SCHEDULER_JOBS生成的日志(名称大写)  
  39. --注意是当前用户下的job_name!!!  
  40. delete from all_scheduler_job_log where owner='JJAPPLHB' and (job_name='XXX' or job_name='AAA' or job_name='BBB')  
  41. delete from all_scheduler_job_run_details where owner='JJAPPLHB' and (job_name='XXX' or job_name='AAA' or job_name='BBB')  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值