Collecting Detailed Logs from BPEL 10.1.3.4
By Antony Reynolds on Feb 12, 2010
In 10.1.3.4 Oracle added a significant new feature to help diagnose problems in the BPEL Process manager. This feature allows you to turn up logging for a a test and run thread dumps every ten seconds. When you are done you can download the logs and thread dumps as a single zip file to either study yourself or upload to Oracle support. In this entry we will look at how to use this feature.
Starting Data Collection
If you log on to the BPEL console and go to the Administration tab you will see a Diagnostics sub-tab. Select this tab and you will see a screen with two buttons allowing you to start and stop collection of detailed logs and thread dumps.
Pressing “Start Collection” will, as the screen says set all the loggers to the debug level and also start performing a thread dump every 10 seconds. Note that this will also reset the statistics collection.
Having started your data collection you have up to five minutes to run your tests before the diagnostics collection will stop automatically. So be prepared to execute your tests immediately!
Stopping Data Collection
After running your tests then return to the Diagnostics tab under Administration and press the “Stop Collection” button. When collection is stopped then the loggers are reset to the values you had before pressing the “Start Collection” button. It will also reset the statistics collection, again (it says that on the screen but when I looked on base 10.1.3.4 it hadn’t reset them). Finally it will download a file called log.zip that will have the data collected during your test run. Save this file to your hard disk. If you forget to stop the data collection then it will stop automatically after 5 minutes, but it won’t give you an option to download the results.
What You Get for your Money
So what do you get in the download? The following file structure will appear in your zip file.
- logs – this is the logs directory of your BPEL domain $ORACLE_HOME/bpel/domains/<domain_name>/logs
- domain.log – The current domain log
- domain.log.N – previous domain logs
- dispatcher.xml – this contains information about message processing in the BPEL engine, particularly useful for information about thread usage.
- stats.xml – This cotnains an XML representation of the statistics in the BPEL Consoles Administration/Statistics tab, it also includes some very basic JVM stats.
- thread-dump-NN.txt – the thread dump files, one for every ten seconds that the data collection was occurring.
The domain logs don’t cover just the time you were running with enhanced logging, but include all the domain logs available up to the point of download of the zip. To find the start of the enhanced logging section you can search for
which marks the start of enhanced logging.
What Can I Do With All This Stuff
All the data apart from the threads that is collected can be more easily viewed through the BPEL console. But if you need to upload information to Oracle support to help them diagnose issues then this is a great tool to use. The thread dumps can also be useful if you have your own Java code executing and you want to see why and where it is blocking.
The diagnostics tab is a useful tool for collecting information for upload to Oracle support. to help diagnose problems with the core BPEL engine.