ecluse:ecluse-runtime
Safe HaskellNone
LanguageGHC2021

Ecluse.Runtime.Aws.Fault

Description

The amazonka edge of the transport-fault vocabulary: fold the AWS error sum into Ecluse.Core.Fault at an adapter boundary.

Both AWS adapters -- the SQS mirror queue (Ecluse.Runtime.Queue.Sqs) and the advisory sync's S3 transport (Ecluse.Runtime.Cve.Sync) -- face the same Error, so the classification lives once, here. A genuine transport failure arrives wrapped in amazonka's transport channel as the same http-client exception every other adapter sees, and is classified by the shared classifyTransport; a service-level refusal (a throttle, an access denial, a serialisation surprise) is TransportProtocol with the rendered error as detail -- the wire worked, the service said no.

Synopsis

Documentation

classifyAwsTransport :: Error -> TransportFault Source #

Classify an amazonka error into the core transport vocabulary: the transport channel through the shared http-client classification, everything else (service and serialisation errors) as TransportProtocol with the rendered detail carried for the log line.