private void assertLogQueryExecutes(LogQuery logQuery, String testName, List<String> exceptionList) { try { Iterable<RequestLogs> iterable = service.fetch(logQuery); iterable.iterator().hasNext(); } catch (Exception e) { exceptionList.add(testName + ": " + e.toString()); } }
private void executeQuery(LogQuery logQuery) { LogService service = LogServiceFactory.getLogService(); Iterator<RequestLogs> iterator = service.fetch(logQuery).iterator(); }
protected Iterator<RequestLogs> findLogLine(LogQuery query, int retryMax) { LogService service = LogServiceFactory.getLogService(); Iterator<RequestLogs> iterator = null; for (int i = 0; i <= retryMax; i++) { iterator = service.fetch(query).iterator(); if (iterator.hasNext()) { return iterator; } pause(1500); } return iterator; }
protected AppLogLine findLogLine(String text, LogQuery logQuery) { Iterable<RequestLogs> iterable = LogServiceFactory.getLogService().fetch(logQuery); for (RequestLogs logs : iterable) { for (AppLogLine logLine : logs.getAppLogLines()) { if (logLine.getLogMessage().contains(text)) { return logLine; } } } return null; }
@Test @InSequence(20) public void testRequestIds() throws Exception { LogService service = LogServiceFactory.getLogService(); LogQuery logQuery = new LogQuery().requestIds(Arrays.asList(request1Id, request2Id)); Iterator<RequestLogs> iterator = service.fetch(logQuery).iterator(); assertEquals(request1Id, iterator.next().getRequestId()); assertEquals(request2Id, iterator.next().getRequestId()); assertFalse(iterator.hasNext()); logQuery = new LogQuery().requestIds(Arrays.asList(request2Id)); iterator = service.fetch(logQuery).iterator(); assertEquals(request2Id, iterator.next().getRequestId()); assertFalse(iterator.hasNext()); }
@Test public void testLogLinesAreReturnedOnlyWhenRequested() { Logger log = Logger.getLogger(LogServiceTest.class.getName()); log.info("hello_testLogLinesAreReturnedOnlyWhenRequested"); flush(log); for (RequestLogs logs : service.fetch(new LogQuery().includeIncomplete(true).includeAppLogs(false))) { assertTrue("AppLogLines should be empty", logs.getAppLogLines().isEmpty()); } for (RequestLogs logs : service.fetch(new LogQuery().includeIncomplete(true).includeAppLogs(true))) { if (!logs.getAppLogLines().isEmpty()) { // if we've found at least one appLogLine, the test passed return; } } fail("Should have found at least one appLogLine, but didn't find any"); }
public Iterable<RequestLogs> queryForLogs(long logRangeStartMs, long logRangeEndMs, LogsExportConfiguration exportConfig, LogsFieldExporterSet exporterSet) { LogService ls = LogServiceFactory.getLogService(); LogQuery lq = new LogQuery(); lq = lq.startTimeMillis(logRangeStartMs) .endTimeMillis(logRangeEndMs) .includeAppLogs(true); if (exportConfig.getLogLevel() != null) { lq = lq.minLogLevel(exportConfig.getLogLevel()); } List<Version> appVersions = exporterSet.applicationVersionsToExport(); if (appVersions != null && appVersions.size() > 0) { lq = lq.versions(appVersions); } Iterable<RequestLogs> logs = ls.fetch(lq); return logs; } }
@Test @InSequence(20) public void testGetBatchSize() throws Exception { long size = 1; LogService service = LogServiceFactory.getLogService(); LogQuery logQuery = new LogQuery().requestIds(Arrays.asList(request1Id, request2Id)).batchSize((int)size); Iterator<RequestLogs> iterator = service.fetch(logQuery).iterator(); assertNotNull(iterator.next()); // TODO: renable when expected behavior is confirmed. // assertFalse("Batch size 1 so there should not be another log", iterator.hasNext()); long batchSize = logQuery.getBatchSize(); assertEquals(size, batchSize); }
public RequestLogs getCurrentRequestLogs() { LogQuery logQuery = new LogQuery() .includeAppLogs(true) .includeIncomplete(true) .startTimeMillis(System.currentTimeMillis() - 20000); for (RequestLogs requestLogs : LogServiceFactory.getLogService().fetch(logQuery)) { if (requestLogs.getRequestId().equals(getCurrentRequestId())) { return requestLogs; } } fail("Could not find RequestLogs for current request"); return null; // not sure, why the following code throws LogServiceException: An error occurred retrieving logs from storage. // LogQuery logQuery = new LogQuery() // .includeAppLogs(true) // .requestIds(Collections.singletonList(getCurrentRequestId())); // Iterable<RequestLogs> iterable = LogServiceFactory.getLogService().fetch(logQuery); // assertTrue("Could not find RequestLogs for current request", iterable.iterator().hasNext()); // return iterable.iterator().next(); } }