Skip to content

Commit b065032

Browse files
Modify the evtTime format to avoid format errors in ES
1 parent 0f980ba commit b065032

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

agents-audit/dest-es/src/main/java/org/apache/ranger/audit/destination/ElasticSearchAuditDestination.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
import java.io.File;
5252
import java.io.IOException;
5353
import java.security.PrivilegedActionException;
54+
import java.text.SimpleDateFormat;
5455
import java.util.ArrayList;
5556
import java.util.Collection;
5657
import java.util.Collections;
@@ -66,6 +67,7 @@
6667

6768
public class ElasticSearchAuditDestination extends AuditDestination {
6869
private static final Logger LOG = LoggerFactory.getLogger(ElasticSearchAuditDestination.class);
70+
private static final String DATE_FORMAT = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'";
6971

7072
public static final String CONFIG_URLS = "urls";
7173
public static final String CONFIG_PORT = "port";
@@ -300,7 +302,14 @@ Map<String, Object> toDoc(AuthzAuditEvent auditEvent) {
300302
doc.put("resType", auditEvent.getResourceType());
301303
doc.put("reason", auditEvent.getResultReason());
302304
doc.put("action", auditEvent.getAction());
303-
doc.put("evtTime", auditEvent.getEventTime());
305+
Date eventTime = auditEvent.getEventTime();
306+
if (eventTime != null) {
307+
SimpleDateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT);
308+
dateFormat.setTimeZone(java.util.TimeZone.getTimeZone("UTC"));
309+
doc.put("evtTime", dateFormat.format(eventTime));
310+
} else {
311+
doc.put("evtTime", null);
312+
}
304313
doc.put("seq_num", auditEvent.getSeqNum());
305314
doc.put("event_count", auditEvent.getEventCount());
306315
doc.put("event_dur_ms", auditEvent.getEventDurationMS());

0 commit comments

Comments
 (0)