EMDIAG Repvfy Kit for Oracle Enterprise Manager Cloud Control 12c

EMDIAG Repvfy is a tool which is designed to collect data from a Cloud Control Management Repository to assist in the diagnosis and optimization of EM12c. It’s mentioned on “Oracle Enterprise Manager 12c Configuration Best Practices (Doc ID 1553342.1)”, and you can find the required information on Doc ID 1426973.1, to download, install and run EMDIAG Repvfy. Yesterday, I installed it for our EM12c system, and I got some errors while running it. So here is a quick blog post about EMDIAG Repvfy.

At first, to be able to install (and run) it, you should set Oracle environment variables for Enterprise Manager Cloud Control repository database. You should also set EMDIAG_HOME variable which will point to the folder you unzipped the tool. So you run the following commands to install EMDIAG Repvfy:

I tried to run it with “execute optimize” parameter, but it gave some errors when running:

As you might have noticed, the version I downloaded, is updated recently (2014.04.03). I’m sure they will fix its errors soon. By the way, these errors are simple syntax errors, so we can fix the error by ourselves. The Repvfy tool uses some sql scripts which are stored under $EMDIAG_HOME/12cR1. I see that #optimize.sql has some syntax errors. So I opened #optimize.sql file with my favorite editor (vi), then fixed the following codes:

I highly recommend you to install and use EMDIAG Repvfy. Maybe you will not need to diagnose EM12c, but even “optimize” command of EMDIAG Repvfy is very useful. It’ll optimize internal task system (and worker threads), repository settings, the PING grace period (to allow the OMS to wait longer before checking the heartbeat of the agents).

Please share

AWS Big Data Specialist. Oracle Certified Professional (OCP) for EBS R12, Oracle 10g and 11g. Co-author of "Expert Oracle Enterprise Manager 12c" book published by Apress. Awarded as Oracle ACE (in 2011) and Oracle ACE Director (in 2016) for the continuous contributions to the Oracle users community. Founding member, and vice president of Turkish Oracle User Group (TROUG). Presented at various international conferences including Oracle Open World.


  1. Blake wright

    Why would you want the OMS To be delayed in checking the heartbeat of the agent?  This will compromise target metrics that depend upon the agents reliability with the OMS.  Also, it will skew any  reports, jobs, or scheduled diagnostics and scripts that are automated by cloud control.  This will lead to false reporting and false positives when it comes to alerts and email notifications.  I recommend leaving he OMS heartbeat check to the out of the box settings if at all possible.

    • Gokhan Atil

      Hi Blake,

      Out of the box settings are not optimized for large environments. Upon a system startup, the OMS pings each agent to get a current heartbeat and update the availability state for all the agents. If you have 1000s of agent, this may take some time. Increasing “ping grace period” will give more time to the OMS to contact all agents.

      By the way, the tool will not increase the ping grace period on a fixed value. It evaluates your system and set an appropriate value.

      Please check Doc ID 1553342.1 for more information.

  2. Jonathan Whitehead

    These errors are still in the latest EMDIAG repvfy download  updated 12/05/2014, and I reported some other errors that are in the ~scheduler.sql and ~task_health.sql  files.

Leave Comment

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.