strange behavior of spike arrest. have Execution Error with 429 but ratelimit..Faild always equals false

Hello,

I have the following behavior.

I added a spike arrest

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <SpikeArrest async="false" continueOnError="false" enabled="true" name="Spike-Arrest-1"> <DisplayName>Spike Arrest-1</DisplayName> <Rate>1pm</Rate> </SpikeArrest>

at run time

the first call return 200

the second call within a second retruns 429

when look in the trace I have the following

Execution Error

ction ABORT
stepDefinition-async false
internal false
stepDefinition-type SpikeArrest
type RateLimitExecution
enforcement request
stepDefinition-continueOnError false
stepDefinition-displayName Spike Arrest-1
stepDefinition-name Spike-Arrest-1
stepDefinition-enabled true
result false
ratelimit.Spike-Arrest-1.available.count
ratelimit.Spike-Arrest-1.class.used.count
ratelimit.Spike-Arrest-1.fault.cause
ratelimit.Spike-Arrest-1.expiry.time
ratelimit.Spike-Arrest-1.fault.name
ratelimit.Spike-Arrest-1.class.allowed.count
ratelimit.Spike-Arrest-1.datastore.fail.open false
ratelimit.Spike-Arrest-1.total.exceed.count
ratelimit.Spike-Arrest-1.failed false
ratelimit.Spike-Arrest-1.exceed.count
ratelimit.Spike-Arrest-1.used.count
ratelimit.Spike-Arrest-1.allowed.count
ratelimit.Spike-Arrest-1.identifier myorg@@@dev@@@zz-beu-test2@@@Spike-Arrest-1@@@nondistributed@@@_default
ratelimit.Spike-Arrest-1.class.available.count
ratelimit.Spike-Arrest-1.class.exceed.count
ratelimit.Spike-Arrest-1.class.total.exceed.count

While I do except to have ratelimit.SpikeArrest-1.failed equals true

0 4 212
4 REPLIES 4

sorry the last line was missed-up with the past of the detail of the trace

My message was ratelimit.SpikeArrest-1.failed is equals to false while I expect to have true

Thanks for your help

I just put a SpikeArrest at the beginning of some proxy, triggered a 429 and checked the phase details.

For me it's true then. (ratelimit.Spike-Arrest-1.failed = true)

Meaning; I cannot reproduce your problem.

After testing ratelimit.SpikeArrest-1.failed in the fault rule it is correct (true) it seems it is a display problem in the trace so it is not a real problem

I'd argue that a display problem in the trace tool would be a more serious problem than a specific policy not setting variables properly.