Skip to content

Commit 4aa3230

Browse files
authored
Merge pull request #38 from gabelilly/logstash-5.4
Update filters to conform to Logstash 5.4
2 parents 5eb5d1e + bb44c9c commit 4aa3230

9 files changed

+25
-21
lines changed

2000_filter_sections_split.conf

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ filter {
2626

2727
ruby {
2828
code => "
29-
if !event['message'].nil?
30-
modSecSectionData = event['message'].split(/(?:--[a-fA-F0-9]{8}-([A-Z])--)/)
29+
if !event.get('message').nil?
30+
modSecSectionData = event.get('message').split(/(?:--[a-fA-F0-9]{8}-([A-Z])--)/)
3131
modSecSectionData.shift
3232
for i in 0..((modSecSectionData.length-1)/2)
3333
sectionName = 'rawSection'.concat(modSecSectionData.shift)
@@ -36,7 +36,7 @@ filter {
3636
if !sectionData.nil?
3737
sectionData = sectionData.strip
3838
end
39-
event.to_hash.merge!(sectionName => sectionData)
39+
event.set(sectionName, sectionData)
4040
end
4141
end
4242
"

2021_filter_section_b_headers_key-value.conf

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
filter {
22
if [type] == "mod_security" {
3+
34
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
45
# Convert raw request headers into a key/value
56
# pair map
@@ -17,7 +18,7 @@ filter {
1718
# trim leading/trailing hack @see https://logstash.jira.com/browse/LOGSTASH-1369
1819
ruby {
1920
code => "
20-
requestHeaders = event.to_hash['requestHeaders']
21+
requestHeaders = event.get('requestHeaders').to_hash
2122
requestHeaders.each { |k, v|
2223
if !v.nil? and v.is_a? String
2324
requestHeaders[k] = v.strip

2062_filter_section_f_headers_key-value.conf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ filter {
1717
# trim leading/trailing hack @see https://logstash.jira.com/browse/LOGSTASH-1369
1818
ruby {
1919
code => "
20-
responseHeaders = event.to_hash['responseHeaders']
20+
responseHeaders = event.get('responseHeaders').to_hash
2121
responseHeaders.each { |k, v|
2222
if !v.nil? and v.is_a? String
2323
responseHeaders[k] = v.strip

2080_filter_section_h_parse_messages_to_auditLogTrailerMessages.conf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ filter {
2727
end
2828

2929
auditLogTrailerMessages = Array.new()
30-
trailer_array = event.to_hash['rawSectionH'].split(/\n/)
30+
trailer_array = event.get('rawSectionH').split(/\n/)
3131
trailer_array.each do |entry|
3232
if entry.match(/^Message: /)
3333
msg = Hash.new()
@@ -43,7 +43,7 @@ filter {
4343
end
4444
end
4545

46-
event.to_hash.merge!('auditLogTrailerMessages' => auditLogTrailerMessages)
46+
event.set('auditLogTrailerMessages', auditLogTrailerMessages)
4747
"
4848
}
4949
}

2081_filter_section_h_convert_to_key-value.conf

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,18 +20,21 @@ filter {
2020
# trim leading/trailing hack @see https://logstash.jira.com/browse/LOGSTASH-1369
2121
ruby {
2222
code => "
23-
auditLogTrailer = event.to_hash['auditLogTrailer']
24-
auditLogTrailerMessages = event.to_hash['auditLogTrailerMessages']
23+
auditLogTrailer = event.get('auditLogTrailer').to_hash
24+
auditLogTrailerMessages = event.get('auditLogTrailerMessages').to_hash
2525
auditLogTrailer.each { |k, v|
2626
if !v.nil? and v.is_a? String
2727
auditLogTrailer[k] = v.strip
2828
end
2929
}
3030
auditLogTrailer.delete('Message')
3131
auditLogTrailer['messages'] = auditLogTrailerMessages
32-
event.to_hash.delete('auditLogTrailerMessages')
3332
"
3433
}
34+
35+
drop {
36+
remove_field => ['auditLogTrailerMessages']
37+
}
3538
}
3639
}
3740
}

2082_filter_section_h_extract_stopwatch.conf

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,16 @@ filter {
2424
# micro -> milli
2525
ruby {
2626
code => "
27-
event_date_milliseconds = (event.to_hash['event_date_microseconds'] / 1000.0)
28-
event.to_hash.merge!('event_date_milliseconds' => event_date_milliseconds)
27+
event_date_milliseconds = (event.get('event_date_microseconds') / 1000.0)
28+
event.set('event_date_milliseconds', event_date_milliseconds)
2929
"
3030
}
3131

3232
# milli -> seconds
3333
ruby {
3434
code => "
35-
event_date_seconds = (event.to_hash['event_date_milliseconds'] / 1000.0)
36-
event.to_hash.merge!('event_date_seconds' => event_date_seconds)
35+
event_date_seconds = (event.get('event_date_milliseconds') / 1000.0)
36+
event.set('event_date_seconds', event_date_seconds)
3737
"
3838
}
3939

@@ -46,7 +46,7 @@ filter {
4646
# a second copy of a iso8601 date
4747
ruby {
4848
code => "
49-
event.to_hash.merge!('event_timestamp' => (Time.at(event.to_hash['event_date_seconds']).gmtime).iso8601(3))
49+
event.set('event_timestamp', (Time.at(event.get('event_date_seconds')).gmtime).iso8601(3))
5050
"
5151
}
5252
}

2089_filter_section_h_example_geoip.conf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ filter {
2020
# convert Strings to UTF-8, leave as-is otherwise
2121
#ruby {
2222
# code => "
23-
# geoip = event.to_hash['XForwardedFor-GEOIP']
23+
# geoip = event.get('XForwardedFor-GEOIP').to_hash
2424
# if !geoip.nil?
2525
# newgeoip = Hash.new()
2626
# geoip.each do |key,value|
@@ -30,7 +30,7 @@ filter {
3030
# newgeoip[key] = value
3131
# end
3232
# end
33-
# event.to_hash.merge!('XForwardedFor-GEOIP' => newgeoip)
33+
# event.set('XForwardedFor-GEOIP', newgeoip)
3434
# end
3535
# "
3636
#}

2089_filter_section_h_example_severities.conf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@ filter {
1111
ruby {
1212
code => "
1313
modsecSeverities = Set.new
14-
trailerMsgs = event.to_hash['auditLogTrailerMessages']
14+
trailerMsgs = event.get('auditLogTrailerMessages').to_hash
1515
trailerMsgs.each {|m|
1616
if m.key?('severity')
1717
modsecSeverities.add(m['severity'])
1818
end
1919
}
20-
event.to_hash.merge!('modsecSeverities' => modsecSeverities.to_a)
20+
event.set('modsecSeverities', modsecSeverities.to_a)
2121
"
2222
}
2323
}

2110_filter_section_k_parse_matchedRules.conf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@ filter {
2424
ruby {
2525
code => "
2626
secRuleIds = Array.new()
27-
matchedRules_array = event.to_hash['matchedRules']
27+
matchedRules_array = event.get('matchedRules').to_hash
2828
matchedRules_array.each do |entry|
2929
if entry.match(/^SecRule /) and entry.match(/,id:/)
3030
secRuleIds.push(/,id:(?<ruleId>\d+)/.match(entry)[:ruleId])
3131
end
3232
end
33-
event.to_hash.merge!('secRuleIds' => secRuleIds)
33+
event.set('secRuleIds', secRuleIds)
3434
"
3535
}
3636
}

0 commit comments

Comments
 (0)