WAS-Get Application Status Fails: Log message must be string

Document ID : KB000072542
Last Modified Date : 02/03/2018
Show Technical Document Details
Issue:
The following WebSphere action returns as failed: WAS - Get Application Status 
The error it returns (that matters) is:
'DEBUG', '<id 1>', 'return values data struct: [None, None, "<type \'exceptions.TypeError\'> : Log message must be string:Raw target mappings: [(cells/....
 
Environment:
CA Release Automation version 6.x
WebSphere Application Server
CA Release Automation WebSphere Application Server Action Pack version lower than: 10.12.1802.1 (i.e. 10.11.1507.1)
Cause:
A log message was not properly handled by action pack. 
Resolution:
Apply CA Release Automation WebSphere Application Server Action Pack version: 10.12.1802.1
Additional Information:
If you would like to test the updated action pack, before upgrading the action pack used by CA Release Automation, you can follow these steps:

1. Run a infinite loop to copy the was_scripts to a temporary location while you test the action. 
Example: On linux you could run: while true; do if [ -d /path/to/CA/ReleaseAutomationAgent/./files_temp/was_scripts ]; then cp -rp /path/to/CA/ReleaseAutomationAgent/./files_temp/was_scripts /tmp/; fi; done 

2. If step 1 was done properly and the error is related to an error while the action is interacting with WebSphere then you should have a was_scripts folder in /tmp with some .py files. In one of the .py files there are:
  • statements doing some imports
  • statement pointing to the CA Release Automation WebSphere Action Pack jar file: sys.path.append('/home/noliouser/CA/ReleaseAutomationAgent/nolio-websphere-actions_v2-10.11.1507.1.jar')
  • statement that initiates the statements used to carry out the action.
3. If the .py files are available then you should be able to reproduce the same error that the action returns by running it manually. Example: 
sudo -u wsadmin /opt/IBM/WebSphere/AppServer/bin/wsadmin.sh -port 8879 -lang jython -f /tmp/was_scripts/was_585154.py -username wsadmin -password ****** -host wasServerName -conntype SOAP

4. If running the command manually results in the same error as the action then you can test whether or not the updated action pack solves the problem by:
  • Downloading the updated WebSphere Action Pack from here: ftp://ftp.ca.com/pub/dpm/ReleaseAutomationActions/ActionPacks/nolio-websphere-actions_v2/
  • Copy the updated action pack's jar file to a temporary location (not in the Release Automation install directory). For example, copy it to /tmp.
  • Update the /tmp/was_scripts/was_585154.py statement that points to the jar and redirect it to the updated jar. 
  • Run the command manually again. 
  • If the problem is solved then upgrade the action pack used by CA Release Automation.