MC2 Installation Certification
MC2 Installation Certification
The MC2 Installation Certification workflow executes the following tests to validate the installation has been completed successfully:
Direct API call (REST Source Extract) on all instances
Direct API call (SOAP Source Extract) on all instances
Get MC2 info on all instances
Get MC2 health
SOAP Source Extract in JSON
SOAP Source Extract in CSV - this requests validates that Pyruleservice is up and running
SOAP Source Extract in EAGLEML
MC2 workflow with 2 extracts
In order to enable the check for SOAP and REST requests thru IIS. add the following variables to the w_config_custom.inc:
w_eagle_web_url - IIS URL (e.g. https://test.eagleinvsys.com)
w_eagle_web_userid - user name (e.g. EAGLEADMIN)
w_eagle_web_password - encrypted user password (e.g. base64aes~HrekxfgbWM5EY/7CACbHyvE5ff2KDA==)
If these variables are not defined, the Installation Certification will skip all the tests related to requests thru IIS.
To run the MC2 Installation Certification, send the following RTR to the EagleMLWebService20 Message Center Web Service endpoint or use the Message Center Console to send the RTR to the eagle_ml-2-0_default_cm_control_message stream:
<EagleML xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="RunTaskRequest" xmlns="http://www.eagleinvsys.com/2011/EagleML-2-0" eaglemlVersion="2-0" xsi:schemaLocation="http://www.eagleinvsys.com/2011/EagleML-2-0 eagleml-main-2-0.xsd" eaglemlType="RunTaskRequest">
<header>
<messageId>B80GLD32JCCAYPHV</messageId>
<sentBy>http://www.eagleinvsys.com/</sentBy>
<sendTo>http://www.eagleinvsys.com/eagle_ml-2-0_default_cm_control_message</sendTo>
</header>
<taskIdentifier>
<correlationId>{GUID}</correlationId>
<businessTaskId>P5W6LXBDJ7KR6R5UM</businessTaskId>
</taskIdentifier>
<taskTypeEnum>EXECUTE</taskTypeEnum>
<synchronousExecution>yes</synchronousExecution>
<taskParameters>
<taskParameter>
<name>ActionType</name>
<dataType>S</dataType>
<value>EXECUTE</value>
</taskParameter>
<taskParameter>
<name>StreamName</name>
<dataType>S</dataType>
<value>eagle_ml-2-0_default_cm_mc2_healthcheck</value>
</taskParameter>
</taskParameters>
</EagleML>
The TSR should look similar to below:
<EagleML
eaglemlVersion="2-0"
eaglemlType="TaskStatusResponse"
xsi:type="eag1:TaskStatusResponse"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<eag1:header>
<eag1:messageId>B90HHG13FK6IUBLS</eag1:messageId>
<eag1:sentBy>http://www.eagleinvsys.com/</eag1:sentBy>
<eag1:sendTo>http://www.client.com/Eagle Control Messages</eag1:sendTo>
<eag1:creationTimestamp>2019-07-17T15:51:35-04:00</eag1:creationTimestamp>
</eag1:header>
<eag1:statusItem>
<eag1:taskIdentifier>
<eag1:correlationId correlationIdScheme="correlationIdScheme">B90HHG12GK7FKAJF</eag1:correlationId>
<eag1:businessTaskId correlationIdScheme="businessTaskIdScheme">P5W6LXBDJ7KR6R5UM</eag1:businessTaskId>
</eag1:taskIdentifier>
<eag1:status>SUCCESS</eag1:status>
<eag1:severityCode>0</eag1:severityCode>
<eag1:reason>
<eag1:additionalData>
<eag1:string>Direct API Call (REST Source Extract) Test on appserver.host1 Completed - Success.
Direct API Call (SOAP Source Extract) Test on appserver.host1 Completed - Success.
MC2 Info Output From appserver.host1: {"git":{"branch":"HEAD","commit":{"id":"728fedc","time":{"nano":0,"epochSecond":1563209487}}},"MC2 version info":{"MC2_version":"2019.8.0-SNAPSHOT"},"camel.name":"camel-1","camel.version":"2.23.1","camel.uptime":"3 hours 39 minutes","camel.uptimeMillis":13151167,"camel.status":"Started"}.
Direct API Call (REST Source Extract) Test on appserver.host2 Completed - Success.
Direct API Call (SOAP Source Extract) Test on appserver.host2 Completed - Success.
MC2 Info Output From appserver.host2: {"git":{"branch":"HEAD","commit":{"id":"728fedc","time":{"nano":0,"epochSecond":1563209487}}},"MC2 version info":{"MC2_version":"2019.8.0-SNAPSHOT"},"camel.name":"camel-1","camel.version":"2.23.1","camel.uptime":"3 hours 38 minutes","camel.uptimeMillis":13115553,"camel.status":"Started"}.
Get MC2 Health Test Completed - Success.
SOAP Source Extract in JSON Test Completed - Success.
SOAP Source Extract in CSV Test Completed - Success.
SOAP Source Extract in EAGLEML Test Completed - Success.
REST Source Extract in JSON Test Completed - Success.
REST Source Extract in CSV Test Completed - Success.
REST Source Extract in EAGLEML Test Completed - Success.
MC2 workflow with 2 extracts Test Completed - Success.</eag1:string>
</eag1:additionalData>
</eag1:reason>
</eag1:statusItem>
</EagleML>
Examples of TSR's with errors:
MC2 is down on one application server
<EagleML
eaglemlVersion="2-0"
eaglemlType="TaskStatusResponse"
xsi:type="eag1:TaskStatusResponse"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<eag1:header>
<eag1:messageId>B90HHG13FK6IUBLS</eag1:messageId>
<eag1:sentBy>http://www.eagleinvsys.com/</eag1:sentBy>
<eag1:sendTo>http://www.client.com/Eagle Control Messages</eag1:sendTo>
<eag1:creationTimestamp>2019-07-17T15:51:35-04:00</eag1:creationTimestamp>
</eag1:header>
<eag1:statusItem>
<eag1:taskIdentifier>
<eag1:correlationId correlationIdScheme="correlationIdScheme">B90HHG12GK7FKAJF</eag1:correlationId>
<eag1:businessTaskId correlationIdScheme="businessTaskIdScheme">P5W6LXBDJ7KR6R5UM</eag1:businessTaskId>
</eag1:taskIdentifier>
<eag1:status>FAILED</eag1:status>
<eag1:severityCode>1</eag1:severityCode>
<eag1:reason>
<eag1:reasonTypeEnum>ERROR</eag1:reasonTypeEnum>
<eag1:reasonCode>1</eag1:reasonCode>
<eag1:description>Failed to execute direct API call (REST Source Extract) on appserver.host1 (curl: (7) Failed to connect to appserver.host1 port 20427: Connection refused).
Failed to execute direct API call (SOAP Source Extract) on appserver.host1 (curl: (7) Failed to connect to appserver.host1 port 20421: Connection refused).
Failed to get MC2 info on appserver.host1 (curl: (7) Failed to connect to appserver.host1 port 20422: Connection refused).
Failed to get MC2 health (curl: (7) Failed to connect to localhost port 20422: Connection refused).</eag1:description>
</eag1:reason>
<eag1:reason>
<eag1:additionalData>
<eag1:string>Direct API Call (REST Source Extract) Test on appserver.host2 Completed - Success.
Direct API Call (SOAP Source Extract) Test on appserver.host2 Completed - Success.
MC2 Info Output From appserver.host2: {"git":{"branch":"HEAD","commit":{"id":"728fedc","time":{"nano":0,"epochSecond":1563209487}}},"MC2 version info":{"MC2_version":"2019.8.0-SNAPSHOT"},"camel.name":"camel-1","camel.version":"2.23.1","camel.uptime":"3 hours 38 minutes","camel.uptimeMillis":13115553,"camel.status":"Started"}.
SOAP Source Extract in JSON Test Completed - Success.
SOAP Source Extract in CSV Test Completed - Success.
SOAP Source Extract in EAGLEML Test Completed - Success.
REST Source Extract in JSON Test Completed - Success.
REST Source Extract in CSV Test Completed - Success.
REST Source Extract in EAGLEML Test Completed - Success.
MC2 workflow with 2 extracts Test Completed - Success.</eag1:string>
</eag1:additionalData>
</eag1:reason>
</eag1:statusItem>
</EagleML>
MC2 is down on all application servers
<EagleML
eaglemlVersion="2-0"
eaglemlType="TaskStatusResponse"
xsi:type="eag1:TaskStatusResponse"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<eag1:header>
<eag1:messageId>B90HHG13FK6IUBLS</eag1:messageId>
<eag1:sentBy>http://www.eagleinvsys.com/</eag1:sentBy>
<eag1:sendTo>http://www.client.com/Eagle Control Messages</eag1:sendTo>
<eag1:creationTimestamp>2019-07-17T15:51:35-04:00</eag1:creationTimestamp>
</eag1:header>
<eag1:statusItem>
<eag1:taskIdentifier>
<eag1:correlationId correlationIdScheme="correlationIdScheme">B90HHG12GK7FKAJF</eag1:correlationId>
<eag1:businessTaskId correlationIdScheme="businessTaskIdScheme">P5W6LXBDJ7KR6R5UM</eag1:businessTaskId>
</eag1:taskIdentifier>
<eag1:status>SUCCESS</eag1:status>
<eag1:severityCode>0</eag1:severityCode>
<eag1:reason>
<eag1:reasonTypeEnum>ERROR</eag1:reasonTypeEnum>
<eag1:reasonCode>1</eag1:reasonCode>
<eag1:description>Failed to get MC2 base port.
Failed to get MC2 base port.
Failed to execute SOAP Source Extract in JSON.
Failed to execute SOAP Source Extract in CSV.
Failed to execute SOAP Source Extract in EAGLEML.
Failed to execute REST Source Extract in JSON.
Failed to execute REST Source Extract in CSV.
Failed to execute REST Source Extract in EAGLEML.
Failed to execute MC2 workflow with 2 extracts.</eag1:description>
</eag1:reason>
</eag1:statusItem>
</EagleML>