List of usage examples for org.apache.hadoop.yarn.api.records.timeline TimelineEntityGroupId newInstance
public static TimelineEntityGroupId newInstance(ApplicationId applicationId, String id)
From source file:org.apache.spark.deploy.history.yarn.plugin.SparkATSPlugin.java
License:Apache License
private Set<TimelineEntityGroupId> toGroupId(ApplicationId applicationId) { TimelineEntityGroupId groupId = TimelineEntityGroupId.newInstance(applicationId, applicationId.toString()); LOG.debug("mapped {} to {}, ", applicationId, groupId); Set<TimelineEntityGroupId> result = new HashSet<>(); result.add(groupId);/*from w ww . j ava 2 s . c om*/ return result; }
From source file:org.apache.tez.dag.history.logging.ats.ATSV15HistoryLoggingService.java
License:Apache License
@VisibleForTesting public TimelineEntityGroupId getGroupId(DAGHistoryEvent event) { // Changing this function will impact TimelineCachePluginImpl and should be done very // carefully to account for handling different versions of Tez switch (event.getHistoryEvent().getEventType()) { case DAG_SUBMITTED: case DAG_INITIALIZED: case DAG_STARTED: case DAG_FINISHED: case DAG_KILL_REQUEST: case VERTEX_INITIALIZED: case VERTEX_STARTED: case VERTEX_CONFIGURE_DONE: case VERTEX_FINISHED: case TASK_STARTED: case TASK_FINISHED: case TASK_ATTEMPT_STARTED: case TASK_ATTEMPT_FINISHED: case DAG_COMMIT_STARTED: case VERTEX_COMMIT_STARTED: case VERTEX_GROUP_COMMIT_STARTED: case VERTEX_GROUP_COMMIT_FINISHED: case DAG_RECOVERED: return TimelineEntityGroupId.newInstance(event.getDagID().getApplicationId(), event.getDagID().toString()); case APP_LAUNCHED: case AM_LAUNCHED: case AM_STARTED: case CONTAINER_LAUNCHED: case CONTAINER_STOPPED: return TimelineEntityGroupId.newInstance(appContext.getApplicationID(), appContext.getApplicationID().toString()); }/*from w ww . j a va2 s.c o m*/ return null; }
From source file:org.apache.tez.dag.history.logging.ats.TestATSV15HistoryLoggingService.java
License:Apache License
@Test(timeout = 2000) public void testDAGGroupingDefault() throws Exception { ATSV15HistoryLoggingService service = createService(-1); service.start();/*from ww w . ja v a 2 s .c o m*/ TezDAGID dagId1 = TezDAGID.getInstance(appId, 0); for (DAGHistoryEvent event : makeHistoryEvents(dagId1, service)) { service.handle(event); } while (!service.eventQueue.isEmpty()) { Thread.sleep(100); } assertEquals(2, timelineClient.entityLog.size()); List<TimelineEntity> amEvents = timelineClient.entityLog .get(TimelineEntityGroupId.newInstance(appId, appId.toString())); assertNotNull(amEvents); assertEquals(1, amEvents.size()); List<TimelineEntity> nonGroupedDagEvents = timelineClient.entityLog .get(TimelineEntityGroupId.newInstance(appId, dagId1.toString())); assertNotNull(nonGroupedDagEvents); assertEquals(4, nonGroupedDagEvents.size()); service.stop(); }
From source file:org.apache.tez.dag.history.logging.ats.TestATSV15HistoryLoggingService.java
License:Apache License
@Test(timeout = 2000) public void testDAGGroupingDisabled() throws Exception { ATSV15HistoryLoggingService service = createService(1); service.start();// w ww .ja v a 2 s . co m TezDAGID dagId1 = TezDAGID.getInstance(appId, 0); for (DAGHistoryEvent event : makeHistoryEvents(dagId1, service)) { service.handle(event); } while (!service.eventQueue.isEmpty()) { Thread.sleep(100); } assertEquals(2, timelineClient.entityLog.size()); List<TimelineEntity> amEvents = timelineClient.entityLog .get(TimelineEntityGroupId.newInstance(appId, appId.toString())); assertNotNull(amEvents); assertEquals(1, amEvents.size()); List<TimelineEntity> nonGroupedDagEvents = timelineClient.entityLog .get(TimelineEntityGroupId.newInstance(appId, dagId1.toString())); assertNotNull(nonGroupedDagEvents); assertEquals(4, nonGroupedDagEvents.size()); service.stop(); }
From source file:org.apache.tez.dag.history.logging.ats.TestATSV15HistoryLoggingService.java
License:Apache License
@Test(timeout = 2000) public void testDAGGroupingGroupingEnabled() throws Exception { int numDagsPerGroup = 100; ATSV15HistoryLoggingService service = createService(numDagsPerGroup); service.start();//from w w w . j av a 2 s .c o m TezDAGID dagId1 = TezDAGID.getInstance(appId, 1); for (DAGHistoryEvent event : makeHistoryEvents(dagId1, service)) { service.handle(event); } TezDAGID dagId2 = TezDAGID.getInstance(appId, numDagsPerGroup); for (DAGHistoryEvent event : makeHistoryEvents(dagId2, service)) { service.handle(event); } TezDAGID dagId3 = TezDAGID.getInstance(appId, numDagsPerGroup + 1); for (DAGHistoryEvent event : makeHistoryEvents(dagId3, service)) { service.handle(event); } while (!service.eventQueue.isEmpty()) { Thread.sleep(100); } assertEquals(dagId1.getGroupId(numDagsPerGroup), dagId2.getGroupId(numDagsPerGroup)); assertNotEquals(dagId2.getGroupId(numDagsPerGroup), dagId3.getGroupId(numDagsPerGroup)); assertEquals(3, timelineClient.entityLog.size()); List<TimelineEntity> amEvents = timelineClient.entityLog .get(TimelineEntityGroupId.newInstance(appId, appId.toString())); assertNotNull(amEvents); assertEquals(3, amEvents.size()); List<TimelineEntity> nonGroupedDagEvents = timelineClient.entityLog .get(TimelineEntityGroupId.newInstance(appId, dagId1.toString())); assertNull(nonGroupedDagEvents); List<TimelineEntity> groupedDagEvents = timelineClient.entityLog .get(TimelineEntityGroupId.newInstance(appId, dagId1.getGroupId(numDagsPerGroup))); assertNotNull(groupedDagEvents); assertEquals(8, groupedDagEvents.size()); nonGroupedDagEvents = timelineClient.entityLog .get(TimelineEntityGroupId.newInstance(appId, dagId3.toString())); assertNull(nonGroupedDagEvents); groupedDagEvents = timelineClient.entityLog .get(TimelineEntityGroupId.newInstance(appId, dagId3.getGroupId(numDagsPerGroup))); assertNotNull(groupedDagEvents); assertEquals(4, groupedDagEvents.size()); service.stop(); }
From source file:org.apache.tez.dag.history.logging.ats.TimelineCachePluginImpl.java
License:Apache License
private TimelineEntityGroupId convertToTimelineEntityGroupId(String entityType, String entityId) { if (entityType == null || entityType.isEmpty() || entityId == null || entityId.isEmpty()) { return null; }//from w w w . ja va 2 s.com if (entityType.equals(EntityTypes.TEZ_DAG_ID.name())) { TezDAGID dagId = TezDAGID.fromString(entityId); if (dagId != null) { return TimelineEntityGroupId.newInstance(dagId.getApplicationId(), dagId.toString()); } } else if (entityType.equals(EntityTypes.TEZ_VERTEX_ID.name())) { TezVertexID vertexID = TezVertexID.fromString(entityId); if (vertexID != null) { return TimelineEntityGroupId.newInstance(vertexID.getDAGId().getApplicationId(), vertexID.getDAGId().toString()); } } else if (entityType.equals(EntityTypes.TEZ_TASK_ID.name())) { TezTaskID taskID = TezTaskID.fromString(entityId); if (taskID != null) { return TimelineEntityGroupId.newInstance(taskID.getVertexID().getDAGId().getApplicationId(), taskID.getVertexID().getDAGId().toString()); } } else if (entityType.equals(EntityTypes.TEZ_TASK_ATTEMPT_ID.name())) { TezTaskAttemptID taskAttemptID = TezTaskAttemptID.fromString(entityId); if (taskAttemptID != null) { return TimelineEntityGroupId.newInstance( taskAttemptID.getTaskID().getVertexID().getDAGId().getApplicationId(), taskAttemptID.getTaskID().getVertexID().getDAGId().toString()); } } else if (entityType.equals(EntityTypes.TEZ_CONTAINER_ID.name())) { String cId = entityId; if (cId.startsWith("tez_")) { cId = cId.substring(4); } ContainerId containerId = ContainerId.fromString(cId); if (containerId != null) { return TimelineEntityGroupId.newInstance(containerId.getApplicationAttemptId().getApplicationId(), containerId.getApplicationAttemptId().getApplicationId().toString()); } } return null; }
From source file:org.apache.tez.dag.history.logging.ats.TimelineCachePluginImpl.java
License:Apache License
@Override public Set<TimelineEntityGroupId> getTimelineEntityGroupId(String entityType, NameValuePair primaryFilter, Collection<NameValuePair> secondaryFilters) { if (!knownEntityTypes.contains(entityType) || primaryFilter == null || !knownEntityTypes.contains(primaryFilter.getName()) || summaryEntityTypes.contains(entityType)) { return null; }/*from w w w . ja v a 2s .com*/ TimelineEntityGroupId groupId = convertToTimelineEntityGroupId(primaryFilter.getName(), primaryFilter.getValue().toString()); if (groupId != null) { TimelineEntityGroupId appGroupId = TimelineEntityGroupId.newInstance(groupId.getApplicationId(), groupId.getApplicationId().toString()); return Sets.newHashSet(groupId, appGroupId); } return null; }
From source file:org.apache.tez.dag.history.logging.ats.TimelineCachePluginImpl.java
License:Apache License
@Override public Set<TimelineEntityGroupId> getTimelineEntityGroupId(String entityId, String entityType) { if (!knownEntityTypes.contains(entityType) || summaryEntityTypes.contains(entityType)) { return null; }//from ww w .jav a 2 s . co m TimelineEntityGroupId groupId = convertToTimelineEntityGroupId(entityType, entityId); if (groupId != null) { TimelineEntityGroupId appGroupId = TimelineEntityGroupId.newInstance(groupId.getApplicationId(), groupId.getApplicationId().toString()); return Sets.newHashSet(groupId, appGroupId); } return null; }
From source file:org.apache.tez.dag.history.logging.ats.TimelineCachePluginImpl.java
License:Apache License
@Override public Set<TimelineEntityGroupId> getTimelineEntityGroupId(String entityType, SortedSet<String> entityIds, Set<String> eventTypes) { if (!knownEntityTypes.contains(entityType) || summaryEntityTypes.contains(entityType) || entityIds == null || entityIds.isEmpty()) {/*from ww w.java 2 s .c om*/ return null; } Set<TimelineEntityGroupId> groupIds = new HashSet<TimelineEntityGroupId>(); Set<ApplicationId> appIdSet = new HashSet<ApplicationId>(); for (String entityId : entityIds) { TimelineEntityGroupId groupId = convertToTimelineEntityGroupId(entityType, entityId); if (groupId != null) { groupIds.add(groupId); appIdSet.add(groupId.getApplicationId()); } } for (ApplicationId appId : appIdSet) { groupIds.add(TimelineEntityGroupId.newInstance(appId, appId.toString())); } return groupIds; }