Tracing support (#3372)

* Tracing support

* Add console subscriber

* Add console subscriber
This commit is contained in:
Jai Agrawal
2025-03-09 13:01:24 -07:00
committed by GitHub
parent 9c5d817a8a
commit 5c8ed9a8ca
14 changed files with 306 additions and 52 deletions

View File

@@ -1,13 +1,16 @@
use actix_web::{App, HttpServer};
use actix_web_prom::PrometheusMetricsBuilder;
use env_logger::Env;
use labrinth::database::redis::RedisPool;
use labrinth::file_hosting::S3Host;
use labrinth::search;
use labrinth::util::ratelimit::RateLimit;
use labrinth::{check_env_vars, clickhouse, database, file_hosting, queue};
use log::{error, info};
use std::sync::Arc;
use tracing::{error, info};
use tracing_actix_web::TracingLogger;
use tracing_subscriber::layer::SubscriberExt;
use tracing_subscriber::util::SubscriberInitExt;
use tracing_subscriber::{fmt, EnvFilter};
#[cfg(feature = "jemalloc")]
#[global_allocator]
@@ -21,8 +24,7 @@ pub struct Pepper {
#[actix_rt::main]
async fn main() -> std::io::Result<()> {
dotenvy::dotenv().ok();
env_logger::Builder::from_env(Env::default().default_filter_or("info"))
.init();
console_subscriber::init();
if check_env_vars() {
error!("Some environment variables are missing!");
@@ -123,6 +125,7 @@ async fn main() -> std::io::Result<()> {
// Init App
HttpServer::new(move || {
App::new()
.wrap(TracingLogger::default())
.wrap(prometheus.clone())
.wrap(RateLimit(Arc::clone(&labrinth_config.rate_limiter)))
.wrap(actix_web::middleware::Compress::default())