HealthyRetryPolicy Struct
Options for customising the retry policy of the delivery of SNS messages to HTTP/S endpoints.
Example
ts
const myTopic = new sns.Topic(this, 'MyTopic');
myTopic.addSubscription(
new subscriptions.UrlSubscription(
'https://foobar.com/',
{
deliveryPolicy: {
healthyRetryPolicy: {
minDelayTarget: Duration.seconds(5),
maxDelayTarget: Duration.seconds(10),
numRetries: 6,
backoffFunction: sns.BackoffFunction.EXPONENTIAL,
},
throttlePolicy: {
maxReceivesPerSecond: 10,
},
requestPolicy: {
headerContentType: 'application/json',
},
},
},
),
);
Properties
backoffFunctionoptionalBackoffFunctionbackoff_functionoptionalBackoffFunctionbackoffFunctionoptionalBackoffFunctionBackoffFunctionoptionalBackoffFunctionBackoffFunctionoptionalBackoffFunction= linear#The model for backoff between retries.
maxDelayTargetoptionalDurationmax_delay_targetoptionalDurationmaxDelayTargetoptionalDurationMaxDelayTargetoptionalDurationMaxDelayTargetoptionalDuration#The maximum delay for a retry.
Default: 20 seconds
Must be at least minDelayTarget less than 3,600 seconds, and correspond to a whole number of seconds,
minDelayTargetoptionalDurationmin_delay_targetoptionalDurationminDelayTargetoptionalDurationMinDelayTargetoptionalDurationMinDelayTargetoptionalDuration#The minimum delay for a retry.
Default: 20 seconds
Must be at least one second, not exceed maxDelayTarget, and correspond to a whole number of seconds.
numMaxDelayRetriesoptionalnumbernum_max_delay_retriesoptionalint | floatnumMaxDelayRetriesoptionalNumberNumMaxDelayRetriesoptionaldoubleNumMaxDelayRetriesoptional*float64= 0#The number of retries in the post-backoff phase, with the maximum delay between them.
Must be zero or greater
numMinDelayRetriesoptionalnumbernum_min_delay_retriesoptionalint | floatnumMinDelayRetriesoptionalNumberNumMinDelayRetriesoptionaldoubleNumMinDelayRetriesoptional*float64= 0#The number of retries in the pre-backoff phase, with the specified minimum delay between them.
Must be zero or greater
numNoDelayRetriesoptionalnumbernum_no_delay_retriesoptionalint | floatnumNoDelayRetriesoptionalNumberNumNoDelayRetriesoptionaldoubleNumNoDelayRetriesoptional*float64= 0#The number of retries to be done immediately, with no delay between them.
Must be zero or greater.
numRetriesoptionalnumbernum_retriesoptionalint | floatnumRetriesoptionalNumberNumRetriesoptionaldoubleNumRetriesoptional*float64= 3#The total number of retries, including immediate, pre-backoff, backoff, and post-backoff retries.
Must be greater than or equal to zero and not exceed 100.