Skip to content

Commit

Permalink
AuditService: Event Date Time differs in same Audit Message sent to m…
Browse files Browse the repository at this point in the history
…ultiple Audit Record Repositories #1355
  • Loading branch information
vrindanayak committed Apr 23, 2018
1 parent f289d95 commit b57f149
Showing 1 changed file with 10 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -406,7 +406,7 @@ void spoolSoftwareConfiguration(SoftwareConfiguration softwareConfiguration) {
AuditInfoBuilder info = request != null
? buildSoftwareConfAuditForWeb(request, deviceName)
: buildSystemTriggeredSoftwareConfAudit(deviceName);
writeSpoolFile(AuditServiceUtils.EventType.LDAP_CHNGS, info, softwareConfiguration.getLdapDiff().toString());
writeSpoolFile(info, softwareConfiguration.getLdapDiff().toString());
}

private AuditInfoBuilder buildSoftwareConfAuditForWeb(HttpServletRequest request, String deviceName) {
Expand Down Expand Up @@ -1741,9 +1741,9 @@ private Path toDirPath(AuditLogger auditLogger) {
auditLogger.getCommonName().replaceAll(" ", "_"));
}

private void writeSpoolFile(AuditServiceUtils.EventType eventType, AuditInfoBuilder auditInfoBuilder, String data) {
private void writeSpoolFile(AuditInfoBuilder auditInfoBuilder, String data) {
if (auditInfoBuilder == null) {
LOG.warn("Attempt to write empty file : ", eventType);
LOG.warn("Attempt to write empty file : ", AuditServiceUtils.EventType.LDAP_CHNGS);
return;
}
FileTime eventTime = FileTime.fromMillis(System.currentTimeMillis());
Expand All @@ -1754,7 +1754,7 @@ private void writeSpoolFile(AuditServiceUtils.EventType eventType, AuditInfoBuil
Path dir = toDirPath(auditLogger);
try {
Files.createDirectories(dir);
Path file = Files.createTempFile(dir, String.valueOf(eventType), null);
Path file = Files.createTempFile(dir, AuditServiceUtils.EventType.LDAP_CHNGS.name(), null);
try (SpoolFileWriter writer = new SpoolFileWriter(Files.newBufferedWriter(file, StandardCharsets.UTF_8,
StandardOpenOption.APPEND))) {
writer.writeLine(new AuditInfo(auditInfoBuilder), data);
Expand All @@ -1774,6 +1774,7 @@ private void writeSpoolFile(AuditServiceUtils.EventType eventType, AuditInfoBuil
LOG.warn("Attempt to write empty file : ", eventType);
return;
}
FileTime eventTime = FileTime.fromMillis(System.currentTimeMillis());
boolean auditAggregate = getArchiveDevice().isAuditAggregate();
AuditLoggerDeviceExtension ext = device.getDeviceExtension(AuditLoggerDeviceExtension.class);
for (AuditLogger auditLogger : ext.getAuditLoggers()) {
Expand All @@ -1789,8 +1790,8 @@ private void writeSpoolFile(AuditServiceUtils.EventType eventType, AuditInfoBuil
StandardOpenOption.APPEND))) {
writer.writeLine(new AuditInfo(auditInfoBuilder));
}
out.close();
}
Files.setLastModifiedTime(file, eventTime);
if (!auditAggregate)
auditAndProcessFile(auditLogger, file);
} catch (Exception e) {
Expand All @@ -1805,6 +1806,7 @@ private void writeSpoolFile(AuditServiceUtils.EventType eventType, AuditInfoBuil
LOG.warn("Attempt to write empty file : ", eventType);
return;
}
FileTime eventTime = FileTime.fromMillis(System.currentTimeMillis());
boolean auditAggregate = getArchiveDevice().isAuditAggregate();
AuditLoggerDeviceExtension ext = device.getDeviceExtension(AuditLoggerDeviceExtension.class);
for (AuditLogger auditLogger : ext.getAuditLoggers()) {
Expand All @@ -1818,6 +1820,7 @@ private void writeSpoolFile(AuditServiceUtils.EventType eventType, AuditInfoBuil
for (AuditInfoBuilder auditInfoBuilder : auditInfoBuilders)
writer.writeLine(new AuditInfo(auditInfoBuilder));
}
Files.setLastModifiedTime(file, eventTime);
if (!auditAggregate)
auditAndProcessFile(auditLogger, file);
} catch (Exception e) {
Expand All @@ -1832,6 +1835,7 @@ private void writeSpoolFileStoreOrWadoRetrieve(String fileName, AuditInfoBuilder
LOG.warn("Attempt to write empty file : " + fileName);
return;
}
FileTime eventTime = FileTime.fromMillis(System.currentTimeMillis());
boolean auditAggregate = getArchiveDevice().isAuditAggregate();
AuditLoggerDeviceExtension ext = device.getDeviceExtension(AuditLoggerDeviceExtension.class);
for (AuditLogger auditLogger : ext.getAuditLoggers()) {
Expand All @@ -1849,6 +1853,7 @@ private void writeSpoolFileStoreOrWadoRetrieve(String fileName, AuditInfoBuilder
}
writer.writeLine(new AuditInfo(instanceInfo));
}
Files.setLastModifiedTime(file, eventTime);
if (!auditAggregate)
auditAndProcessFile(auditLogger, file);
} catch (Exception e) {
Expand Down

0 comments on commit b57f149

Please sign in to comment.