SendErrorCause

Enumin requestfastly 0.13.1View source
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#[non_exhaustive]
pub enum SendErrorCause {
DnsTimeout,
DnsError {
rcode: Option<u16>,
info_code: Option<u16>,
},
DestinationNotFound,
DestinationUnavailable,
DestinationIpUnroutable,
ConnectionRefused,
ConnectionTerminated,
ConnectionTimeout,
ConnectionLimitReached,
TlsProtocolError,
TlsCertificateError,
TlsAlertReceived {
alert_id: Option<u8>,
},
TlsConfigurationError,
HttpIncompleteResponse,
HttpResponseHeaderSectionTooLarge,
HttpResponseBodyTooLarge,
HttpResponseTimeout,
HttpResponseStatusInvalid,
HttpUpgradeFailed,
Http2StreamError {
frame_type: u8,
error_code: u32,
},
HttpProtocolError,
HttpRequestCacheKeyInvalid,
HttpRequestUriInvalid,
HttpCacheLimitExceeded,
HttpCacheApiUnsupported,
IoError(Error),
FanoutNotEnabled,
ImageOptimizerUnsupported,
InternalError(Option<FastlyStatus>),
RequestCollapse,
Custom(Error),
}

The reason that a request sent to a backend failed.

Variants

DnsTimeout

The system encountered a timeout when trying to find an IP address for the backend hostname.

DnsError

The system encountered a DNS error when trying to find an IP address for the backend hostname.

The rcode and info_code fields may be set with more detail.

rcode: Option<u16>

info_code: Option<u16>

DestinationNotFound

The system cannot determine which backend to use, or the specified backend was invalid.

DestinationUnavailable

The system considers the backend to be unavailable; e.g., recent attempts to communicate with it may have failed, or a health check may indicate that it is down.

DestinationIpUnroutable

The system cannot find a route to the next-hop IP address.

ConnectionRefused

The system's connection to the backend was refused.

ConnectionTerminated

The system's connection to the backend was closed before a complete response was received.

ConnectionTimeout

The system's attempt to open a connection to the backend timed out.

ConnectionLimitReached

The system is configured to limit the number of connections it has to the backend, and that limit has been exceeded.

TlsProtocolError

The system encountered a TLS error when communicating with the backend, either during the handshake or afterwards.

TlsCertificateError

The system encountered an error when verifying the certificate presented by the backend.

TlsAlertReceived

The system received a TLS alert from the backend.

The alert_id field will specific which alert occurred.

alert_id: Option<u8>

TlsConfigurationError

The system encountered an error with the backend TLS configuration.

HttpIncompleteResponse

The system received an incomplete response to the request from the backend.

HttpResponseHeaderSectionTooLarge

The system received a response to the request whose header section was considered too large.

HttpResponseBodyTooLarge

The system received a response to the request whose body was considered too large.

HttpResponseTimeout

The system reached a configured time limit waiting for the complete response.

HttpResponseStatusInvalid

The system received a response to the request whose status code or reason phrase was invalid.

HttpUpgradeFailed

The process of negotiating an upgrade of the HTTP version between the system and backend failed.

Http2StreamError

The system received an unexpected HTTP/2 error response from the backend.

frame_type: u8

error_code: u32

HttpProtocolError

The system encountered an HTTP protocol error when communicating with the backend. This error will only be used when a more specific one is not defined.

HttpRequestCacheKeyInvalid

An invalid cache key was provided for the request.

HttpRequestUriInvalid

An invalid URI was provided for the request.

HttpCacheLimitExceeded

A caching limit was reached.

HttpCacheApiUnsupported

A caching limit was reached.

IoError

An I/O error was encountered.

0: std::io::Error

FanoutNotEnabled

Fanout/WebSocket features are not enabled on this service.

ImageOptimizerUnsupported

Image Optimizer is not supported on this service.

InternalError

The system encountered an unexpected internal error.

0: Option<fastly_shared::FastlyStatus>

RequestCollapse

This should only occur for "followers" of a request collapse; the leader sees the original error.

Custom

A custom error occurred while processing the request.

0: anyhow::Error

Trait implementations

impl Debug for SendErrorCause

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Parameters

self: &Self
f: &mut $crate::fmt::Formatter

Returns

$crate::fmt::Result

impl Display for SendErrorCause

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Parameters

self: &Self
__formatter: &mut ::core::fmt::Formatter

Returns

::core::fmt::Result

impl Error for SendErrorCause

fn source(&self) -> Option<&(dyn Error + 'static)>

Parameters

self: &Self

Returns

::core::option::Option<&(dyn Error + 'static)>

impl From<Error> for SendErrorCause

fn from(source: Error) -> Self

Parameters

source: std::io::Error

Returns

Self

impl From<SendError> for SendErrorCause

fn from(err: SendError) -> Self

Parameters

err: SendError

Returns

Self

Auto trait implementations

Blanket implementations