use of alluxio.hub.proto.AlluxioProcessStatus in project alluxio by Alluxio.
the class AgentProcessContext method heartbeat.
private void heartbeat() {
try {
NodeStatus ps = new NodeStatus();
List<AlluxioProcessStatus> alluxioStatus = mProcs.keySet().stream().map(t -> {
try {
return ps.getProcessStatus(t);
} catch (IOException e) {
LogUtils.warnWithException(LOG, "Failed to get process status for {}", t, e);
return AlluxioProcessStatus.newBuilder().setNodeType(t).setState(ProcessState.UNKNOWN).setPid(-1).build();
}
}).collect(Collectors.toList());
AlluxioNodeStatus s = AlluxioNodeStatus.newBuilder().setHostname(NetworkAddressUtils.getConnectHost(NetworkAddressUtils.ServiceType.HUB_AGENT_RPC, mConf)).addAllProcess(alluxioStatus).build();
AgentHeartbeatRequest request = AgentHeartbeatRequest.newBuilder().setHubNode(getNodeAddress()).setAlluxioStatus(s).build();
mClient.get().agentHeartbeat(request);
} catch (Throwable t) {
LogUtils.warnWithException(LOG, "Failed to send agent heartbeat", t);
}
}
Aggregations