设计Oracle数据库上的作业监视

mar*_*ami 5 oracle jobs monitoring database-design database-link

我有几个Oracle数据库,我的内部应用程序正在运行.这些应用程序使用dba_jobsdba_scheduler_jobs.

我想编写监控功能:check_my_jobsNagios会定期调用它来检查我的工作是否一切正常.(它们正在运行吗?它是否已损坏?next_run_date是否已延迟?依此类推)

解决方案:由于我必须监视不同数据库上的作业,因此有两种实现解决方案的方法:

  1. 仅在一个数据库上创建监视功能和配置表,该数据库将使用数据库链接检查每个数据库上的作业.

    优点:集中功能,易于维护.
    缺点:我必须使用数据库链接进行检查.

  2. 在我想要检查作业的每个数据库上创建监视功能和配置表.

    专业人士:我不必使用数据库链接
    缺点:每个数据库上都有重复的监控代码

哪种解决方案更好?