protected void handleException(Exception ex) { String jobName = plannedJob.getJobSpec().getName(); LOG.error(ex); setExceptionMessage(ex.getMessage()); JobSpec spec = plannedJob.getJobSpec(); if (spec.getStatusEmail() != null && spec.getStatusEmail().size() > 0 && !spec.getStatusEmail().get(0).equals("")) { for (String statusEmail : spec.getStatusEmail()) { MailInfo errMailInfo = new MailInfo(mailInfo.from, mailInfo.fromName, statusEmail, String.format("%s creator", jobName)); AgentConsumer.sendErrorReport(spec, replacedCode, ex, jobId, hostname, errMailInfo, session, attemptNumber); } } else { AgentConsumer.sendErrorReport(spec, replacedCode, ex, jobId, hostname, mailInfo, session, attemptNumber); } reporting.mark("chronos.query." + jobName + "." + "failed"); setStatus(1); }
@Before public void setUp() throws Exception { reporting = new NoReporting(); dao = new H2TestJobDaoImpl(); dao.setDrivers(drivers); dao.init(); PowerMockito.mockStatic(Utils.class); when(Utils.getCurrentTime()) .thenReturn(new DateTime(0).withZone(DateTimeZone.UTC)); consumer = new AgentConsumer(dao, reporting, "testing.huffpo.com", new MailInfo("", "", "", ""), Session.getDefaultInstance(new Properties()), drivers, numOfConcurrentJobs, numOfConcurrentReruns, maxReruns, 1, 1); consumer.SLEEP_FOR = 1; AgentConsumer.setShouldSendErrorReports(false); }
@Before public void setUp() throws Exception { reporting = new NoReporting(); dao = new H2TestJobDaoImpl(); dao.setDrivers(drivers); dao.init(); PowerMockito.mockStatic(Utils.class); when(Utils.getCurrentTime()) .thenReturn(new DateTime(0).withZone(DateTimeZone.UTC)); consumer = new AgentConsumer(dao, reporting, "testing.huffpo.com", new MailInfo("", "", "", ""), Session.getDefaultInstance(new Properties()), drivers, numOfConcurrentJobs, numOfConcurrentReruns, maxReruns, 0, 1); consumer.writeReportToLocal(folder.getRoot().getPath()); consumer.SLEEP_FOR = 20; AgentConsumer.setShouldSendErrorReports(false); }
@Before public void setUp() throws Exception { reporting = new NoReporting(); dao = new H2TestJobDaoImpl(); dao.setDrivers(drivers); dao.init(); PowerMockito.mockStatic(Utils.class); when(Utils.getCurrentTime()) .thenReturn(new DateTime(0).withZone(DateTimeZone.UTC)); agentDriver = getMockedDriver(dao, reporting); agentDriver.SLEEP_FOR = 10; consumer = new AgentConsumer(dao, reporting, "testing.huffpo.com", new MailInfo("", "", "", ""), Session.getDefaultInstance(new Properties()), drivers, numOfConcurrentJobs, numOfConcurrentReruns, maxReruns, 60, 1); AgentConsumer.setShouldSendErrorReports(false); consumer.SLEEP_FOR = 1; }
@Ignore public void testSendErrorReport() { MailInfo testInfo = new MailInfo("", "", "my.test.email@huffingtonpost.com", ""); JobSpec aJob = new JobSpec(); aJob.setName("A Unit Test Job"); aJob.setCode("SELECT * FROM NOT_A_TABLE" + "\r\nWHERE DT >= 0;"); Exception ex = new Exception("SQL error, blah blah blah..."); AgentConsumer.setShouldSendErrorReports(true); for (int i = 1; i < 6; i++) { AgentConsumer.sendErrorReport(aJob, aJob.getCode(), ex, 4L, "testing.hostname.com", testInfo, Session.getDefaultInstance(null, null), i); } assertTrue(true); }