server: recover on slurp fetch failures

This commit is contained in:
Bill Thiede 2025-03-12 16:43:48 -07:00
parent 8a6b3ff501
commit daeb8c88a1

View File

@ -318,13 +318,16 @@ impl<'c> Transformer for SlurpContents<'c> {
} else {
let resp = reqwest::get(link.as_str()).await?;
let status = resp.status();
if status.is_server_error() || retryable_status.contains(&status) {
return Err(TransformError::RetryableHttpStatusError(
status,
link.to_string(),
));
if status.is_server_error() {
error!("status error for {link}: {status}");
return Ok(html.to_string());
}
if retryable_status.contains(&status) {
error!("retryable error for {link}: {status}");
return Ok(html.to_string());
}
if !status.is_success() {
error!("unsuccessful for {link}: {status}");
return Ok(html.to_string());
}
let body = resp.text().await?;