Sto avendo un momento difficile capire come SNS gestisce i messaggi di risposta. Il mio SNS sottoscrittore è una pagina che potrebbe andare giù o semplicemente restituire un errore 4xx.
Per qualche motivo, però, sembra che la SNS è il trattamento di richieste che restituiscono errore 4xx codici di successo.
Come posso fare fallire quando il codice di risposta è 4xx e non solo 5xx?
Dai log si può vedere che il sottoscrittore restituisce un codice di stato 404 Not found, ma nonostante ciò, lo stato della richiesta è ancora SUCCESSO.
{
"notification": {
"messageMD5Sum": "fd746e97153916fd99bba*********",
"messageId": "be666c50-8de5-594b-9e77-*********",
"topicArn": "arn:aws:sns:us-east-1:060758096283:*********,
"timestamp": "2021-11-23 14:21:23.778"
},
"delivery": {
"deliveryId": "ef278086-2a70-5512-a191-da90d1534d24",
"redrivePolicy": "{\"deadLetterTargetArn\":\"arn:aws:sqs:us-east-1:*********:*********-DLQ\"}",
"destination": "*********/subscriber.php",
"providerResponse": "Not Found",
"dwellTimeMs": 80,
"attempts": 1,
"statusCode": 404
},
"status": "SUCCESS"
}
Questo mi ha causato problemi con il monitoraggio, in quanto È molto difficile sapere se le mie richieste sono in realtà di successo o meno, senza dover manualmente guardare in su.