+
+ public static Map<String, List<String>> allLogEvents(String level, int days) throws AuditLoggingException {
+ Map<String, List<String>> results = new HashMap<>();
+ try {
+ Files.walk(Activator.getLogLocation()).forEach(uuid -> {
+ String fileName = uuid.getFileName().toString();
+ try {
+ List<String> events = getLogEventsDays(fileName, level, days);
+ results.put(fileName, events);
+ } catch (AuditLoggingException e) {
+ LOGGER.error("Could not get audit log events for {}", fileName, e);
+ }
+ });
+ } catch (IOException e) {
+ throw new AuditLoggingException(e);
+ }
+ return results;
+ }
+
+ /**
+ * Gets audit events for the last 5 days
+ *
+ * @param uuid
+ * @param level
+ * @return
+ * @throws AuditLoggingException
+ */
+ public static List<String> getLogEventsDays(String uuid, String level, int days) throws AuditLoggingException {
+ LocalDate endDate = LocalDate.now().plusDays(1);
+ LocalDate startDate = endDate.minusDays(days);
+ return getLogEvents(uuid, level, startDate, endDate);
+ }
+