protected void writeEntriesToAudit(List<LogEntry> logEntries) { if (logEntries.isEmpty()) { return; } if (log.isDebugEnabled()) { log.debug(String.format("Writing %d log entries to audit backend.", logEntries.size())); } AuditLogger logger = Framework.getService(AuditLogger.class); logger.addLogEntries(logEntries); }
@Override public void handleEvent(Event event) { AuditLogger logger = Framework.getService(AuditLogger.class); if (logger == null) { return; } if (!isEnlisted.get()) { isEnlisted.set(registerSynchronization(this)); entries.get().clear(); if (log.isDebugEnabled()) { log.debug("AuditEventListener collecting entries for the tx"); } } if (logger.getAuditableEventNames().contains(event.getName())) { entries.get().add(logger.buildEntryFromEvent(event)); } if (!isEnlisted.get()) { // there is no transaction so don't wait for a commit afterCompletion(Status.STATUS_COMMITTED); } }
@Override public void handleEvent(EventBundle events) { AuditLogger logger = Framework.getService(AuditLogger.class); if (logger != null) { logger.logEvents(events); } else { log.error("Can not reach AuditLogger"); } }
destBackend.addLogEntries(entries); pageIdx++; nbEntriesMigrated += entries.size(); LogEntry entry = logger.newLogEntry(); entry.setCategory("NuxeoTechnicalEvent"); entry.setEventId(ESAuditBackend.MIGRATION_DONE_EVENT); entry.setPrincipalName(SecurityConstants.SYSTEM_USERNAME); entry.setEventDate(Calendar.getInstance(TimeZone.getTimeZone("UTC")).getTime()); destBackend.addLogEntries(Collections.singletonList(entry)); } finally { sourceBackend.onApplicationStopped();
/** * Could be overridden to get other (additional) data. * * @param logEntryElement */ protected static LogEntry readLogEntry(AuditLogger audit, Element logEntryElement) { LogEntry logEntry = audit.newLogEntry(); logEntry.setCategory(logEntryElement.attributeValue("category")); logEntry.setComment(logEntryElement.attributeValue("comment")); logEntry.setDocLifeCycle(logEntryElement.attributeValue("docLifeCycle")); logEntry.setDocPath(logEntryElement.attributeValue("docPath")); logEntry.setDocType(logEntryElement.attributeValue("docType")); logEntry.setDocUUID(logEntryElement.attributeValue("docUUID")); logEntry.setRepositoryId(logEntryElement.attributeValue("repoId")); try { Date creationDate = getDateFormat().parse(logEntryElement.attributeValue("creationDate")); logEntry.setEventDate(creationDate); } catch (ParseException e) { log.error(e, e); } logEntry.setEventId(logEntryElement.attributeValue("eventId")); logEntry.setPrincipalName(logEntryElement.attributeValue("principalName")); return logEntry; }
@Override public boolean acceptEvent(Event event) { AuditLogger logger = Framework.getService(AuditLogger.class); if (logger == null) { return false; } return logger.getAuditableEventNames().contains(event.getName()); }
throw new UnsupportedOperationException("Error when deserializing type: " + node.getNodeType()); return Framework.getService(AuditLogger.class).newExtendedInfo(value);
throw new TimeoutException(); if (waitForAuditStoredInEs && !auditLogger.await(computeRemainingTime(start), TimeUnit.SECONDS)) { throw new TimeoutException();