ALERT: Some images may not load properly within the Knowledge Base Article. If you see a broken image, please right-click and select 'Open image in a new tab'. We apologize for this inconvenience.

AWA: Can I disable the messenger information in the report?

book

Article ID: 145868

calendar_today

Updated On:

Products

CA Automic Workload Automation - Automation Engine CA Automic Workload Automation - Automation Engine

Issue/Introduction

In every report, there are lines similar to:

Program 'UC4 Job Messenger' version '12.3.0+build.1560758095525' started
UCMDJP: *********************************************************************
UCMDJP: ** JOB 0001078016 (ProcID:0000001116) START AT 25.02.2020/10:33:49 **
UCMDJP: **                                    UTC TIME 25.02.2020/18:33:49 **
UCMDJP: ** --------------------------------------------------------------- **
UCMDJP: **                                    USED:      0.000 CPU         **
UCMDJP: *********************************************************************
Program 'UC4 Job Messenger' version '12.3.0+build.1560758095525' terminated normally

At both the beginning and end of every JOBS. Is it possible to disable this output? What purpose does it serve?

Cause

This is as designed, the messenger serves as a backup process to provide the Automation Engine status in situations where the Agent is restarted.

Environment

Release : 12.2

Component : AUTOMATION ENGINE

Resolution

Ultimately, the messenger information isn't necessary for 'standard' use. However, in any instance where an agent restarts or there is abnormal occurrence, the absence of the report information can cause more jobs to go into an ENDED_LOST status.

The mechanisms/process is as such (this is an example on Unix/Linux):

1.) Agent starts a job, it starts it as a child process.
-- When that child process completed, it transmits to the parent process via OS-level SIGCHLD. This gives the Agent the exit code. In this case, if an agent has been restarted, it will not be able to get the SIGCHLD signal.

2.) The end of any Unix job is a messenger call. If the Agent is active, it gets the end message and exit code. This allows the system to get values in situations not available via SIGCHLD in 1.

3.) The Agent frequently (60 seconds) polls all PID's for jobs it has started. Whenever it detects a PID is no longer active and the Agent hasn't been informed of status via 1 or 2, the agent attempts to recover end status by searching the report of the job for the valid end messenger statement.

If 1,2, and 3 all fail, the job goes into ENDED_LOST. This also stops all postprocess commands (as no report is available).

So, if the output is suppressed, option 3 is no longer present. If the messenger is disabled, options 2 and 3 are no longer present. 

Due to this, the recommendation would be to not alter the behavior of the messenger.