|
@@ -23,6 +23,7 @@ import java.util.Collections;
|
|
|
import java.util.EnumSet;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.Iterator;
|
|
|
+import java.util.List;
|
|
|
import java.util.Map;
|
|
|
import java.util.Timer;
|
|
|
import java.util.TimerTask;
|
|
@@ -63,6 +64,7 @@ import org.apache.hadoop.service.AbstractService;
|
|
|
import org.apache.hadoop.util.StringUtils;
|
|
|
import org.apache.hadoop.yarn.api.records.timeline.TimelineEntity;
|
|
|
import org.apache.hadoop.yarn.api.records.timeline.TimelineEvent;
|
|
|
+import org.apache.hadoop.yarn.api.records.timeline.TimelinePutResponse;
|
|
|
import org.apache.hadoop.yarn.client.api.TimelineClient;
|
|
|
import org.apache.hadoop.yarn.conf.YarnConfiguration;
|
|
|
import org.apache.hadoop.yarn.event.EventHandler;
|
|
@@ -1012,7 +1014,21 @@ public class JobHistoryEventHandler extends AbstractService
|
|
|
}
|
|
|
|
|
|
try {
|
|
|
- timelineClient.putEntities(tEntity);
|
|
|
+ TimelinePutResponse response = timelineClient.putEntities(tEntity);
|
|
|
+ List<TimelinePutResponse.TimelinePutError> errors = response.getErrors();
|
|
|
+ if (errors.size() == 0) {
|
|
|
+ if (LOG.isDebugEnabled()) {
|
|
|
+ LOG.debug("Timeline entities are successfully put in event " + event
|
|
|
+ .getEventType());
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ for (TimelinePutResponse.TimelinePutError error : errors) {
|
|
|
+ LOG.error(
|
|
|
+ "Error when publishing entity [" + error.getEntityType() + ","
|
|
|
+ + error.getEntityId() + "], server side error code: "
|
|
|
+ + error.getErrorCode());
|
|
|
+ }
|
|
|
+ }
|
|
|
} catch (IOException ex) {
|
|
|
LOG.error("Error putting entity " + tEntity.getEntityId() + " to Timeline"
|
|
|
+ "Server", ex);
|