Skip to content

Cherry-pick #19346 to 7.8: Add additional time formats to decode_cef#19397

Merged
andrewkroh merged 1 commit intoelastic:7.8from
andrewkroh:backport_19346_7.8
Jun 26, 2020
Merged

Cherry-pick #19346 to 7.8: Add additional time formats to decode_cef#19397
andrewkroh merged 1 commit intoelastic:7.8from
andrewkroh:backport_19346_7.8

Conversation

@andrewkroh
Copy link
Copy Markdown
Member

@andrewkroh andrewkroh commented Jun 25, 2020

Cherry-pick of PR #19346 to 7.8 branch. Original message:

What does this PR do?

The date formats in the CEF guide describe the time formats in terms of Java's SimpleTimeFormat class.
The zzz specifier covers a few additional formats than what are covered by MST in Go's time format.
Namely on the Go side it was missing support for offsets (e.g. +04, +0400, +04:00). This change additionally
adds support for the ISO8601 Z time zone value (this does not strictly match the CEF guide's format).

For reference these are the Java SimpleDateFormats in the CEF guide:

MMM dd HH:mm:ss.SSS zzz
MMM dd HH:mm:sss.SSS
MMM dd HH:mm:ss zzz
MMM dd HH:mm:ss
MMM dd yyyy HH:mm:ss.SSS zzz
MMM dd yyyy HH:mm:ss.SSS
MMM dd yyyy HH:mm:ss zzz
MMM dd yyyy HH:mm:ss

Why is it important?

It makes the decode_cef parser more closely match the CEF guide specification.

Checklist

  • My code follows the style guidelines of this project
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have made corresponding change to the default configuration files
  • I have added tests that prove my fix is effective or that my feature works
  • I have added an entry in CHANGELOG.next.asciidoc or CHANGELOG-developer.next.asciidoc.

@botelastic botelastic bot added the needs_team Indicates that the issue/PR needs a Team:* label label Jun 25, 2020
@elasticmachine
Copy link
Copy Markdown
Contributor

Pinging @elastic/siem (Team:SIEM)

@botelastic botelastic bot removed the needs_team Indicates that the issue/PR needs a Team:* label label Jun 25, 2020
The date formats in the CEF guide describe the time formats in terms of Java's SimpleTimeFormat class.
The `zzz` specifier covers a few additional formats than what are covered by `MST` in Go's time format.
Namely on the Go side it was missing support for offsets (e.g. +04, +0400, +04:00). This change additional
adds support for the ISO8601 `Z` time zone value (this does not strictly match the CEF guide's format).

These are the Java SimpleDateFormats in the CEF guide:

MMM dd HH:mm:ss.SSS zzz
MMM dd HH:mm:sss.SSS
MMM dd HH:mm:ss zzz
MMM dd HH:mm:ss
MMM dd yyyy HH:mm:ss.SSS zzz
MMM dd yyyy HH:mm:ss.SSS
MMM dd yyyy HH:mm:ss zzz
MMM dd yyyy HH:mm:ss

(cherry picked from commit b82829b)
@andrewkroh andrewkroh force-pushed the backport_19346_7.8 branch from 4eec614 to bd201c9 Compare June 25, 2020 14:56
@elasticmachine
Copy link
Copy Markdown
Contributor

elasticmachine commented Jun 25, 2020

💚 Build Succeeded

Pipeline View Test View Changes Artifacts preview

Expand to view the summary

Build stats

  • Build Cause: [Branch indexing]

  • Start Time: 2020-06-26T13:11:32.347+0000

  • Duration: 61 min 4 sec

Test stats 🧪

Test Results
Failed 0
Passed 2190
Skipped 382
Total 2572

@andrewkroh andrewkroh merged commit f200cd9 into elastic:7.8 Jun 26, 2020
@andrewkroh andrewkroh deleted the backport_19346_7.8 branch January 14, 2022 14:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants