@@ -126,6 +126,39 @@ func Test_getLabels(t *testing.T) {
126126 },
127127 wantErr : false ,
128128 },
129+ {
130+ name : "s3_govcloud_flow_logs" ,
131+ args : args {
132+ record : events.S3EventRecord {
133+ AWSRegion : "us-gov-east-1" ,
134+ S3 : events.S3Entity {
135+ Bucket : events.S3Bucket {
136+ Name : "vpc_logs_test" ,
137+ OwnerIdentity : events.S3UserIdentity {
138+ PrincipalID : "test" ,
139+ },
140+ },
141+ Object : events.S3Object {
142+ Key : "my-bucket/AWSLogs/123456789012/vpcflowlogs/us-gov-east-1/2022/01/24/123456789012_vpcflowlogs_us-gov-east-1_fl-1234abcd_20180620T1620Z_fe123456.log.gz" ,
143+ },
144+ },
145+ },
146+ },
147+ want : map [string ]string {
148+ "account_id" : "123456789012" ,
149+ "bucket" : "vpc_logs_test" ,
150+ "bucket_owner" : "test" ,
151+ "bucket_region" : "us-gov-east-1" ,
152+ "day" : "24" ,
153+ "key" : "my-bucket/AWSLogs/123456789012/vpcflowlogs/us-gov-east-1/2022/01/24/123456789012_vpcflowlogs_us-gov-east-1_fl-1234abcd_20180620T1620Z_fe123456.log.gz" ,
154+ "month" : "01" ,
155+ "region" : "us-gov-east-1" ,
156+ "src" : "fl-1234abcd" ,
157+ "type" : FLOW_LOG_TYPE ,
158+ "year" : "2022" ,
159+ },
160+ wantErr : false ,
161+ },
129162 {
130163 name : "cloudtrail_digest_logs" ,
131164 args : args {
@@ -192,6 +225,39 @@ func Test_getLabels(t *testing.T) {
192225 },
193226 wantErr : false ,
194227 },
228+ {
229+ name : "cloudtrail_govcloud_logs" ,
230+ args : args {
231+ record : events.S3EventRecord {
232+ AWSRegion : "us-gov-east-1" ,
233+ S3 : events.S3Entity {
234+ Bucket : events.S3Bucket {
235+ Name : "cloudtrail_logs_test" ,
236+ OwnerIdentity : events.S3UserIdentity {
237+ PrincipalID : "test" ,
238+ },
239+ },
240+ Object : events.S3Object {
241+ Key : "my-bucket/AWSLogs/123456789012/CloudTrail/us-gov-east-1/2022/01/24/123456789012_CloudTrail_us-gov-east-1_20220124T0000Z_4jhzXFO2Jlvu2b3y.json.gz" ,
242+ },
243+ },
244+ },
245+ },
246+ want : map [string ]string {
247+ "account_id" : "123456789012" ,
248+ "bucket" : "cloudtrail_logs_test" ,
249+ "bucket_owner" : "test" ,
250+ "bucket_region" : "us-gov-east-1" ,
251+ "day" : "24" ,
252+ "key" : "my-bucket/AWSLogs/123456789012/CloudTrail/us-gov-east-1/2022/01/24/123456789012_CloudTrail_us-gov-east-1_20220124T0000Z_4jhzXFO2Jlvu2b3y.json.gz" ,
253+ "month" : "01" ,
254+ "region" : "us-gov-east-1" ,
255+ "src" : "4jhzXFO2Jlvu2b3y" ,
256+ "type" : CLOUDTRAIL_LOG_TYPE ,
257+ "year" : "2022" ,
258+ },
259+ wantErr : false ,
260+ },
195261 {
196262 name : "organization_cloudtrail_logs" ,
197263 args : args {
@@ -293,6 +359,41 @@ func Test_getLabels(t *testing.T) {
293359 },
294360 wantErr : false ,
295361 },
362+ {
363+ name : "s3_govcloud_waf" ,
364+ args : args {
365+ record : events.S3EventRecord {
366+ AWSRegion : "us-gov-east-1" ,
367+ S3 : events.S3Entity {
368+ Bucket : events.S3Bucket {
369+ Name : "waf_logs_test" ,
370+ OwnerIdentity : events.S3UserIdentity {
371+ PrincipalID : "test" ,
372+ },
373+ },
374+ Object : events.S3Object {
375+ Key : "prefix/AWSLogs/11111111111/WAFLogs/us-gov-east-1/TEST-WEBACL/2021/10/28/19/50/11111111111_waflogs_us-gov-east-1_TEST-WEBACL_20211028T1950Z_e0ca43b5.log.gz" ,
376+ },
377+ },
378+ },
379+ },
380+ want : map [string ]string {
381+ "account_id" : "11111111111" ,
382+ "bucket_owner" : "test" ,
383+ "bucket_region" : "us-gov-east-1" ,
384+ "bucket" : "waf_logs_test" ,
385+ "day" : "28" ,
386+ "hour" : "19" ,
387+ "key" : "prefix/AWSLogs/11111111111/WAFLogs/us-gov-east-1/TEST-WEBACL/2021/10/28/19/50/11111111111_waflogs_us-gov-east-1_TEST-WEBACL_20211028T1950Z_e0ca43b5.log.gz" ,
388+ "minute" : "50" ,
389+ "month" : "10" ,
390+ "region" : "us-gov-east-1" ,
391+ "src" : "TEST-WEBACL" ,
392+ "type" : WAF_LOG_TYPE ,
393+ "year" : "2021" ,
394+ },
395+ wantErr : false ,
396+ },
296397 {
297398 name : "missing_type" ,
298399 args : args {
0 commit comments