Skip to content

Commit 6d29817

Browse files
committed
CCM-14411: Try transforming events using EventBridge
1 parent d09eac7 commit 6d29817

2 files changed

Lines changed: 31 additions & 14 deletions

File tree

infrastructure/terraform/components/dl/cloudwatch_event_rule_all_events.tf

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,29 @@ resource "aws_cloudwatch_event_target" "reporting_firehose" {
1717
arn = aws_kinesis_firehose_delivery_stream.to_s3_reporting.arn
1818
role_arn = aws_iam_role.eventbridge_firehose.arn
1919
event_bus_name = aws_cloudwatch_event_bus.main.name
20+
21+
input_transformer {
22+
input_paths = {
23+
time = "$.detail.time",
24+
type = "$.detail.type",
25+
messageReference = "$.detail.data.messageReference",
26+
pageCount = "$.detail.data.pageCount",
27+
reasonCode = "$.detail.data.reasonCode",
28+
reasonText = "$.detail.data.reasonText",
29+
senderId = "$.detail.data.senderId",
30+
supplierId = "$.detail.data.supplierId",
31+
}
32+
input_template = <<EOF
33+
{
34+
"time": <time>,
35+
"type": <type>,
36+
"messageReference": <messageReference>,
37+
"pageCount": <pageCount>,
38+
"reasonCode": <reasonCode>,
39+
"reasonText": <reasonText>,
40+
"senderId": <senderId>,
41+
"supplierId": <supplierId>
42+
}
43+
EOF
44+
}
2045
}

infrastructure/terraform/components/dl/kinesis_firehose_delivery_stream_to_s3_reporting.tf

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ resource "aws_kinesis_firehose_delivery_stream" "to_s3_reporting" {
77
role_arn = aws_iam_role.firehose_role.arn
88
bucket_arn = module.s3bucket_reporting.arn
99

10-
prefix = "${local.firehose_output_path_prefix}/reporting/parquet/${aws_glue_catalog_table.event_record.name}/senderid=!{partitionKeyFromLambda:senderId}/__year=!{partitionKeyFromLambda:year}/__month=!{partitionKeyFromLambda:month}/__day=!{partitionKeyFromLambda:day}/"
10+
prefix = "${local.firehose_output_path_prefix}/reporting/parquet/${aws_glue_catalog_table.event_record.name}/senderid=!{partitionKeyFromQuery:senderId}/__year=!{partitionKeyFromQuery:year}/__month=!{partitionKeyFromQuery:month}/__day=!{partitionKeyFromQuery:day}/"
1111
error_output_prefix = "${local.firehose_output_path_prefix}/errors/!{timestamp:yyyy}-!{timestamp:MM}-!{timestamp:dd}-!{timestamp:HH}/!{firehose:error-output-type}/"
1212

1313
buffering_size = 128
@@ -21,23 +21,15 @@ resource "aws_kinesis_firehose_delivery_stream" "to_s3_reporting" {
2121
enabled = "true"
2222

2323
processors {
24-
type = "Lambda"
24+
type = "MetadataExtraction"
2525

2626
parameters {
27-
parameter_name = "LambdaArn"
28-
parameter_value = "${module.report_event_transformer.function_arn}:$LATEST"
27+
parameter_name = "JsonParsingEngine"
28+
parameter_value = "JQ-1.6"
2929
}
3030
parameters {
31-
parameter_name = "RoleArn"
32-
parameter_value = aws_iam_role.firehose_role.arn
33-
}
34-
parameters {
35-
parameter_name = "BufferSizeInMBs"
36-
parameter_value = 1
37-
}
38-
parameters {
39-
parameter_name = "BufferIntervalInSeconds"
40-
parameter_value = 301
31+
parameter_name = "MetadataExtractionQuery"
32+
parameter_value = "{senderId:.data.senderId, year:.event_timestamp| strftime(\"%Y\"), month:.event_timestamp| strftime(\"%m\"), day:.event_timestamp| strftime(\"%d\")}"
4133
}
4234
}
4335
}

0 commit comments

Comments
 (0)