mirror of
https://github.com/actix/actix-website
synced 2025-02-09 23:05:37 +01:00
39 lines
857 B
Rust
39 lines
857 B
Rust
|
// <logging>
|
||
|
use actix_web::{error, Result};
|
||
|
use failure::Fail;
|
||
|
use log::debug;
|
||
|
|
||
|
#[derive(Fail, Debug)]
|
||
|
#[fail(display = "my error")]
|
||
|
pub struct MyError {
|
||
|
name: &'static str,
|
||
|
}
|
||
|
|
||
|
// Use default implementation for `error_response()` method
|
||
|
impl error::ResponseError for MyError {}
|
||
|
|
||
|
pub fn index() -> Result<&'static str, MyError> {
|
||
|
let err = MyError { name: "test error" };
|
||
|
debug!("{}", err);
|
||
|
Err(err)
|
||
|
}
|
||
|
|
||
|
pub fn main() {
|
||
|
use actix_web::{middleware::Logger, web, App, HttpServer};
|
||
|
|
||
|
std::env::set_var("RUST_LOG", "my_errors=debug,actix_web=info");
|
||
|
std::env::set_var("RUST_BACKTRACE", "1");
|
||
|
env_logger::init();
|
||
|
|
||
|
HttpServer::new(|| {
|
||
|
App::new()
|
||
|
.wrap(Logger::default())
|
||
|
.route("/", web::get().to(index))
|
||
|
})
|
||
|
.bind("127.0.0.1:8088")
|
||
|
.unwrap()
|
||
|
.run()
|
||
|
.unwrap();
|
||
|
}
|
||
|
// </logging>
|