This API call provides an indication of the status of ExtraView. It is often used on a server remote to the ExtraView installation and called every few minutes to check that the ExtraView server is functioning correctly. If the call does not get a valid return, an alarm or notification may then be sent to an administrator.

As the getHeartbeat call utilizes the API, care must be taken when the site is used with two factor authorization enabled via the ENABLE_TWO_FACTOR_AUTH behavior setting.  The user account used to perform the request must be set to bypass 2FA, via its setting in the user account maintenance screen.  This is required as there is no way in which an API call can enter the required second factor,

Input

Class Name Type Required Details
GetHeartbeatRequest userId String Yes The callers user name
GetHeartbeatRequest password String Yes The callers password

Output

Class Name Type Required Details
GetHeartbeatResponse success boolean Yes True is succeeded False if failed
GetHeartbeatResponse returnCode String No See Appendix for details
GetHeartbeatResponse returnMessage String No Human readable message
GetHeartbeatResponse evStatus String Yes ExtraView System Status
GetHeartbeatResponse dbStatus String Yes ExtraView Database Status
GetHeartbeatResponse dbDate Date Yes The current date in the Database
GetHeartbeatResponse freeMemory String Yes Free memory on application server
GetHeartbeatResponse totalMemory Integer Yes Total memory on application server
GetHeartbeatResponse serviceCount Integer Yes The current number of Extraview sessions
GetHeartbeatResponse executeTime Long Yes The time it took to execute this call
GetHeartbeatResponse tasks Array of TaskInfo No The information on tasks configured on the node of the server where the service is executed
TaskInfo nodeId String No The name of the node hosting the service
TaskInfo startOption String No
TaskInfo taskState String No START_NOW, STOP_NOW, START_ON_BOOT, or none
TaskInfo pollInterval String No The minimum number of seconds between polled executions
TaskInfo threads Array of ThreadInfo No
ThreadInfo threadState String No Running or stopped
ThreadInfo secsSinceExecution Long No The number of seconds since the task was most recently scheduled to run
ThreadInfo priority Long No The priority of the thread (using Java thread priority values). This may not appear in the output

Example

public static void testGetHeartbeat(EVSystemServiceStub stub) {
try {
GetHeartbeatDocument reqEnvelope = GetHeartbeatDocument.Factory.newInstance();
GetHeartbeatRequest request = reqEnvelope.addNewGetHeartbeat().addNewParam0();
request.setUserId(ServiceClientHelper.ADMIN_USER_ID);
request.setPassword(ServiceClientHelper.ADMIN_PASSWORD);
GetHeartbeatResponseDocument resEnvelope = stub.getHeartbeat(reqEnvelope);
GetHeartbeatResponse response = resEnvelope.getGetHeartbeatResponse().getReturn();
if (response.getSuccess()) {
System.out.println("success: [" + response.getReturnCode() + "] : " +
response.getReturnMessage());
} else {
System.out.println("failure: [" + response.getReturnCode() + "] : " +
response.getReturnMessage());
}
} catch (Exception e) {
e.printStackTrace();
System.err.println("nnn");
}
}