From 57eb1b08dbbe602c043554cb47762d531ccde9ec Mon Sep 17 00:00:00 2001 From: someone Date: Sat, 13 Apr 2024 12:14:33 +0200 Subject: [PATCH] Added basic request logging example --- Cargo.lock | 1 + crates/server/Cargo.toml | 1 + crates/server/src/main.rs | 21 +++++++++++++++++---- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 2aa06bc..6931b9f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -806,6 +806,7 @@ version = "0.1.0" dependencies = [ "axum", "env_logger", + "log", "tokio", "utoipa", ] diff --git a/crates/server/Cargo.toml b/crates/server/Cargo.toml index c4f4be1..c56f5e4 100644 --- a/crates/server/Cargo.toml +++ b/crates/server/Cargo.toml @@ -10,3 +10,4 @@ env_logger = { workspace = true } tokio = { workspace = true, features=["full"] } axum = { workspace = true } utoipa = { version = "4", features = ["axum_extras"] } +log = "0.4.21" \ No newline at end of file diff --git a/crates/server/src/main.rs b/crates/server/src/main.rs index 6b4b39a..11ac49e 100644 --- a/crates/server/src/main.rs +++ b/crates/server/src/main.rs @@ -1,18 +1,31 @@ -use axum::{routing::get, Router}; +use axum::{extract::Request, routing::{get, post}, Router}; + +use log; +use std::env; #[tokio::main] async fn main() { + env::set_var("RUST_LOG", "trace"); env_logger::init(); - + // build our application with a route let app = Router::new() - .route("/", get(root)); + .route("/", get(root)) + .route("/v1/secret/data/foo", post(foo)); + + // run our app with hyper, listening globally on port 8200 - let listener = tokio::net::TcpListener::bind("[::]:8200").await.unwrap(); + let listener = tokio::net::TcpListener::bind("127.0.0.1:8200").await.unwrap(); axum::serve(listener, app).await.unwrap(); } +async fn foo( req: Request) -> String { + log::debug!("`{:?}`", req); + return String::from("RoutingTest successful"); + +} + // basic handler that responds with a static string async fn root() -> &'static str { "Hello, World!"