@@ -322,6 +322,11 @@ export class PaymentApi extends GuStack {
322
322
snsTopicName : `alarms-handler-topic-${ this . stage } ` ,
323
323
} ) ;
324
324
325
+ const stripeExpressMetricDuration = Duration . minutes ( 5 ) ;
326
+ const stripeExpressEvaluationPeriods = 18 ; // The number of 5 minute periods in 90 minutes
327
+ const stripeExpressAlarmPeriod = Duration . minutes (
328
+ stripeExpressMetricDuration . toMinutes ( ) * stripeExpressEvaluationPeriods
329
+ ) ;
325
330
const [ applePaySuccessMetric , paymentRequestButtonSuccessMetric ] = [
326
331
"StripeApplePay" ,
327
332
"StripePaymentRequestButton" ,
@@ -334,24 +339,24 @@ export class PaymentApi extends GuStack {
334
339
"payment-provider" : paymentProvider ,
335
340
} ,
336
341
statistic : "Sum" ,
337
- period : Duration . seconds ( 300 ) ,
342
+ period : stripeExpressMetricDuration
338
343
} )
339
344
) ;
340
345
const combinedApplePayAndPaymentRequestButtonSuccessMetric =
341
346
new MathExpression ( {
342
347
expression : "SUM(METRICS())" ,
343
- period : Duration . seconds ( 300 ) ,
348
+ period : stripeExpressMetricDuration ,
344
349
usingMetrics : {
345
350
m1 : applePaySuccessMetric ,
346
351
m2 : paymentRequestButtonSuccessMetric ,
347
352
} ,
348
353
} ) ;
349
354
new GuAlarm ( this , "NoStripeExpressPaymentsInOneHourAlarm" , {
350
355
app,
351
- alarmName : `[CDK] ${ app } ${ this . stage } No successful stripe express payments via payment-api for an hour ` ,
356
+ alarmName : `[CDK] ${ app } ${ this . stage } No successful stripe express payments via payment-api for ${ stripeExpressAlarmPeriod . toHumanString ( ) } ` ,
352
357
actionsEnabled : props . stage === "PROD" ,
353
358
threshold : 0 ,
354
- evaluationPeriods : 12 ,
359
+ evaluationPeriods : stripeExpressEvaluationPeriods ,
355
360
comparisonOperator : ComparisonOperator . LESS_THAN_OR_EQUAL_TO_THRESHOLD ,
356
361
metric : combinedApplePayAndPaymentRequestButtonSuccessMetric ,
357
362
treatMissingData : TreatMissingData . BREACHING ,
0 commit comments