Skip to content

Commit f07b4ea

Browse files
Fix attempt
1 parent 7f1706d commit f07b4ea

File tree

6 files changed

+12
-9
lines changed

6 files changed

+12
-9
lines changed

infrastructure/terraform/components/api/module_lambda_letter_status_update.tf

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ module "letter_status_update" {
2222
function_code_base_path = local.aws_lambda_functions_dir_path
2323
function_code_dir = "api-handler/dist"
2424
function_include_common = true
25-
handler_function_name = "statusUpdateHandler"
25+
handler_function_name = "letterStatusUpdate"
2626
runtime = "nodejs22.x"
2727
memory = 128
2828
timeout = 5
@@ -58,6 +58,8 @@ data "aws_iam_policy_document" "letter_status_update" {
5858
effect = "Allow"
5959

6060
actions = [
61+
"dynamodb:GetItem",
62+
"dynamodb:Query",
6163
"dynamodb:UpdateItem",
6264
]
6365

lambdas/api-handler/src/handlers/__tests__/letter-status-update.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ describe('createLetterStatusUpdateHandler', () => {
100100

101101
expect(mockedDeps.letterRepo.updateLetterStatus).toHaveBeenCalledWith(letterToUpdate[0]);
102102
expect(mockedDeps.logger.error).toHaveBeenCalledWith({ err: mockError},
103-
'Error processing update to letterId=id1 supplierId=s1 correlationId=correlationId-id1');
103+
'Error processing update: messageId=mid-id1 correlationId=correlationId-id1');
104104
});
105105
});
106106

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
import { SQSEvent, Context, SQSHandler, SQSRecord } from 'aws-lambda';
1+
import { SQSEvent, SQSHandler, SQSRecord } from 'aws-lambda';
22
import { LetterDto, LetterDtoSchema } from '../contracts/letters';
33
import { Deps } from '../config/deps';
44

55
export function createLetterStatusUpdateHandler(deps: Deps): SQSHandler {
66

7-
return async ( event: SQSEvent, context: Context ) => {
7+
return async ( event: SQSEvent ) => {
88
for (const message of event.Records) {
99
await processMessageAsync(message, deps);
1010
}
@@ -13,11 +13,11 @@ export function createLetterStatusUpdateHandler(deps: Deps): SQSHandler {
1313

1414
async function processMessageAsync(message: SQSRecord, deps: Deps): Promise<any> {
1515

16-
const letterToUpdate: LetterDto = LetterDtoSchema.parse(JSON.parse(message.body));
17-
1816
try {
17+
const letterToUpdate: LetterDto = LetterDtoSchema.parse(JSON.parse(message.body));
1918
await deps.letterRepo.updateLetterStatus(letterToUpdate);
19+
deps.logger.info(`Processed update to letterId=${letterToUpdate.id} supplierId=${letterToUpdate.supplierId} correlationId=${message.messageAttributes["CorrelationId"].stringValue}`);
2020
} catch (error) {
21-
deps.logger.error({ err: error }, `Error processing update to letterId=${letterToUpdate.id} supplierId=${letterToUpdate.supplierId} correlationId=${message.messageAttributes["CorrelationId"].stringValue}`);
21+
deps.logger.error({ err: error }, `Error processing update: messageId=${message.messageId} correlationId=${message.messageAttributes["CorrelationId"].stringValue}`);
2222
}
2323
}

lambdas/api-handler/src/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ export const getLetter = createGetLetterHandler(container);
1313
export const getLetterData = createGetLetterDataHandler(container);
1414
export const getLetters = createGetLettersHandler(container);
1515
export const patchLetter = createPatchLetterHandler(container);
16-
export const statusUpdateHandler = createLetterStatusUpdateHandler(container);
16+
export const letterStatusUpdate = createLetterStatusUpdateHandler(container);
1717
export const postLettersReceiver = createPostLettersReceiverHandler(container);
1818

1919
export const postMI = createPostMIHandler(container);

lambdas/api-handler/src/services/__tests__/letter-operations.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -327,7 +327,7 @@ describe('enqueueLetterUpdateRequests function', () => {
327327
};
328328
const deps: Deps = { sqsClient, logger, env } as Deps;
329329

330-
const result = await enqueueLetterUpdateRequests(updateLettersRequest, 'supplier1', 'correlationId1', deps);
330+
await enqueueLetterUpdateRequests(updateLettersRequest, 'supplier1', 'correlationId1', deps);
331331

332332
expect(deps.logger.error).toHaveBeenCalledWith({ err: mockError},
333333
'Error queuing letterId=id1 supplierId=supplier1 correlationId=correlationId1 for update');

lambdas/api-handler/src/services/letter-operations.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ export async function enqueueLetterUpdateRequests(postLettersRequest: PostLetter
9191
MessageBody: JSON.stringify(mapPostLetterResourceToDto(request, supplierId)),
9292
});
9393
await deps.sqsClient.send(command);
94+
deps.logger.info(`Enqueued letter update: url=${command.input.QueueUrl}, message=${command.input.MessageBody}, correlationId=${correlationId}`)
9495
} catch (err) {
9596
deps.logger.error({ err }, `Error queuing letterId=${request.id} supplierId=${supplierId} correlationId=${correlationId} for update`);
9697
}

0 commit comments

Comments
 (0)