You can make a BenchMark profile of a batch job in two ways:
1. | In the application, run USoft BenchMark and start the Profiler. Then start the batch job, for example by executing the ActionStartJob() method. After the job has finished, stop and save the profile. |
2. | When executing a job from the Batch Runner, you can add an additional task at the beginning of the job to start the profile using |
INVOKE RulesEngine.RuleProfilerStart
|
At the end of the job, you can add a task that stops and saves the profile.
The first solution does not require any change in the job definition. However, sometimes a profile needs to be made in Batch Runner, for example when the job is running on UNIX.
You can do this without changing the job definition of the job to be profiled: Create a new, generic job that only start the profiler, starts another batch job, and stops the profiler. Provide this new batch job with an input parameter named 'job name', and add one SQL task with the following four SQL statements:
INVOKE RulesEngine.RuleProfilerStart
INVOKE RulesEngine.RuleProfilerDescription
WITH
SELECT 'Profiling job '|| jobname
FROM PROFILEBATCH_INPUTPAR
INVOKE BatchRunner.RunJob
WITH
SELECT jobname "JobName"
FROM PROFILEBATCH_INPUTPAR
INVOKE RulesEngine.RuleProfilerStop
|
Now, when a job needs to be profiled, this generic job can be started with parameter 'jobname', and then the requested job can be profiled.
For more information, refer to USoft BenchMark help, especially: "How to Make a Profile using the Stand-alone Profiler from Within Another Application".
|