Skip to content

Commit b1e0bd8

Browse files
committed
Use common metrics code and fix bug
1 parent 2778623 commit b1e0bd8

1 file changed

Lines changed: 12 additions & 19 deletions

File tree

lambdas/update-letter-queue/src/update-letter-queue.ts

Lines changed: 12 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import {
66
} from "aws-lambda";
77
import { unmarshall } from "@aws-sdk/util-dynamodb";
88
import { Unit } from "aws-embedded-metrics";
9+
import { MetricEntry, MetricStatus, buildEMFObject } from "@internal/helpers";
910
import {
1011
InsertPendingLetter,
1112
Letter,
@@ -82,8 +83,8 @@ function recordProcessing(
8283
totalProcessed: successCount + failureCount,
8384
});
8485

85-
deps.logger.info(buildMetric("letters queued successfully", successCount));
86-
deps.logger.info(buildMetric("letters queued failed", failureCount));
86+
deps.logger.info(buildMetric(MetricStatus.Success, successCount));
87+
deps.logger.info(buildMetric(MetricStatus.Failure, failureCount));
8788
}
8889

8990
function isNewPendingLetter(record: DynamoDBRecord): boolean {
@@ -135,22 +136,14 @@ function mapLetterToPendingLetter(letter: Letter): InsertPendingLetter {
135136
};
136137
}
137138

138-
function buildMetric(name: string, count: number) {
139-
const namespace =
140-
process.env.AWS_LAMBDA_FUNCTION_NAME || "update-letter-queue";
141-
return {
142-
LogGroup: namespace,
143-
ServiceName: namespace,
144-
_aws: {
145-
Timestamp: Date.now(),
146-
CloudWatchMetrics: [
147-
{
148-
Namespace: namespace,
149-
Dimensions: [["ServiceName", "LogGroup"]],
150-
Metrics: [{ Name: name, Value: count, Unit: Unit.Count }],
151-
},
152-
],
139+
function buildMetric(status: MetricStatus, count: number) {
140+
return buildEMFObject(
141+
"update-letter-queue",
142+
{},
143+
{
144+
key: status,
145+
value: count,
146+
unit: Unit.Count,
153147
},
154-
"events published": count,
155-
};
148+
);
156149
}

0 commit comments

Comments
 (0)