Start times for Oracle EPM System

I have spent quite a bit of time learning the ins and outs of starting and stopping Oracle EPM System on versions:, and

It all started with a customer that asked me to come in and review their environment, due to some stability issues. I immediately noticed a few quick wins, and asked them to restart services while we went for lunch. I got the deer in headlights stare. You know that look. Well, what typically takes 30 minutes on, was taking them 1h 45m to complete on a normal basis. Granted, they had 85+ services due to triple redundancy on the web tier as well as High Availability on the app tier, but it still should not take this long.

Ultimately, I was able to reduce their startup time from almost two hours to a respectable 25 minutes. Since, I have created several permutations for different sets of requirements. Some are all Windows, while others are all Linux. Some customers will not allow PsExec, and we have alternatives for that, too. The most frequently implemented is my latest, v3.0.6, which will control EPM System across multiple servers, even in mixed environments.

And our start / stop scripts are not limited to EPM, either. We have streamlined solutions for OBIEE and Exalytics, as well.

A side note for you Linux geeks, I typically like to create aliases (.bashrc) for even further convenience. Adding EPM_ORACLE_HOME and EPM_INSTANCE_HOME to .bash_profile is nice to have, too.

I have made general observations regarding startup times of EPM System on the following versions with my scripts:
EPM Startup typically takes 20-35mins
EPM Startup typically takes 12-20mins
EPM Startup typically takes 2-8mins (I have Exalytics environments completely up in 1.5m)

Oracle is definitely making improvements to these times, as there were a lot of grumblings around this in Well, Oracle, it’s been noticed! I have a couple of other tricks I use in conjunction to speed things up, and would be glad to share with those interested.

Automate log cleanup

A good admin can be a lazy admin. Not that I promote the lazy part, but I prefer to have scripts and schedulers do work for me, when possible.

Here are a few sample crontab entries I used for Oracle EPM System administration. The first one will remove log files older than 60 days. The second will compress anything older than two weeks.

# purge all log and out files older than 60 days
00 1 * * * /usr/bin/find /oracle/Middleware/user_projects/epmsystem1/diagnostics/logs/ -type f -name \( -name '*.log' -o -name '*out' \) -mtime +60 -exec rm -f {} \;

# compress all log and out files older than 14 days
00 2 * * * /usr/bin/find /oracle/Middleware/user_projects/epmsystem1/diagnostics/logs/ -type f -name \( -name '*.log' -o -name '*out' \) -mtime +14 -exec gzip {} \;

But which logs? Try using ‘find’

In another post, I will detail common EPM logs and their locations, but there is always the potential for logs in other directories to have valuable information. So how do I discover them?

Search for recently changed logs on Linux:

find / -mmin -10 # Find files modified less than 10 mins ago
find . -mtime 0   # find files modified between now and 1 day ago
find . -mtime -1  # find files modified less than 1 day ago
find . -mtime 1   # find files modified between 24 and 48 hours ago
find . -mtime +1  # find files modified more than 48 hours ago
find . -mmin +5 -mmin -10 # find files modified between 6 and 9 minutes ago

Search by name:
find . -name “*log”

Tips from a proven Oracle EPM / OBIEE infrastructure consultant.