Enum fastly::http::request::SendErrorCause
source · #[non_exhaustive]pub enum SendErrorCause {
Show 23 variants
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,
HttpProtocolError,
HttpRequestCacheKeyInvalid,
HttpRequestUriInvalid,
InternalError(Option<FastlyStatus>),
}
Expand description
The reason that a request sent to a backend failed.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
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 fields $dns_error_rcode and $dns_error_info_code may be set in the $send_error_detail.
Fields
DestinationNotFound
The system cannot determine which backend to use, or the specified backend was invalid.
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 field $tls_alert_id may be set in the $send_error_detail.
Fields
alert_id: Option<u8>
The TLS alert value, if available.
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.
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.
InternalError(Option<FastlyStatus>)
The system encountered an unexpected internal error.