Oracle调度程序作业日志输出
我正在使用dbms_scheduler来执行PL / SQL存储过程。我希望能够让代码创建一些文本日志记录输出并将其与运行相关联以验证它是否正常工作,但我在文档中找不到任何可以做的事情。是否有设施可以做到这一点,我错过了?这是一个在Unix下运行的11g数据库。如果我可以使用dbms_output这样真的很好,所以我也可以从sqlplus运行它并获得输出。
没有找到相关结果
已邀请:
3 个回复
扭湘阀柿蹄
凄挡
联海
创建一个可以轻松写入日志表的存储过程:
然后在你的工作中,你可能正在运行一个存储过程。在您自己的存储过程中,只需添加调用job_logger()过程的行来写入日志。这使得丑陋的INSERT ... COMMIT杂乱无助于你有趣的存储过程代码。
您的日志表会自动加上时间戳并由主键编制索引。要查看日志,您可以运行它
现在如果不想使用Oracle调度程序,而是希望使用DBMS_OUTPUT编写输出的方式,并希望在Unix shell下运行它,那也是可能的。 你会创建一个调用sqlplus的脚本,有点像这样。如果您的用户是SCOTT并且存储的proc被称为FOO,
注意,-s标志禁止Oracle SQL Plus标题以获得更清晰的输出。 -l标志使得如果密码错误或其他错误,sqlplus将中止,而不是尝试提示输入用户名。反馈关闭禁止PL / SQL“Anonymous block completed”消息。 如果你想安排这个,你可以从cron这样调用它: