Skip to content

Commit

Permalink
feat: log error chain
Browse files Browse the repository at this point in the history
  • Loading branch information
sigoden committed Jun 6, 2022
1 parent 6698ab5 commit 2751665
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 5 deletions.
8 changes: 4 additions & 4 deletions src/filters.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,10 @@ pub fn register(tera: &mut Tera) {

fn fetch(value: &Value, _: &HashMap<String, Value>) -> Result<Value> {
let raw_url = try_get_value!("fetch", "value", String, value);
let create_err = |msg: &str| Error::msg(format!("Fail to fetch `{}`, {}", &raw_url, msg));
let create_err = |msg: &str| Error::msg(format!("Failed to fetch `{}`, {}", &raw_url, msg));

if !STATE.read().unwrap().guard_url(&raw_url) {
return Err(create_err("invalid url"));
return Err(create_err("Not allowd url"));
}

let resp = ureq::get(&raw_url)
Expand All @@ -23,11 +23,11 @@ fn fetch(value: &Value, _: &HashMap<String, Value>) -> Result<Value> {

let status = resp.status();
if status >= 300 {
return Err(create_err(&format!("status `{}` is not ok", status)));
return Err(create_err(&format!("Status `{}` is not ok", status)));
}
let mime = resp
.header("Content-Type")
.ok_or_else(|| create_err("no content-type header"))?
.ok_or_else(|| create_err("No content-type header"))?
.to_owned();

let mut bytes: Vec<u8> = match resp.header("Content-Length").and_then(|v| v.parse().ok()) {
Expand Down
3 changes: 2 additions & 1 deletion src/generator.rs
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,8 @@ impl Generator {
}
Err(e) => {
let r400 = || {
error!(r#"Failed to generate `{}`, {:?}"#, &url, e);
let errs: Vec<String> = e.chain().skip(1).map(|v| v.to_string()).collect();
error!(r#"Failed to generate `{}`, {}, {}"#, &url, e, errs.join(", "));
Response::from_data(b"Bad Request".to_vec()).with_status_code(StatusCode(400))
};
if let Some(e) = e.downcast_ref::<tera::Error>() {
Expand Down

0 comments on commit 2751665

Please sign in to comment.