Ubik Batch Server Remote Debugging

From UbikWiki

(Difference between revisions)
(What is it)
(Setup Batch Server)

Line 14:

Line 14:

* Debug
* Debug
-
== Setup Batch Server ==
+
== Setup Batch Server (Done only ONCE)==
* 1) Run Batch Server Installer, see [[Ubik_Batch_Server_Installation_Guide|Server Installation Guide]]
* 1) Run Batch Server Installer, see [[Ubik_Batch_Server_Installation_Guide|Server Installation Guide]]

Revision as of 15:54, 18 September 2012

Contents

Remote Debugging

What is it

Remote debugging enables simple debugging of Batches from inside Eclipse Environment.

You will typically:

  • Generate your BAR with maven:
    • mvn clean install
  • Copy the BAR to <BATCH_SERVER>/batches-cold-deploy folder
  • Start the Batch Server with socket debug
  • Configure your Eclipse to Remote Debug one BAR project
  • Start The batch with JConsole
  • Debug

Setup Batch Server (Done only ONCE)

  • 2) Add DEBUGGING options to Batch Server command line:
    • Edit <INSTALL_FOLDER>/bin/setenv.bat
    • Find JAVA_OPTS
    • Add at end :
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5006
    • In this example, we put 5006 as debug port (ensure this port is not used)
  • 3) Start Batch Server using:
    • Edit <INSTALL_FOLDER>/bin/console.bat
  • 4) This line will appear in shell:
    • Listening for transport dt_socket at address: 5006
  • 5) Connect to Batch Server using JConsole:
    • Click on <JDK_HOME>\bin\jconsole.exe
Image:UBS_jconsole.png
    • Enter in remote field, the URL that is contained in file:
      • <INSTALL_FOLDER>/config/jmx-service-url.txt
      • Example:
        • service:jmx:rmi://GIHQD134:5002/jndi/rmi://GIHQD134:5001/UBS600
    • Enter:
      • username : dev
      • password : dev

Setup Eclipse Launcher

In Eclipse Select Debug>Debug Configurations:

Image:Eclipse_rdebug_01.png

Fill in:

  • Project (your BAR project)
  • Host : localhost
  • Port : The port you configured in Batch Server in JAVA_OPTS, 5006 in our example:
Image:Eclipse_rdebug_02.png


Start your batch

In JConsole, select "MBeans" tab:

Image:UBS_MBeans.png

And unfold node hierarchy:

  • <BATCH_GROUP>/batch/runtime/<BATCH_NAME> for a classical Batch
  • <BATCH_GROUP>/batch/runtime/<BATCH_NAME>__@@__<LAUNCH_NAME> for a Batch with launch

Unfold "Operations" node and click on start

Image:UBS_MBeans_02.png

That's it

Now here is what you get:

  • You can put DEBUGGING points in your project code to debug your batch
Personal tools