Search in sources :

Example 1 with ExecutorSummary

use of com.linkedin.drelephant.spark.fetchers.statusapiv1.ExecutorSummary in project dr-elephant by linkedin.

the class InfoExtractorTest method testLoadInfoSpark.

@Test
public void testLoadInfoSpark() {
    final String JOB_DEF_URL = "https://grid.example.com:9000/manager?project=project-name&flow=flow-name&job=job-name";
    final String JOB_EXEC_URL = "https://grid.example.com:9000/executor?execid=123456&job=job-name&attempt=0";
    final String FLOW_DEF_URL = "https://grid.example.com:9000/manager?project=project-name&flow=flow-name";
    final String FLOW_EXEC_URL = "https://grid.example.com:9000/executor?execid=123456";
    final String JAVA_EXTRA_OPTIONS = "spark.driver.extraJavaOptions";
    Map<String, String> properties = new HashMap<String, String>();
    properties = properties.$plus(new Tuple2<String, String>(JAVA_EXTRA_OPTIONS, "-Dazkaban.link.workflow.url=" + FLOW_DEF_URL + " -Dazkaban.link.job.url=" + JOB_DEF_URL + " -Dazkaban.link.execution.url=" + FLOW_EXEC_URL + " -Dazkaban.link.attempt.url=" + JOB_EXEC_URL));
    AppResult result = new AppResult();
    HadoopApplicationData data = new SparkApplicationData("application_5678", properties, new ApplicationInfoImpl("", "", new Vector<ApplicationAttemptInfoImpl>(0, 1, 0)), new Vector<JobData>(0, 1, 0), new Vector<StageData>(0, 1, 0), new Vector<ExecutorSummary>(0, 1, 0));
    InfoExtractor.loadInfo(result, data);
    assertTrue(result.jobDefId.equals(JOB_DEF_URL));
    assertTrue(result.jobExecId.equals(JOB_EXEC_URL));
    assertTrue(result.flowDefId.equals(FLOW_DEF_URL));
    assertTrue(result.flowExecId.equals(FLOW_EXEC_URL));
}
Also used : HashMap(scala.collection.immutable.HashMap) HadoopApplicationData(com.linkedin.drelephant.analysis.HadoopApplicationData) SparkApplicationData(com.linkedin.drelephant.spark.data.SparkApplicationData) ApplicationInfoImpl(com.linkedin.drelephant.spark.fetchers.statusapiv1.ApplicationInfoImpl) AppResult(models.AppResult) StageData(com.linkedin.drelephant.spark.fetchers.statusapiv1.StageData) ExecutorSummary(com.linkedin.drelephant.spark.fetchers.statusapiv1.ExecutorSummary) Tuple2(scala.Tuple2) JobData(com.linkedin.drelephant.spark.fetchers.statusapiv1.JobData) Vector(scala.collection.immutable.Vector) Test(org.junit.Test)

Example 2 with ExecutorSummary

use of com.linkedin.drelephant.spark.fetchers.statusapiv1.ExecutorSummary in project dr-elephant by linkedin.

the class InfoExtractorTest method testLoadInfoSparkNoConfig.

@Test
public void testLoadInfoSparkNoConfig() {
    Map<String, String> properties = new HashMap<String, String>();
    AppResult result = new AppResult();
    HadoopApplicationData data = new SparkApplicationData("application_5678", properties, new ApplicationInfoImpl("", "", new Vector<ApplicationAttemptInfoImpl>(0, 1, 0)), new Vector<JobData>(0, 1, 0), new Vector<StageData>(0, 1, 0), new Vector<ExecutorSummary>(0, 1, 0));
    // test to make sure loadInfo does not throw exception if properties are not defined
    InfoExtractor.loadInfo(result, data);
    assertTrue(result.jobDefId.isEmpty());
    assertTrue(result.jobExecId.isEmpty());
    assertTrue(result.flowDefId.isEmpty());
    assertTrue(result.flowExecId.isEmpty());
}
Also used : HashMap(scala.collection.immutable.HashMap) HadoopApplicationData(com.linkedin.drelephant.analysis.HadoopApplicationData) SparkApplicationData(com.linkedin.drelephant.spark.data.SparkApplicationData) ApplicationInfoImpl(com.linkedin.drelephant.spark.fetchers.statusapiv1.ApplicationInfoImpl) AppResult(models.AppResult) StageData(com.linkedin.drelephant.spark.fetchers.statusapiv1.StageData) ExecutorSummary(com.linkedin.drelephant.spark.fetchers.statusapiv1.ExecutorSummary) JobData(com.linkedin.drelephant.spark.fetchers.statusapiv1.JobData) Vector(scala.collection.immutable.Vector) Test(org.junit.Test)

Aggregations

HadoopApplicationData (com.linkedin.drelephant.analysis.HadoopApplicationData)2 SparkApplicationData (com.linkedin.drelephant.spark.data.SparkApplicationData)2 ApplicationInfoImpl (com.linkedin.drelephant.spark.fetchers.statusapiv1.ApplicationInfoImpl)2 ExecutorSummary (com.linkedin.drelephant.spark.fetchers.statusapiv1.ExecutorSummary)2 JobData (com.linkedin.drelephant.spark.fetchers.statusapiv1.JobData)2 StageData (com.linkedin.drelephant.spark.fetchers.statusapiv1.StageData)2 AppResult (models.AppResult)2 Test (org.junit.Test)2 HashMap (scala.collection.immutable.HashMap)2 Vector (scala.collection.immutable.Vector)2 Tuple2 (scala.Tuple2)1