diff options
Diffstat (limited to 'src/lib.rs')
| -rw-r--r-- | src/lib.rs | 8 |
1 files changed, 7 insertions, 1 deletions
@@ -3,6 +3,7 @@ mod config; mod errors; mod handlers; mod models; +mod trace; pub use errors::{Error, Result}; @@ -11,7 +12,7 @@ use std::net::{IpAddr, Ipv6Addr, SocketAddr}; use axum::{Router, routing::get}; use clap::Parser; use tokio::net::TcpListener; -use tower_http::services::ServeFile; +use tower_http::{services::ServeFile, trace::TraceLayer}; use args::{Cli, Command}; use config::Config; @@ -21,6 +22,7 @@ pub fn app(config: Config) -> Router { .nest_service("/static/style.css", ServeFile::new(&config.style_file)) .nest_service("/static/favicon.svg", ServeFile::new(&config.favicon_file)) .route("/", get(handlers::handler)) + .layer(TraceLayer::new_for_http()) .with_state(config) } @@ -31,8 +33,12 @@ pub async fn run() -> Result<()> { Command::Serv(args) => { let config = config::Config::new(args)?; + trace::tracing_registry(); + let socket = SocketAddr::new(IpAddr::V6(Ipv6Addr::UNSPECIFIED), config.port); + let listener = TcpListener::bind(socket).await?; + tracing::info!("listening on {}", listener.local_addr()?); axum::serve(listener, app(config.clone())).await?; } |
