blob: 67aa54a02cc4900e8a60ebf3e43f15e551b2c21a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
use tracing_subscriber::{layer::SubscriberExt, util::SubscriberInitExt};
use crate::config::Config;
mod config;
#[tokio::main]
#[tracing::instrument]
async fn main() -> Result<(), main_error::MainError> {
let _ = dotenvy::dotenv();
tracing_subscriber::registry()
.with(
tracing_subscriber::EnvFilter::try_from_default_env()
.unwrap_or_else(|_| "unnamed_server=debug".into()),
)
.with(tracing_subscriber::fmt::layer())
.init();
let config_file = std::env::args()
.nth(1)
.unwrap_or("/etc/unnamed_server.toml".to_string());
let (listener, router) = Config::new()
.file(config_file)?
.env("UNNAMED_")?
.build()
.await?;
tracing::info!("Server listening on http://{}", listener.local_addr()?);
axum::serve(listener, router).await.map_err(From::from)
}
|